?? ywgl_lldform.~pas
字號:
unit YWGL_LLDFORM;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, Grids, DBGrids, ADODB, StdCtrls, Buttons, ExtCtrls, ComCtrls;
type
TYWGL_LLD = class(TForm)
ADOTable1: TADOTable;
DataSource1: TDataSource;
ADOTable2: TADOTable;
DataSource2: TDataSource;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
DBGrid2: TDBGrid;
Splitter1: TSplitter;
DBGrid1: TDBGrid;
BitBtn1: TBitBtn;
BitBtn3: TBitBtn;
Bevel1: TBevel;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
ADOTable3: TADOTable;
ADOTable3DSDesigner: TStringField;
ADOTable3DSDesigner2: TStringField;
ADOTable3DSDesigner3: TStringField;
ADOTable3DSDesigner4: TStringField;
ADOTable3DSDesigner5: TStringField;
ADOTable3DSDesigner6: TIntegerField;
ADOTable3DSDesigner7: TBCDField;
ADOTable3DSDesigner8: TBCDField;
ADOTable3DSDesigner9: TIntegerField;
ADOTable3DSDesigner10: TIntegerField;
ADOTable2DSDesigner: TStringField;
ADOTable2DSDesigner2: TStringField;
ADOTable2DSDesigner3: TStringField;
ADOTable2DSDesigner4: TStringField;
ADOTable2DSDesigner5: TStringField;
ADOTable2DSDesigner6: TIntegerField;
ADOTable2DSDesigner7: TStringField;
ADOTable2DSDesigner8: TStringField;
ADOTable2DSDesigner9: TStringField;
ADOTable1DSDesigner: TDateTimeField;
ADOTable1DSDesigner2: TStringField;
ADOTable1DSDesigner3: TStringField;
ADOTable1DSDesigner4: TStringField;
ADOTable1DSDesigner5: TStringField;
ADOTable1ru: TBooleanField;
ADOTable4: TADOTable;
ADOTable4DSDesigner: TDateTimeField;
ADOTable4DSDesigner2: TStringField;
ADOTable4DSDesigner3: TStringField;
ADOTable4DSDesigner4: TStringField;
ADOTable4DSDesigner5: TStringField;
ADOTable4DSDesigner6: TStringField;
ADOTable4DSDesigner7: TStringField;
ADOTable4DSDesigner8: TIntegerField;
ADOTable4DSDesigner9: TBCDField;
ADOTable4DSDesigner10: TStringField;
ADOTable4DSDesigner11: TBCDField;
ADOTable4DSDesigner12: TStringField;
ADOTable4DSDesigner13: TStringField;
ADOTable4DSDesigner14: TStringField;
ADOTable5: TADOTable;
ADOTable5DSDesigner: TDateTimeField;
ADOTable5DSDesigner2: TStringField;
ADOTable5DSDesigner3: TStringField;
ADOTable5DSDesigner4: TStringField;
ADOTable5DSDesigner5: TStringField;
ADOTable5DSDesigner6: TStringField;
ADOTable5DSDesigner7: TIntegerField;
ADOTable5DSDesigner8: TIntegerField;
ADOTable5DSDesigner9: TBCDField;
ADOTable5DSDesigner10: TBCDField;
ADOTable5DSDesigner11: TStringField;
ADOTable5DSDesigner12: TBCDField;
ADOTable5DSDesigner13: TIntegerField;
ADOTable5DSDesigner14: TStringField;
ADOTable5DSDesigner15: TStringField;
ADOTable5DSDesigner16: TStringField;
ComboBox1: TComboBox;
Label3: TLabel;
ADOQuery1: TADOQuery;
ADOTable3DSDesigner11: TStringField;
ADOTable4DSDesigner15: TStringField;
ADOTable5DSDesigner17: TStringField;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure ComboBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
YWGL_LLD: TYWGL_LLD;
implementation
uses MRWX_BJRK;
{$R *.DFM}
procedure TYWGL_LLD.FormClose(Sender: TObject; var Action: TCloseAction);
begin
animatewindow(handle,300,AW_VER_NEGATIVE+AW_CENTER+AW_HIDE);
YWGL_LLD.release;
YWGL_LLD:=nil;
mrwxform:=0;
end;
procedure TYWGL_LLD.FormShow(Sender: TObject);
begin
animatewindow(handle,300,AW_VER_NEGATIVE+AW_CENTER);
bevel1.Left:=bevel1.Left+1;
label1.refresh;
label2.refresh;
label3.refresh;
dbgrid1.Refresh;
dbgrid2.refresh;
adoquery1.First;
combobox1.items.Clear;
while not adoquery1.eof do begin
combobox1.Items.Add(adoquery1.fieldbyname('庫房').asstring);
adoquery1.next;
end;
combobox1.ItemIndex:=0;
adotable3.Filter:=format('部門'+'='+'''%s''',[combobox1.text]);
adotable4.Filter:=adotable3.Filter;
adotable5.filter:=adotable3.Filter;
end;
procedure TYWGL_LLD.BitBtn3Click(Sender: TObject);
begin
close;
end;
procedure TYWGL_LLD.DBGrid1DblClick(Sender: TObject);
begin
if adotable1.RecordCount=0 then begin
messagedlg('系統無單號信息.',mterror,[mbok],0);
end else begin
edit2.text:=adotable1.fieldbyname('日期').asstring;
edit1.text:=adotable1.fieldbyname('單號').asstring;
adotable2.Filter:=format('單號'+'='+'''%s''',[adotable1.fieldbyname('單號').asstring]);
adotable2.open;
end;
end;
procedure TYWGL_LLD.FormCreate(Sender: TObject);
var metricsy:integer;
begin
metricsy:=getsystemmetrics(sm_cyscreen);
if metricsy>600 then begin
height:=height+100;
pagecontrol1.Height:=pagecontrol1.Height+100;
end else begin
constraints.MaxHeight:=440;
end;
end;
procedure TYWGL_LLD.BitBtn1Click(Sender: TObject);
var bian:string; bian1:integer;
begin
if combobox1.text='' then begin
showmessage('請選擇入庫的庫信息.');
combobox1.setfocus;
exit;
end;
if adotable1.FieldByName('是否入庫').asstring='是' then begin
messagedlg('該單據以入庫,請選擇其他單據.',mtInformation,[mbok],0);
end else begin
datasource2.DataSet:=nil;
if adotable2.active then begin
adotable2.First;
while not adotable2.eof do begin
if adotable3.Locate('物品名稱;型號;部門',vararrayof([adotable2.fieldbyname('名稱').asstring,
adotable2.fieldbyname('規(guī)格型號').asstring,combobox1.text]),[loCaseInsensitive]) then begin
adotable3.edit;
adotable3.fieldbyname('數量').asinteger:=adotable3.fieldbyname('數量').asinteger+
adotable2.fieldbyname('數量').asinteger;
adotable3.FieldByName('庫存金額').asfloat:=adotable3.FieldByName('庫存金額').asfloat+
(adotable2.fieldbyname('數量').asinteger*
adotable3.FieldByName('平均單價').asfloat);
adotable3.Post;
end else begin
adotable3.Last;
bian:=adotable3.fieldbyname('編號').asstring;
if bian='' then begin
bian:='000001';
end else begin
bian:=inttostr(strtoint(bian)+1);
for bian1:=1 to 6-length(bian) do begin
bian:='0'+bian;
end;
end;
adotable3.InsertRecord([bian,adotable2.fieldbyname('名稱').asstring,
adotable2.fieldbyname('規(guī)格型號').asstring,nil,
adotable2.fieldbyname('單位').asstring,
adotable2.fieldbyname('數量').asstring,0,0,
mr_wxform.ADOTable2.fieldbyname('庫存上限').asstring,
mr_wxform.adotable2.fieldbyname('庫存下限').asstring,
combobox1.text]);
end;
adotable4.insertrecord([date,adotable2.fieldbyname('名稱').asstring,
adotable2.fieldbyname('規(guī)格型號').asstring,nil,
adotable2.fieldbyname('單位').asstring,
adotable1.fieldbyname('發(fā)料單位').asstring,
adotable1.fieldbyname('單號').asstring+'號領料單',
adotable2.fieldbyname('數量').asinteger,0,'(無)',0,0,
adotable1.fieldbyname('申請人').asstring,nil ,
combobox1.text]);
adotable5.insertrecord([date,adotable2.fieldbyname('名稱').asstring,
adotable2.fieldbyname('規(guī)格型號').asstring,nil,
adotable2.fieldbyname('單位').asstring,
adotable1.fieldbyname('單號').asstring+'號領料單',
adotable2.fieldbyname('數量').asinteger,nil,0,nil,'(無)',0,
adotable3.fieldbyname('數量').asinteger,0,
adotable1.fieldbyname('申請人').asstring,nil,
combobox1.text]);
adotable2.next;
end;
adotable1.edit;
adotable1.fieldbyname('是否入庫').asstring:='是';
adotable1.post;
if assigned(mr_wxbj_rk) then begin
mr_wxbj_rk.adotable3.close;
mr_wxbj_rk.ADOTable3.Open;
end;
showmessage('該單號以入庫.');
datasource2.DataSet:=adotable2;
end;
end;
end;
procedure TYWGL_LLD.DataSource1DataChange(Sender: TObject;
Field: TField);
begin
if adotable1.RecordCount=0 then begin
messagedlg('系統無入庫單號信息.',mterror,[mbok],0);
end else begin
edit2.text:=adotable1.fieldbyname('日期').asstring;
edit1.text:=adotable1.fieldbyname('單號').asstring;
adotable2.Filter:=format('單號'+'='+'''%s''',[adotable1.fieldbyname('單號').asstring]);
adotable2.open;
end;
end;
procedure TYWGL_LLD.ComboBox1Click(Sender: TObject);
begin
adotable3.Filter:=format('部門'+'='+'''%s''',[combobox1.text]);
adotable4.Filter:=adotable3.Filter;
adotable5.Filter:=adotable3.Filter;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -