📄 f_stocheck.pas
字号:
unit f_stocheck;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, DB, ADODB, StdCtrls, ExtCtrls, Grids, DBGrids, Buttons,
DBCtrls, Mask, DBGridEh;
type
Tdfmstocheck = class(TForm)
StatusBar1: TStatusBar;
Panel2: TPanel;
DataSource1: TDataSource;
ATblcheckin: TADOTable;
delbtn: TBitBtn;
postbtn: TBitBtn;
DataSource2: TDataSource;
Atblbranch: TADOTable;
ATblspec: TADOTable;
DataSource3: TDataSource;
DataSource4: TDataSource;
AQryware: TADOQuery;
cancelbtn: TBitBtn;
BitBtn1: TBitBtn;
DataSource5: TDataSource;
Atblvstotemp: TADOTable;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
DBGridEh1: TDBGridEh;
DataSource6: TDataSource;
ADOTable1: TADOTable;
Panel3: TPanel;
Label1: TLabel;
Label3: TLabel;
Label5: TLabel;
Label9: TLabel;
MaskEdit1: TMaskEdit;
DBLookupComboBox1: TDBLookupComboBox;
DateTimePicker1: TDateTimePicker;
DBLookupComboBox2: TDBLookupComboBox;
Panel4: TPanel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label4: TLabel;
Label10: TLabel;
MaskEdit2: TMaskEdit;
MaskEdit3: TMaskEdit;
MaskEdit4: TMaskEdit;
StaticText1: TStaticText;
Edit2: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DataSource1StateChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure MaskEdit3Exit(Sender: TObject);
procedure delbtnClick(Sender: TObject);
procedure postbtnClick(Sender: TObject);
procedure cancelbtnClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure sumno;
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
dfmstocheck: Tdfmstocheck;
implementation
uses dbmRainbowMis, chHeadUnit, dfm_check;
{$R *.dfm}
procedure Tdfmstocheck.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ATblcheckin.Active := false;
Atblbranch.Active := false;
ATblspec.Active := false;
ADOQuery1.ExecSQL ;
ADOQuery2.ExecSQL ;
dfmcheck.aqrycheckin.Close;
dfmcheck.aqrycheckin.Open;
action:=cafree;
end;
procedure Tdfmstocheck.DataSource1StateChange(Sender: TObject);
begin
case ATblcheckin.State of
dsbrowse:
begin
delbtn.Enabled :=true;
// postbtn.Enabled :=false;
cancelbtn.Enabled :=false;
end;
dsinsert:
begin
delbtn.Enabled :=false;
// BitBtn_edit.Enabled :=true;
// postbtn.Enabled :=true;
cancelbtn.Enabled :=true;
end;
dsedit:
begin
delbtn.Enabled :=false;
// BitBtn_edit.Enabled :=true;
// postbtn.Enabled :=true;
cancelbtn.Enabled :=true;
end;
end;
end;
procedure Tdfmstocheck.FormCreate(Sender: TObject);
begin
DateTimePicker1.Date:=date();
ATblcheckin.Active := true;
Atblbranch.Active := true;
ATblspec.Active := true;
end;
procedure Tdfmstocheck.MaskEdit3Exit(Sender: TObject);
begin
with AQryware do
begin
close;
Parameters.ParamByName ('vlabel').value:=trim(DBLookupComboBox2.text);
Parameters.ParamByName ('vspbh').value:=trim(maskedit2.text)+trim(edit2.Text)+trim(maskedit3.text);
open;
end;
if TCustomADODataSet(AQryware).RecordCount>0 then
StaticText1.Caption :=ATblspec['cname']
else
StaticText1.Caption :='';
end;
procedure Tdfmstocheck.delbtnClick(Sender: TObject);
begin
ATblcheckin.Delete ;
end;
procedure Tdfmstocheck.postbtnClick(Sender: TObject);
begin
with AQryware do
begin
close;
Parameters.ParamByName ('vlabel').value:=trim(DBLookupComboBox2.text);
Parameters.ParamByName ('vspbh').value:=trim(maskedit2.text)+trim(edit2.Text)+trim(maskedit3.text);
open;
end;
if TCustomADODataSet(AQryware).RecordCount>0 then
begin
ATblcheckin.Append ;
ATblcheckin['ccheckno']:=maskedit1.Text ;
ATblcheckin['bmh']:=DBLookupComboBox1.Text ;
ATblcheckin['cuser']:=g_uInfo.fuserName;
ATblcheckin['cdate']:=formatdatetime('yyyy,mm,dd',DateTimePicker1.Date);
ATblcheckin['clabel']:=trim(DBLookupComboBox2.Text);
ATblcheckin['spbh']:=trim(maskedit2.text)+trim(edit2.Text)+trim(maskedit3.text);
ATblcheckin['cnumber']:=maskedit4.Text ;
ATblcheckin.Post;
end
else
application.messagebox('输入的商品信息不存在,请重新输入','错误提示',mb_ok);
maskedit2.SetFocus;
end;
procedure Tdfmstocheck.cancelbtnClick(Sender: TObject);
begin
ATblcheckin.Cancel ;
end;
procedure Tdfmstocheck.BitBtn1Click(Sender: TObject);
begin
ADOQuery1.ExecSQL ;
ADOQuery2.ExecSQL ;
ATblcheckin.Close;
ATblcheckin.Open;
end;
procedure Tdfmstocheck.FormKeyPress(Sender: TObject; var Key: Char);
begin
chHeadUnit.tabventer(dfmstocheck,key);
end;
procedure Tdfmstocheck.sumno;
var
n:integer;
a:string;
begin
if ATblcheckin.IsEmpty then
begin
ATblcheckin.Last;
n:=strtoint(ATblcheckin['cstinno'])+1;
a:=inttostr(n);
while length(a)<10 do
begin
a:='0'+a;
end;
maskedit1.Text:=a;
end;
end;
procedure Tdfmstocheck.FormShow(Sender: TObject);
begin
if ATblcheckin.IsEmpty then
maskedit1.Text:='0000000001'
else
begin
ATblcheckin.Last;
MaskEdit1.text:=ATblcheckin['ccheckno'];
// DBLookupComboBox1.Text:=ATblcheckin['bmh'];
// DBLookupComboBox2.Text:=ATblcheckin['clabel'];
sumno;
end;
MaskEdit1.SetFocus ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -