uexportgoods.pas
来自「港口货物管理系统」· PAS 代码 · 共 522 行 · 第 1/2 页
PAS
522 行
unit uexportgoods;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBTables, DB, DBCtrls, ComCtrls, StdCtrls, Buttons, Grids,
DBGrids, ExtCtrls, ADODB;
type
Tfmexporgoods = class(TForm)
DBGrid1: TDBGrid;
BitBtn1: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
Memo1: TMemo;
Label11: TLabel;
Query3: TQuery;
StatusBar1: TStatusBar;
Table1: TTable;
Label10: TLabel;
GroupBox1: TGroupBox;
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label4: TLabel;
Label3: TLabel;
Label12: TLabel;
Label13: TLabel;
Edit2: TEdit;
Edit5: TEdit;
Edit6: TEdit;
ComboBox1: TComboBox;
DateTimePicker1: TDateTimePicker;
DBLookupComboBox1: TDBLookupComboBox;
ComboBox2: TComboBox;
Edit3: TEdit;
Edit1: TEdit;
DBLookupComboBox3: TDBLookupComboBox;
CheckBox1: TCheckBox;
ComboBox3: TComboBox;
Edit4: TEdit;
DataSource1: TDataSource;
DataSource2: TDataSource;
Query1: TQuery;
DataSource3: TDataSource;
Table2: TTable;
Query2: TQuery;
DataSource4: TDataSource;
Table3: TTable;
Table5: TTable;
Query4: TQuery;
Label14: TLabel;
ComboBox4: TComboBox;
Label15: TLabel;
procedure ComboBox1Click(Sender: TObject);
procedure DBLookupComboBox1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ComboBox3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure DBLookupComboBox3Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure Edit6Exit(Sender: TObject);
procedure FormClick(Sender: TObject);
procedure ComboBox2Click(Sender: TObject);
procedure ComboBox4Click(Sender: TObject);
private
{ Private declarations }
public
atnamestr:string;{ Public declarations }
end;
var
fmexporgoods: Tfmexporgoods;
implementation
uses udm_user, ulogin;
{$R *.dfm}
procedure Tfmexporgoods.ComboBox1Click(Sender: TObject);
begin
query2.Active:=false;
query1.Close;
query1.SQL.Clear;
query1.sql.add('select distinct atnum,agname from spotgoods where agoodd='''+combobox1.Text+'''');
query1.SQL.Add(' order by agname');
query1.ExecSQL;
query1.Active:=true;
edit3.Text:='0';
edit5.Text:='0';
edit4.Text:='0';
end;
procedure Tfmexporgoods.DBLookupComboBox1Click(Sender: TObject);
begin
query2.Close;
query2.SQL.Clear;
query2.SQL.Add('select distinct adime from spotgoods where agoodd='''+combobox1.text+'''');
query2.SQL.Add('and atnum='''+dblookupcombobox1.Text+'''');
query2.active:=true;
dblookupcombobox3.ListField:='adime';
dblookupcombobox3.KeyField:='adime';
end;
procedure Tfmexporgoods.FormCreate(Sender: TObject);
var i:integer;
begin
application.OnMessage:=fmlogin.doenterastab;
datetimepicker1.Date:=date();
edit6.Text:='';
edit2.Text:='';
edit1.Text:='';
query4.Active:=true;
query4.First;
for i:=1 to query4.RecordCount do
begin
combobox1.Items.Add(query4.FieldValues['agoodd']);
query4.Next;
end;
combobox1.ItemIndex:=0;
combobox1.OnClick(sender);
end;
procedure Tfmexporgoods.ComboBox3Click(Sender: TObject);
var coil1,piece1:integer;
tmpton:single;
tempquery:tquery;
begin
coil1:=0;
piece1:=0;
tmpton:=0;
try
table1.DisableControls;
table1.First;
while not table1.eof
do
begin
if (table1.FieldValues['agoodd']=combobox1.Text) and (table1.FieldValues['atnum']=dblookupcombobox1.Text) and (table1.FieldValues['adime']=dblookupcombobox3.Text) and (table1.FieldValues['aspot']=combobox3.Text)
//table1.Locate('agoodd;atnum;adime;aspot',vararrayof([combobox1.text,dblookupcombobox1.text,dblookupcombobox3.text,combobox3.text]),[])=true
then
begin
coil1:=coil1+table1.FieldValues['ncoil'];
piece1:=piece1+table1.FieldValues['npiece'];
tmpton:=tmpton+table1.FieldValues['nton'];
end;
table1.next;
end;
finally
table1.EnableControls;
end;
table3.Locate('agoodd;atnum;adime',vararrayof([combobox1.text,dblookupcombobox1.text,dblookupcombobox3.text]),[]);
memo1.Clear;
memo1.Lines.Add('货场:'+combobox3.Text);
memo1.Lines.Add('货代:'+table3.FieldValues['agoodd']);
memo1.Lines.Add('提单:'+table3.FieldValues['atnum']);
memo1.Lines.Add('货名:'+table3.FieldValues['agname']+table3.FieldValues['adime']);
memo1.Lines.Add('库存件数:'+inttostr(coil1)+' 件');
memo1.Lines.Add('库存支数:'+inttostr(piece1)+' 支');
memo1.Lines.Add('库存吨位:'+formatfloat('0.000',tmpton)+' 吨');
memo1.Lines.Add('计划吨位:'+inttostr(table3.FieldValues['nton'])+' 吨');
tempquery:=tquery.Create(nil);
tempquery.DatabaseName:='port';
tempquery.Close;
tempquery.SQL.clear;
tempquery.SQL.Add('select distinct ahw from spotgoods where agoodd='''+combobox1.text+'''');
tempquery.SQL.Add('and atnum='''+dblookupcombobox1.Text+'''');
tempquery.SQL.Add('and adime='''+dblookupcombobox3.Text+'''');
tempquery.SQL.add('and aspot='''+combobox3.Text+'''');
tempquery.Open;
combobox4.Items.Clear;
while not tempquery.Eof
do
begin
combobox4.Items.add(tempquery.Fields[0].Value);
tempquery.Next;
end;
combobox4.ItemIndex:=0;
end;
procedure Tfmexporgoods.BitBtn4Click(Sender: TObject);
begin
fmexporgoods.Close;
end;
procedure Tfmexporgoods.BitBtn1Click(Sender: TObject);
var aaa,tempnum:string;
begin
if trim(edit6.Text)='' then
begin
showmessage('出货工具名不能为空!!');
edit6.SetFocus;
end
else
begin
if checkbox1.Checked=false then
if query3.Locate('atname',trim(edit6.text),[])=true then
begin
aaa:=varastype(chr(63+query3.RecordCount+1),varString );
atnamestr:=trim(edit6.text)+trim(aaa);
end
else
atnamestr:=trim(edit6.Text);
if table1.Locate('agoodd;atnum;adime;aspot;ahw',vararrayof([combobox1.text,dblookupcombobox1.text,dblookupcombobox3.text,combobox3.text,combobox4.text]),[])=true
then
if (table1.FieldValues['ncoil']>=strtoint(edit3.Text)) and (table1.FieldValues['npiece']>=strtoint(edit4.Text))
then
begin
table2.Append;
table2.FieldValues['ddate']:=formatdatetime('yyyy-mm-dd',datetimepicker1.Date);
table2.FieldValues['atnum']:=dblookupcombobox1.Text;
table2.FieldValues['agname']:=table3.FieldValues['agname'];
table2.FieldValues['adime']:=table3.FieldValues['adime'];
if trim(edit3.Text)<>'' then
table2.FieldValues['ncoil']:=strtofloat(edit3.Text)
else
table2.FieldValues['ncoil']:=0;
if trim(edit4.Text)<>'' then
table2.FieldValues['npiece']:=strtoint(edit4.Text)
else
table2.FieldValues['npiece']:=0;
tempnum:=formatfloat('0.000',strtofloat(edit5.text));
table2.FieldValues['nton']:=strtofloat(tempnum);
table2.FieldValues['aqd']:=combobox2.Text;
table2.FieldValues['atname']:=atnamestr;
table2.FieldValues['agoodd']:=table3.FieldValues['agoodd'];
table2.fieldvalues['aspot']:=combobox3.text;
table2.fieldvalues['ahw']:=combobox4.text;
table2.FieldValues['adir']:=edit1.Text;
table2.FieldValues['auser']:=fmuser.susername;
table2.FieldValues['agroup']:=fmuser.strgroup;
table2.FieldValues['abz']:=edit2.Text;
table2.Post;
table2.Last;
if table1.Locate('agoodd;atnum;adime;aspot;ahw',vararrayof([combobox1.text,dblookupcombobox1.text,dblookupcombobox3.text,combobox3.text,combobox4.text]),[])=true then
begin
if table1.FieldValues['ncoil']=strtoint(trim(edit3.Text)) then
begin
table1.Delete;
end
else
begin
table1.Edit;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?