⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ba140.pas

📁 一套融入了系统营销管理思想的管理软件产品
💻 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 + -