📄 ba140.pas
字号:
unit BA140;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Single, Menus, Db, DBTables, Grids, DBGrids, Buttons, ExtCtrls, StdCtrls,
Mask, DBCtrls;
type
TfmBA140 = class(TfmSingle)
qyMasterProcuctID: TStringField;
qyMasterProductTypeID: TStringField;
qyMasterSafeStock: TBCDField;
qyMasterLastPurchaseDate: TStringField;
qyMasterLastDeliveryDate: TStringField;
qyMasterSupplierID1: TStringField;
qyMasterSupplierID2: TStringField;
qyMasterCreateMan: TStringField;
qyMasterCreateDate: TStringField;
qyMasterCreateTime: TStringField;
qyMasterCompanyID: TStringField;
qyMasterProductName: TStringField;
qyMasterUnit: TStringField;
qyMasterStopSales: TStringField;
qyMasterModifyMan: TStringField;
qyMasterModifyDate: TStringField;
qyMasterModifyTime: TStringField;
qyMasterProductTypeName: TStringField;
qyMasterSupplierName1: TStringField;
qyMasterSupplierNams2: TStringField;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
ED2: TDBEdit;
ED3: TDBEdit;
ED5: TDBEdit;
ED6: TDBEdit;
ED7: TDBEdit;
ED4: TDBEdit;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
ED8: TDBComboBox;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
sbProductTypeID: TSpeedButton;
sbSupplierID1: TSpeedButton;
sbSupplierID2: TSpeedButton;
procedure qyMasterBeforeOpen(DataSet: TDataSet);
procedure qyMasterNewRecord(DataSet: TDataSet);
procedure qyMasterBeforePost(DataSet: TDataSet);
procedure qyMasterBeforeDelete(DataSet: TDataSet);
procedure qyMasterProductTypeIDValidate(Sender: TField);
procedure sbProductTypeIDClick(Sender: TObject);
procedure sbSupplierID1Click(Sender: TObject);
procedure sbSupplierID2Click(Sender: TObject);
procedure qyMasterSupplierID1Validate(Sender: TField);
procedure qyMasterSupplierID2Validate(Sender: TField);
private
{ Private declarations }
public
{ Public declarations }
procedure OpenDB; override;
end;
var
fmBA140: TfmBA140;
implementation
uses Main, DataModule, PublicFunction, CheckData, GetData, BaseSearch;
// var
{$R *.DFM}
{ TfmSingle1 }
//MyCalendar(Sender as TDBComboDlg);
procedure TfmBA140.OpenDB;
begin
qyMaster.Close;
OrderBySQL := 'M.ProductID';
qyMaster.SQL.Text := SQLText;
qyMaster.Open;
end;
procedure TfmBA140.qyMasterBeforeOpen(DataSet: TDataSet);
begin
inherited;
//with qyMaster do
//begin
// ParamByName('CompanyNo').AsString := sCompanyID;
//end;
end;
procedure TfmBA140.qyMasterNewRecord(DataSet: TDataSet);
begin
inherited;
with qyMaster do
begin
FieldByName('ProductID').AsString := Space(10);
FieldByName('ProductName').AsString := Space(30);
FieldByName('Unit').AsString := 'PCS';
FieldByName('ProductTypeID').AsString:= Space(2);
FieldByName('SafeStock').AsFloat := 0;
FieldByName('LastPurchaseDate').AsString := ' - - ';
FieldByName('LastDeliveryDate').AsString := ' - - ';
FieldByName('SupplierID1').AsString := '00000000';
FieldByName('SupplierID2').AsString := '00000000';
FieldByName('StopSales').AsString := 'N';
end;
end;
procedure TfmBA140.qyMasterBeforePost(DataSet: TDataSet);
begin
inherited;
if qyMaster.State = dsInsert then
begin
if Trim(qyMaster.FieldByName('ProductID').AsString) = '' then
begin
NullWarning('商品编码');
ED1.SetFocus;
Abort;
end;
with qyTemp do
begin
Close;
SQL.Clear;
SQL.Add('SELECT ProductID ');
SQL.Add('FROM Product ');
SQL.Add('WHERE CompanyID = :CompanyID AND ProductID = :ProductID ');
ParamByName('CompanyID').AsString := sCompanyID;
ParamByName('ProductID').AsString := qyMaster.FieldByName('ProductID').AsString;
Open;
end;
if qyTemp.FieldByName('ProductID').AsString <> '' then
begin
RepeatWarning('商品编码');
ED1.SetFocus;
Abort;
end;
end;
if Trim(qyMaster.FieldByName('ProductName').AsString) = '' then
begin
NullWarning('商品名称');
ED2.SetFocus;
Abort;
end;
if not CheckProductTypeID(qyMaster.FieldByName('ProductTypeID').AsString) then
begin
ED4.SetFocus;
Abort;
end;
if qyMaster.FieldByName('SafeStock').AsFloat < 0 then
begin
MyWarning('安全库存不可小于0!');
ED5.SetFocus;
Abort;
end;
end;
procedure TfmBA140.qyMasterBeforeDelete(DataSet: TDataSet);
begin
inherited;
// sPrevID := qyMaster.FieldByName('ID').AsString;
end;
procedure TfmBA140.qyMasterProductTypeIDValidate(Sender: TField);
begin
inherited;
qyMaster.FieldByName('ProductTypeName').AsString :=
GetProductTypeName(qyMaster.FieldByName('ProductTypeID').AsString);
end;
procedure TfmBA140.sbProductTypeIDClick(Sender: TObject);
begin
inherited;
SearchData(ED4, DM.qyProductType);
end;
procedure TfmBA140.sbSupplierID1Click(Sender: TObject);
begin
inherited;
SearchData(ED6, DM.qySupplier);
end;
procedure TfmBA140.sbSupplierID2Click(Sender: TObject);
begin
inherited;
SearchData(ED7, DM.qySupplier);
end;
procedure TfmBA140.qyMasterSupplierID1Validate(Sender: TField);
begin
inherited;
qyMaster.FieldByName('SupplierName1').AsString :=
GetSupplierAttribName(qyMaster.FieldByName('SupplierID1').AsString);
end;
procedure TfmBA140.qyMasterSupplierID2Validate(Sender: TField);
begin
inherited;
qyMaster.FieldByName('SupplierName2').AsString :=
GetSupplierAttribName(qyMaster.FieldByName('SupplierID2').AsString);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -