📄 umplan.pas
字号:
unit umplan;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBTables, StdCtrls, DBCtrls, DB, ExtCtrls, Grids, DBGrids,
Buttons, ComCtrls;
type
Tfmmplan = class(TForm)
DBGrid1: TDBGrid;
Bevel1: TBevel;
Table1: TTable;
Table2: TTable;
DataSource1: TDataSource;
DataSource2: TDataSource;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Edit5: TEdit;
Edit6: TEdit;
DBLookupComboBox1: TDBLookupComboBox;
DBLookupComboBox2: TDBLookupComboBox;
ComboBox1: TComboBox;
Query1: TQuery;
DataSource3: TDataSource;
Query2: TQuery;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
Query3: TQuery;
Bevel2: TBevel;
DateTimePicker1: TDateTimePicker;
Label10: TLabel;
Query4: TQuery;
DBGrid2: TDBGrid;
DataSource4: TDataSource;
BatchMove1: TBatchMove;
Table3: TTable;
procedure DBLookupComboBox1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure Table1AfterDelete(DataSet: TDataSet);
procedure BitBtn2Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure DBGrid1Enter(Sender: TObject);
procedure ComboBox1Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmmplan: Tfmmplan;
implementation
{$R *.dfm}
procedure Tfmmplan.DBLookupComboBox1Click(Sender: TObject);
begin
query2.Close;
query2.SQL.Clear;;
query2.SQL.Add('select adime from goodsspec where agname='''+dblookupcombobox1.Text+'''');
query2.open;
dblookupcombobox2.ListField:='adime';
dblookupcombobox2.KeyField:='adime';
end;
procedure Tfmmplan.FormCreate(Sender: TObject);
begin
bitbtn3.Enabled:=(table1.RecordCount>0);
//edit1.Text:=formatdatetime('yyyy-mm-dd',date);
edit2.Text:='';
edit3.Text:='0';
edit5.Text:='';
edit6.Text:='';
end;
procedure Tfmmplan.BitBtn1Click(Sender: TObject);
begin
if table1.Locate('atnum;agname;adime',vararrayof([edit2.text,dblookupcombobox1.text,dblookupcombobox2.text]),[])=false
then
begin
table1.Append;
table1.FieldValues['ddate']:=datetimepicker1.Date;
table1.FieldValues['atnum']:=edit2.Text;
table1.FieldValues['agname']:=dblookupcombobox1.Text;
table1.FieldValues['adime']:=dblookupcombobox2.Text;
table1.FieldValues['nton']:=strtofloat(edit3.Text);
table1.FieldValues['agoodd']:=combobox1.Text;
table1.FieldValues['adir']:=edit5.Text;
table1.FieldValues['aowner']:=edit6.Text;
table1.FieldValues['lend']:=false;
table1.post;
dbgrid1.SetFocus;
edit2.Text:='';
edit3.Text:='0';
edit5.Text:='';
edit6.Text:='';
end;
end;
procedure Tfmmplan.BitBtn3Click(Sender: TObject);
begin
table1.Delete;
end;
procedure Tfmmplan.Table1AfterDelete(DataSet: TDataSet);
begin
bitbtn3.Enabled:=(table1.RecordCount>0);
end;
procedure Tfmmplan.BitBtn2Click(Sender: TObject);
begin
table1.Edit;
table1.Post;
end;
procedure Tfmmplan.FormKeyPress(Sender: TObject; var Key: Char);
begin
if (length(edit2.Text)=0) and (length(edit3.Text)=0)
then bitbtn1.Enabled:=false
else
bitbtn1.Enabled:=true;
end;
procedure Tfmmplan.DBGrid1Enter(Sender: TObject);
begin
bitbtn3.Enabled:=(table1.RecordCount>0);
end;
procedure Tfmmplan.ComboBox1Click(Sender: TObject);
var aa:integer;
begin
aa:=0;
table1.Filter:='agoodd='''+combobox1.Text+'''';
table1.Filtered:=true;
while not table1.Eof
do
begin
aa:=table1.FieldValues['nton']+aa;
table1.Next;
end;
label10.Caption:='合计:'+combobox1.Text+' 本月目前计划吨位是: '+inttostr(aa)+' 吨';
label10.Alignment:=tacenter;
end;
procedure Tfmmplan.BitBtn4Click(Sender: TObject);
var qstr:string;
begin
qstr:='select a.ddate,a.atnum,a.agname,a.adime,a.ncoil,a.nton,a.atname,a.aqd,a.aspot,a.agoodd,b.lend,a.auser,a.abz from mimport a inner join mplan b on (a.atnum=b.atnum) and (a.agname=b.agname) and (a.adime=b.adime) and (b.lend=true) order by a.ddate';
//qstr:='update mimport set lout=true where select a.*,b.atnum,b.agname,b.adime from mimport a inner join mplan b on (a.atnum=b.atnum) and (a.agname=b.agname) and (a.adime=b.adime) and (b.lend=true)';
query4.Close;
query4.SQL.Clear;
query4.SQL.add(qstr);
query4.Open;
table3.Close;
table3.addindex('', 'ddate', [ixPrimary]);//主索引字段
table3.IndexFieldNames:='ddate';//目的表索引
batchmove1.Mode:=batAppendUpdate;
batchmove1.Execute;
//query4.ExecSQL;
//fmmplan.Close;
//fmmplan.Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -