📄 unitg.~pas
字号:
unit UnitG;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, ComCtrls, DB, ADODB,unitFunc;
type
TfmG = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
LbB: TLabel;
edtA: TEdit;
LbC: TLabel;
LbD: TLabel;
edtC: TEdit;
LbA: TLabel;
edtD: TEdit;
LbF: TLabel;
btnA: TBitBtn;
btnC: TBitBtn;
Label4: TLabel;
edt1: TEdit;
Label5: TLabel;
Label6: TLabel;
edt3: TEdit;
Label7: TLabel;
edt4: TEdit;
Label9: TLabel;
Label10: TLabel;
edt6: TEdit;
btn1: TBitBtn;
btn3: TBitBtn;
btnB: TBitBtn;
btn2: TBitBtn;
LbG: TLabel;
Image2: TImage;
Image1: TImage;
comb1: TComboBox;
sbtn2: TSpeedButton;
sbtn1: TSpeedButton;
mc1: TMonthCalendar;
mcA: TMonthCalendar;
comb5: TComboBox;
combE: TComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label8: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
combB: TComboBox;
comb2: TComboBox;
edtF: TEdit;
edt7: TEdit;
procedure btn1Click(Sender: TObject);
procedure btnAClick(Sender: TObject);
procedure btnCClick(Sender: TObject);
procedure btn3Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
procedure btnBClick(Sender: TObject);
procedure sbtn1Click(Sender: TObject);
procedure rbtn1Click(Sender: TObject);
procedure rbtn2Click(Sender: TObject);
procedure rbtnAClick(Sender: TObject);
procedure rbtnBClick(Sender: TObject);
procedure mcAClick(Sender: TObject);
procedure mc1Click(Sender: TObject);
procedure combEDropDown(Sender: TObject);
procedure comb5DropDown(Sender: TObject);
procedure edt3KeyPress(Sender: TObject; var Key: Char);
procedure edtCKeyPress(Sender: TObject; var Key: Char);
procedure edtBKeyPress(Sender: TObject; var Key: Char);
procedure edt2KeyPress(Sender: TObject; var Key: Char);
procedure edtAKeyPress(Sender: TObject; var Key: Char);
procedure edt1KeyPress(Sender: TObject; var Key: Char);
procedure edt4KeyPress(Sender: TObject; var Key: Char);
procedure edt6KeyPress(Sender: TObject; var Key: Char);
procedure edtDKeyPress(Sender: TObject; var Key: Char);
procedure FormActivate(Sender: TObject);
procedure comb2Select(Sender: TObject);
procedure combBSelect(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmG: TfmG;
implementation
uses UnitDm, UnitMain;
{$R *.dfm}
procedure TfmG.btnAClick(Sender: TObject);
var s,s1,s2,s3,s4,s5,s6:string;
begin
s:=edtA.Text;
s1:=combB.Text;
s2:=edtC.Text;
s3:=edtD.Text;
s4:=combE.Text;
s4:=sss(s4);
s6:=edtF.Text;
if ( Trim(edtA.Text)<>'')and
( Trim(combB.Text)<>'')and
( Trim(edtC.Text)<>'')and
( Trim(combE.Text)<>'') then
begin
if comb1.Text='正常入库' then s5:='1' ;
if comb1.Text='退货' then s5:='0';
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_glist where sno='+s1+'';
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString<>'' then
begin
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_gjin where sno='+s;
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString='' then
begin
if s6<>'' then
begin
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_store where cno='+s6;
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString='' then
begin
showmessage('不存在编号为'+s6+'的仓库,请重新输入!');
exit;
end;
end;
with frDbm.comG1 do
begin
frDbm.comG1.commandType:=cmdStoredProc;
frDbm.comG1.CommandText:='gjinAdd';
Parameters.Refresh;
Parameters.ParamByName('@sno').Value:=s;
Parameters.ParamByName('@gsno').Value:=s1;
Parameters.ParamByName('@number').Value:=s2;
Parameters.ParamByName('@name').Value:=s3;
Parameters.ParamByName('@shijian').Value:=s4;
Parameters.ParamByName('@remark').Value:=s5;
Parameters.ParamByName('@cno').Value:=s6;
frDbm.comG1.Execute;
showmessage('数据添加成功!');
end;
end
else showmessage('数据库中已经存在进库单号为'+s+'的记录,请重新输入!');
{frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select number from t_gstore where gsno='+s1+'';
frDbm.dsetG.Open;
n:=frDbm.dsetG.Fields[0].AsInteger;
n:=n+strtoint(s2);
sum:=trim(inttostr(n));
frDbm.comG1.commandType:=cmdText;
frDbm.ComG1.CommandText:='update t_gstore set number='+sum+' where gsno='+s1+'';
frDbm.ComG1.Execute;}
end
else
showmessage('不存在该编号的成品,请查询后输入!');
end
else
showmessage('进库单编号,成品编号,入库数量,入库时间不能为空!')
end;
procedure TfmG.btnCClick(Sender: TObject);
begin
edtA.Text:='';
combB.Text:='';
edtC.Text:='';
edtD.Text:='';
combE.Text:='';
comb1.Text:='';
edtF.Text:='';
end;
procedure TfmG.btn1Click(Sender: TObject);
var s,s1,s2,s3,s4,s5,s6,sum:string;
n:integer;
begin
s:=trim(edt1.Text);
s1:=trim(comb2.Text);
s2:=trim(edt3.Text);
s3:=trim(edt4.Text);
s4:=trim(comb5.Text);
s4:=sss(s4);
s5:=trim(edt6.Text);
s6:=trim(edt7.Text);
if ( Trim(edt1.Text)<>'')and
( Trim(comb2.Text)<>'')and
( Trim(edt3.Text)<>'')and
( Trim(comb5.Text)<>'') then
begin
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_glist where sno='+s1+'';
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString<>'' then
begin
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_gout where sno='+s;
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString='' then
begin
if s6<>'' then
begin
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_store where cno='+s6;
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString='' then
begin
showmessage('不存在编号为'+s6+'的仓库,请重新输入!');
exit;
end;
end;
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select number from t_gstore where gsno='+s1+'';
frDbm.dsetG.Open;
n:=frDbm.dsetG.Fields[0].AsInteger;
n:=n-strtoint(s2);
if n<0 then
showmessage('出库数量不能大于库存数量!');
with frDbm.comG2 do
begin
frDbm.comG2.commandType:=cmdStoredProc;
frDbm.comG2.CommandText:='goutAdd';
Parameters.Refresh;
Parameters.ParamByName('@sno').Value:=s;
Parameters.ParamByName('@gsno').Value:=s1;
Parameters.ParamByName('@number').Value:=s2;
Parameters.ParamByName('@name').Value:=s3;
Parameters.ParamByName('@shijian').Value:=s4;
Parameters.ParamByName('@remark').Value:=s5;
Parameters.ParamByName('@cno').Value:=s6;
frDbm.comG2.Execute;
showmessage('数据添加成功!');
end;
end
else showmessage('数据库中已经存在出库单号为'+s+'的记录,请重新输入!');
end
else
showmessage('不存在该编号的成品,请查询后输入!');
end
else
showmessage('出库单编号,成品编号,出库数量,出库时间不能为空!')
end;
procedure TfmG.btn3Click(Sender: TObject);
begin
edt1.Text:='';
comb2.Text:='';
edt3.Text:='';
edt4.Text:='';
comb5.Text:='';
edt6.Text:='';
edt7.Text:='';
end;
procedure TfmG.btn2Click(Sender: TObject);
var s,s1,sum:string;
n:integer;
begin
if messagedlg('确实要删除报废号为:'+trim(edt1.Text)+'的记录吗(Y/N)?',mtConfirmation,[mbYes]+[mbNo],0)=6 then
begin
s:=edt1.Text;
if Trim(edt1.Text)<>''then
begin
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_gout where sno='+s+'';
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString<>'' then
begin
n:=frDbm.dsetG.Fields[2].AsInteger;
s1:=frDbm.dsetG.Fields[1].AsString;
frDbm.comG2.commandType:=cmdText;
frDbm.ComG2.CommandText:='delete from t_gout where sno='+s+'';
frDbm.ComG2.Execute;
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select number from t_gstore where gsno='+s1+'';
frDbm.dsetG.Open;
n:=frDbm.dsetG.Fields[0].AsInteger+n;
sum:=trim(inttostr(n));
frDbm.comG2.commandType:=cmdText;
frDbm.ComG2.CommandText:='update t_gstore set number='+sum+' where gsno='+s1+'';
frDbm.ComG2.Execute;
showmessage('数据修改成功!');
end
else
showmessage('没有出库单号为'+s+'的记录!');
end
else
showmessage('出库单编号不能为空!');
end;
end;
procedure TfmG.btnBClick(Sender: TObject);
var s,s1,sum:string;
n:integer;
begin
if messagedlg('确实要删除报废号为:'+trim(edtA.Text)+'的记录吗(Y/N)?',mtConfirmation,[mbYes]+[mbNo],0)=6 then
begin
s:=Trim(edtA.Text);
if s<>''then
begin
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select * from t_gjin where sno='+s+'';
frDbm.dsetG.Open;
if frDbm.dsetG.Fields[0].AsString<>'' then
begin
s1:=frDbm.dsetG.Fields[1].AsString;
n:=frDbm.dsetG.Fields[2].AsInteger;
frDbm.comG1.commandType:=cmdText;
frDbm.ComG1.CommandText:='delete from t_gjin where sno='+s+'';
frDbm.ComG1.Execute;
frDbm.dsetG.Close;
frDbm.dsetG.CommandText:='select number from t_gstore where gsno='+s1+'';
frDbm.dsetG.Open;
n:=frDbm.dsetG.Fields[0].AsInteger-n;
sum:=trim(inttostr(n));
frDbm.comG1.commandType:=cmdText;
frDbm.ComG1.CommandText:='update t_gstore set number='+sum+' where gsno='+s1+'';
frDbm.ComG1.Execute;
showmessage('数据修改成功!');
end
else
showmessage('没有出库单号为'+s+'的记录!');
end
else
showmessage('出库单编号不能为空!');
end;
end;
procedure TfmG.sbtn1Click(Sender: TObject);
begin
fmG.Close;
fmMain.show;
end;
procedure TfmG.rbtn1Click(Sender: TObject);
begin
btn1.Enabled:=true;
btn2.Enabled:=false;
btnA.Enabled:=false;
btnB.Enabled:=false;
end;
procedure TfmG.rbtn2Click(Sender: TObject);
begin
btn1.Enabled:=false;
btn2.Enabled:=true;
btnA.Enabled:=false;
btnB.Enabled:=false;
end;
procedure TfmG.rbtnAClick(Sender: TObject);
begin
btn1.Enabled:=false;
btn2.Enabled:=false;
btnA.Enabled:=true;
btnB.Enabled:=false;
end;
procedure TfmG.rbtnBClick(Sender: TObject);
begin
btn1.Enabled:=false;
btn2.Enabled:=false;
btnA.Enabled:=false;
btnB.Enabled:=true;
end;
procedure TfmG.mcAClick(Sender: TObject);
var a:Tdatetime;
b:string;
begin
a:=mcA.Date;
b:=DateTimetostr(a);
combE.Text:=b;
mcA.Visible:=false;
end;
procedure TfmG.mc1Click(Sender: TObject);
var a:Tdatetime;
b:string;
begin
a:=mc1.Date;
b:=DateTimetostr(a);
comb5.Text:=b;
mc1.Visible:=false;
end;
procedure TfmG.combEDropDown(Sender: TObject);
begin
mcA.visible:=true;
end;
procedure TfmG.comb5DropDown(Sender: TObject);
begin
mc1.visible:=true;
end;
procedure TfmG.edt3KeyPress(Sender: TObject; var Key: Char);
begin
if (key in (['0'..'9'])) or (key=#8) then
else
key:=#0;
end;
procedure TfmG.edtCKeyPress(Sender: TObject; var Key: Char);
begin
if (key in (['0'..'9'])) or (key=#8) then
else
key:=#0;
end;
procedure TfmG.edtBKeyPress(Sender: TObject; var Key: Char);
begin
if (key in (['0'..'9'])) or (key=#8) then
else
key:=#0;
end;
procedure TfmG.edt2KeyPress(Sender: TObject; var Key: Char);
begin
if (key in (['0'..'9'])) or (key=#8) then
else
key:=#0;
end;
procedure TfmG.edtAKeyPress(Sender: TObject; var Key: Char);
begin
if (key in (['0'..'9'])) or (key=#8) then
else
key:=#0;
end;
procedure TfmG.edt1KeyPress(Sender: TObject; var Key: Char);
begin
if (key in (['0'..'9'])) or (key=#8) then
else
key:=#0;
end;
procedure TfmG.edt4KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
btn1.Click;
end;
procedure TfmG.edt6KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
btn1.Click;
end;
procedure TfmG.edtDKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
btnA.Click;
end;
procedure TfmG.FormActivate(Sender: TObject);
begin
combB.Items.Clear;
comb2.Items.Clear;
frDbm.qryG.Close;
frDbm.qryG.SQL.Clear;
frDbm.qryG.SQL.Text:='select * from t_glist ';
frDbm.qryG.Open;
while not frDbm.qryG.Eof do
begin
combB.Items.Add(frDbm.qryG.Fields[0].asstring);
comb2.Items.Add(frDbm.qryG.Fields[0].asstring);
frDbm.qryG.Next;
end;
end;
procedure TfmG.comb2Select(Sender: TObject);
begin
frDbm.qryG.Close;
frDbm.qryG.SQL.Clear;
frDbm.qryG.SQL.Text:='select cno from t_storelist where sno='''+trim(comb2.text)+'''';
frDbm.qryG.Open;
while not frDbm.qryG.Eof do
begin
edt7.text:=frDbm.qryG.Fields[0].asstring;
frDbm.qryG.Next;
end;
end;
procedure TfmG.combBSelect(Sender: TObject);
begin
frDbm.qryG.Close;
frDbm.qryG.SQL.Clear;
frDbm.qryG.SQL.Text:='select cno from t_storelist where sno='''+trim(comb2.text)+'''';
frDbm.qryG.Open;
while not frDbm.qryG.Eof do
begin
edtF.text:=frDbm.qryG.Fields[0].asstring;
frDbm.qryG.Next;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -