📄 setgoodunit.pas
字号:
unit SetGoodUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBClient, SUIButton, StdCtrls, Mask, DBCtrls, Grids,
DBGrids, SUIDBCtrls, ExtCtrls, SUIImagePanel;
type
TSetGoodForm = class(TForm)
suiPanel1: TsuiPanel;
suiDBGrid2: TsuiDBGrid;
btn1: TsuiButton;
suiButton1: TsuiButton;
suiButton2: TsuiButton;
suiButton7: TsuiButton;
suiButton8: TsuiButton;
suiPanel2: TsuiPanel;
suiDBGrid1: TsuiDBGrid;
suiButton3: TsuiButton;
suiButton4: TsuiButton;
suiButton5: TsuiButton;
suiButton6: TsuiButton;
suiButton9: TsuiButton;
suiButton10: TsuiButton;
ds1: TClientDataSet;
ds2: TDataSource;
ds3: TClientDataSet;
ds4: TDataSource;
wdstrngfldds1Xmlx_bh: TWideStringField;
wdstrngfldds1Xmlx_xmmc: TWideStringField;
lbl1: TLabel;
dbedtXmlx_bh: TDBEdit;
lbl2: TLabel;
dbedtXmlx_xmmc: TDBEdit;
wdstrngfldds3xfxm_lxbh: TWideStringField;
wdstrngfldds3xfxm_mc: TWideStringField;
wdstrngfldds3xfxm_jp: TWideStringField;
ds3xfxm_ysdj: TFloatField;
ds3xfxm_dzbl: TFloatField;
ds3xfxm_qmye: TIntegerField;
lbl4: TLabel;
dbedtxfxm_lxbh: TDBEdit;
lbl5: TLabel;
dbedtxfxm_mc: TDBEdit;
lbl6: TLabel;
dbedtxfxm_jp: TDBEdit;
lbl7: TLabel;
dbedtxfxm_ysdj: TDBEdit;
lbl8: TLabel;
dbedtxfxm_dzbl: TDBEdit;
lbl9: TLabel;
dbedtxfxm_qmye: TDBEdit;
ds3xfxm_cbdj: TFloatField;
Label1: TLabel;
dbedtxfxm_cbdj: TDBEdit;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ds1AfterScroll(DataSet: TDataSet);
procedure btn1Click(Sender: TObject);
procedure suiButton1Click(Sender: TObject);
procedure suiButton2Click(Sender: TObject);
procedure suiButton7Click(Sender: TObject);
procedure suiButton8Click(Sender: TObject);
procedure suiButton3Click(Sender: TObject);
procedure suiButton4Click(Sender: TObject);
procedure suiButton5Click(Sender: TObject);
procedure suiButton10Click(Sender: TObject);
procedure suiButton9Click(Sender: TObject);
procedure suiButton6Click(Sender: TObject);
procedure dbedtXmlx_xmmcKeyPress(Sender: TObject; var Key: Char);
procedure dbedtxfxm_mcKeyPress(Sender: TObject; var Key: Char);
procedure dbedtxfxm_jpKeyPress(Sender: TObject; var Key: Char);
procedure dbedtxfxm_ysdjKeyPress(Sender: TObject; var Key: Char);
procedure dbedtxfxm_dzblKeyPress(Sender: TObject; var Key: Char);
procedure dbedtxfxm_qmyeKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
SetGoodForm: TSetGoodForm;
implementation
uses MainUnit, LoginUnit;
{$R *.dfm}
procedure TSetGoodForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
self.ds3.Close;
self.ds1.Close;
mainform.RefrushRoomState(0);
mainform.Enabled:=true;
end;
procedure TSetGoodForm.ds1AfterScroll(DataSet: TDataSet);
begin
self.ds3.Close;
self.ds3.Open;
end;
procedure TSetGoodForm.suiButton6Click(Sender: TObject);
begin
close;
end;
procedure TSetGoodForm.FormCreate(Sender: TObject);
begin
self.ds1.Close;
self.ds1.Open;
end;
procedure TSetGoodForm.btn1Click(Sender: TObject);
var
lxid:string;
begin
self.ds1.Append;
loginform.ExecuteSQL('select max(xmlx_bh)+1 from xmlx');
lxid:=loginform.dsQuery.Fields[0].AsString;
loginform.dsQuery.Close;
if length(lxid)=1 then
lxid:='0'+lxid;
self.ds1.FieldByName('xmlx_bh').AsString:=lxid;
self.ds1.FieldByName('xmlx_fws').AsString:='N';
self.dbedtXmlx_xmmc.SetFocus;
end;
procedure TSetGoodForm.suiButton1Click(Sender: TObject);
begin
self.ds1.Edit;
self.dbedtXmlx_xmmc.SetFocus;
end;
procedure TSetGoodForm.suiButton8Click(Sender: TObject);
begin
self.ds1.Cancel;
end;
procedure TSetGoodForm.suiButton2Click(Sender: TObject);
var
lxname:string;
begin
lxname:=self.dbedtXmlx_xmmc.Text;
if self.ds3.RecordCount>0 then
MessageDlg('项目类型名称【'+lxname+'】尚存在相关项目信息,不可执行此操作!',mtConfirmation, [mbYes], 0)
else
if MessageDlg('项目类型名称【'+lxname+'】,真的要执行删除操作吗?',mtConfirmation, [mbYes,mbNo], 0)=mrYes then
begin
self.ds1.Delete;
self.ds1.ApplyUpdates(0);
loginform.ExecuteSQL('insert into log '+
'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
''','''+loginform.userid+''','''+LoginForm.username+
''',''项目类型名称【'+lxname+'】删除成功'')');
end;
end;
procedure TSetGoodForm.suiButton7Click(Sender: TObject);
var
lxname:string;
begin
lxname:=self.dbedtXmlx_xmmc.Text;
if self.ds1.State in [dsedit,dsinsert] then
begin
self.ds1.Post;
self.ds1.ApplyUpdates(0);
if self.ds1.State=dsedit then
loginform.ExecuteSQL('insert into log '+
'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
''','''+loginform.userid+''','''+LoginForm.username+
''',''项目类型名称【'+lxname+'】编辑成功'')')
else
loginform.ExecuteSQL('insert into log '+
'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
''','''+loginform.userid+''','''+LoginForm.username+
''',''项目类型名称【'+lxname+'】添加成功'')');
end
else
MessageDlg('当前数据表未处于添加或编辑状态,不可执行相关操作!',mtConfirmation, [mbYes], 0);
end;
procedure TSetGoodForm.suiButton3Click(Sender: TObject);
begin
self.ds3.Append;
self.ds3.FieldByName('xfxm_lxbh').AsString:=self.dbedtXmlx_bh.Text;
self.ds3.FieldByName('xfxm_ysdj').AsString:='0';
self.ds3.FieldByName('xfxm_dzbl').AsString:='1.00';
self.ds3.FieldByName('xfxm_qmye').AsString:='-1';
self.dbedtxfxm_mc.SetFocus;
end;
procedure TSetGoodForm.suiButton4Click(Sender: TObject);
begin
self.ds3.Edit;
self.dbedtxfxm_mc.SetFocus;
end;
procedure TSetGoodForm.suiButton5Click(Sender: TObject);
var
xfmc:string;
qmye:string;
begin
xfmc:=self.dbedtxfxm_mc.Text;
qmye:=self.dbedtxfxm_qmye.Text;
if StrToInt(qmye)>0 then
MessageDlg('项目名称【'+xfmc+'】有库存,不可执行此操作!',mtConfirmation, [mbYes], 0)
else
if MessageDlg('项目名称【'+xfmc+'】,真的要执行删除操作吗?',mtConfirmation, [mbYes,mbNo], 0)=mrYes then
begin
self.ds3.Delete;
self.ds3.ApplyUpdates(0);
loginform.ExecuteSQL('insert into log '+
'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
''','''+loginform.userid+''','''+LoginForm.username+
''',''项目名称【'+xfmc+'】删除成功'')');
end;
end;
procedure TSetGoodForm.suiButton10Click(Sender: TObject);
var
xfmc:string;
begin
xfmc:=self.dbedtxfxm_mc.Text;
if self.ds3.State in [dsedit,dsinsert] then
begin
self.ds3.Post;
self.ds3.ApplyUpdates(0);
if self.ds3.State=dsedit then
loginform.ExecuteSQL('insert into log '+
'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
''','''+loginform.userid+''','''+LoginForm.username+
''',''项目名称【'+xfmc+'】添加成功'')')
else
loginform.ExecuteSQL('insert into log '+
'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
''','''+loginform.userid+''','''+LoginForm.username+
''',''项目名称【'+xfmc+'】添加成功'')');
end
else
MessageDlg('当前数据表未处于添加或编辑状态,不可执行相关操作!',mtConfirmation, [mbYes], 0);
end;
procedure TSetGoodForm.suiButton9Click(Sender: TObject);
begin
self.ds3.Cancel;
end;
procedure TSetGoodForm.dbedtXmlx_xmmcKeyPress(Sender: TObject;
var Key: Char);
var
count:Integer;
begin
if key=#13 then
begin
loginform.ExecuteSQL('select count(*) from xmlx where xmlx_xmmc='''+self.dbedtXmlx_xmmc.Text+'''');
count:=loginform.dsQuery.Fields[0].AsInteger;
loginform.dsQuery.Close;
if count=0 then
self.suiButton7.SetFocus
else
begin
MessageDlg('项目类型名称【'+self.dbedtXmlx_xmmc.Text+'】信息已存在,请重新输入!',mtConfirmation, [mbYes], 0);
dbedtXmlx_xmmc.Clear;
dbedtXmlx_xmmc.SetFocus;
end;
end;
end;
procedure TSetGoodForm.dbedtxfxm_mcKeyPress(Sender: TObject;
var Key: Char);
var
count:integer;
begin
if key=#13 then
begin
loginform.ExecuteSQL('select count(*) from xfxm '+
'where xfxm_lxbh='''+self.dbedtxfxm_lxbh.Text+''' and '+
'xfxm_mc='''+self.dbedtxfxm_mc.Text+'''');
count:=loginform.dsQuery.Fields[0].AsInteger;
loginform.dsQuery.Close;
if count=0 then
self.dbedtxfxm_jp.SetFocus
else
begin
MessageDlg('项目名称【'+self.dbedtxfxm_mc.Text+'】信息已存在,请重新输入!',mtConfirmation, [mbYes], 0);
self.dbedtxfxm_mc.Clear;
self.dbedtxfxm_mc.SetFocus;
end;
end;
end;
procedure TSetGoodForm.dbedtxfxm_jpKeyPress(Sender: TObject;
var Key: Char);
begin
if key=#13 then
Self.dbedtxfxm_ysdj.SetFocus;
end;
procedure TSetGoodForm.dbedtxfxm_ysdjKeyPress(Sender: TObject;
var Key: Char);
begin
if not (key in [#48..#57,#13,#8,#46]) then
key:=#0
else
if key=#13 then
self.dbedtxfxm_dzbl.SetFocus;
end;
procedure TSetGoodForm.dbedtxfxm_dzblKeyPress(Sender: TObject;
var Key: Char);
begin
if not (key in [#48..#57,#13,#8,#46]) then
key:=#0
else
if key=#13 then
self.dbedtxfxm_qmye.SetFocus;
end;
procedure TSetGoodForm.dbedtxfxm_qmyeKeyPress(Sender: TObject;
var Key: Char);
begin
if not (key in [#48..#57,#13,#8,#45]) then
key:=#0
else
if key=#13 then
self.suiButton10.SetFocus;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -