📄 bas_batch_d.pas
字号:
unit Bas_Batch_D;
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Base_Entry_Detail, Db, AdODB, ExtCtrls, StdCtrls, Mask, ExtEdit;
Type
TFrm_Bas_Batch_D = Class(TFrm_Base_Entry_Detail)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label10: TLabel;
Lbl_ItemName: TLabel;
Edt_VendorBatchno: TEdit;
Edt_usefuldate: TEdit;
Label11: TLabel;
Lbl_UomName: TLabel;
Label12: TLabel;
Label7: TLabel;
Label8: TLabel;
edt_Batchno: TEdit;
edt_BatchName: TEdit;
lbl_VendorName: TLabel;
edt_remArk: TEdit;
cmbx_usefulCtrl: TComboBox;
lbl_ItemCode: TLabel;
Extedt_VendorCode: TExtEdit;
procedure edt_BatchnoExit(Sender: TObject);
procedure cmbx_usefulCtrlChange(Sender: TObject);
procedure FloatCheck(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormActivate(Sender: TObject);
procedure edt_BatchNameExit(Sender: TObject);
procedure btn_okClick(Sender: TObject);
procedure Extedt_VendorCodeKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Pr
procedure Extedt_VendorCodeKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);ivate declarations }
public
{ Public declarations }
procedure InitControls; Override;
procedure SaveBodyData; Override;
procedure SetStatus(CurrentStatus:String;var EnableControls:String); Override;
end;
var
Frm_Bas_Batch_D: TFrm_Bas_Batch_D;
implementation
uses Sys_Global,Bas_Batch_B;
{$R *.DFM}
procedure TFrm_Bas_Batch_D.InitControls;
begin
inherited;
lbl_ItemCode.Caption:=AdoQry_Head.fieldbyname('ItemCode').asstring;
Lbl_ItemName.Caption:=AdoQry_Head.fieldbyname('ItemName').asstring;
Lbl_UomName.Caption:=AdoQry_Head.fieldbyname('UomName').asstring;
Extedt_VendorCode.ReadOnly :=False;
edt_Batchno.Enabled :=False;
with AdoQry_Body do
begin
if (Status='Add') then
begin
edt_Batchno.Text :='';
edt_BatchName.Text :='';
Extedt_VendorCode.Text :='';
lbl_VendorName.Caption :='';
edt_VendorBatchno.Text :='';
edt_usefuldate.Text :='0';
edt_remArk.Text :='';
if not Extedt_VendorCode.Enabled then
Extedt_VendorCode.Enabled :=True;
cmbx_usefulCtrl.ItemIndex :=0;
edt_usefuldate.Enabled :=False;
edt_BatchName.SetFocus ;
end
else
begin
if AdoQry_Body.fieldbyname('Firstindate').Asstring<>'' then
Extedt_VendorCode.ReadOnly :=False
else
Extedt_VendorCode.ReadOnly :=True;
if fieldbyname('Firstindate').asstring='' then
Extedt_VendorCode.Enabled :=True
else
Extedt_VendorCode.Enabled :=False;
edt_Batchno.Text :=fieldbyname('Batchno').asstring;
edt_BatchName.Text :=fieldbyname('BatchName').asstring;
Extedt_VendorCode.Text :=fieldbyname('VendorCode').asstring;
cmbx_usefulCtrl.ItemIndex :=fieldbyname('usefulCtrl').asinteger;
edt_VendorBatchno.Text :=fieldbyname('VendorBatchno').asstring;
edt_usefuldate.Text :=fieldbyname('usefuldate').asstring;
edt_remArk.Text :=fieldbyname('BatchlineremArk').asstring;
lbl_VendorName.Caption :=fieldbyname('VendorName').asstring;
end;
end;
end;
procedure TFrm_Bas_Batch_D.SaveBodyData;
begin//把Form的控件值写入缓存,要Post
inherited;
with AdoQry_Body do
begin
fieldbyname('Batchno').AsString:=edt_Batchno.Text;
fieldbyname('BatchName').AsString:=edt_BatchName.text;
fieldbyname('VendorCode').AsString:=Extedt_VendorCode.text;
fieldbyname('VendorName').AsString:=lbl_VendorName.Caption;
fieldbyname('VendorBatchno').AsString:=Edt_VendorBatchno.Text;
fieldbyname('usefulCtrl').Asinteger:=cmbx_usefulCtrl.ItemIndex;
fieldbyname('usefuldate').AsString:=Edt_usefuldate.Text;
fieldbyname('BatchlineremArk').AsString:=Edt_remArk.Text;
if status='Add' then
fieldbyname('tmpfield').asinteger:=1
else if fieldbyname('tmpfield').asinteger=1 then
fieldbyname('tmpfield').asinteger:=1
else
fieldbyname('tmpfield').asinteger:=2;
Post;
end;
end;
procedure TFrm_Bas_Batch_D.SetStatus(CurrentStatus: String;
var EnableControls: String);
begin
inherited;
end;
procedure TFrm_Bas_Batch_D.edt_BatchnoExit(Sender: TObject);
begin
inherited;
if edt_Batchno.Text='' then
begin
DispInfo('批次号不能为空',3);
(sender as tedit).setfocus;
abort;
end;
end;
procedure TFrm_Bas_Batch_D.cmbx_usefulCtrlChange(Sender: TObject);
begin
inherited;
if cmbx_usefulCtrl.ItemIndex =0 then
begin
edt_usefuldate.Enabled :=False;
edt_usefuldate.Text :='0';
end
else
edt_usefuldate.Enabled :=True;
end;
procedure TFrm_Bas_Batch_D.FloatCheck(Sender: TObject);
begin
inherited;
if edt_usefuldate.Text<>'' then
begin
try
if (strtofloat(edt_usefuldate.text)<=0) and (cmbx_usefulCtrl.ItemIndex<>0) and (activecontrol.TabOrder>(sender as tedit).tabOrder) then
begin
DispInfo('有效期必须大于0!',3);
edt_usefuldate.SetFocus ;
abort;
end;
except
end;
end;
end;
procedure TFrm_Bas_Batch_D.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
{ if key=vk_eScApe THEN
begin
btn_Cancel.SetFocus ;
btn_Cancel.Click ;
end; }
inherited;
end;
procedure TFrm_Bas_Batch_D.Extedt_VendorCodeKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
inherited;
if ((Extedt_VendorCode.Text='') and (Extedt_VendorCode.ReadOnly)) or (status='Add') then
if(Key=120)then
CommonHint(Sender,AdoQry_Tmp,'VendorName','供应商名称','VendorCode',
'供应商代码','Vendor','VendorUsable=1');
end;
procedure TFrm_Bas_Batch_D.FormActivate(Sender: TObject);
begin
inherited;
if cmbx_usefulCtrl.Text='否' then
begin
edt_usefuldate.Text:='0';
edt_usefuldate.Enabled:=False;
end;
end;
procedure TFrm_Bas_Batch_D.edt_BatchNameExit(Sender: TObject);
begin
inherited;
if (edt_BatchName.Text='') and (activecontrol.Name<>'btn_Cancel') then
begin
DispInfo('批次描述不能为空!',3);
edt_BatchName.SetFocus ;
end;
end;
procedure TFrm_Bas_Batch_D.btn_okClick(Sender: TObject);
begin
if (edt_BatchName.Text='') and (activecontrol.Name<>'btn_Cancel') then
begin
DispInfo('批次描述不能为空!',3);
edt_BatchName.SetFocus ;
abort;
end;
inherited;
end;
end.
procedure TFrm_Bas_Batch_D.Extedt_VendorCodeKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
inherited;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -