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

📄 ba130.pas

📁 利用delhpi 开发的一个关于零售业进销管理系统
💻 PAS
字号:
unit BA130;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Single, Menus, Db, DBTables, Grids, DBGrids, Buttons, ExtCtrls, StdCtrls,
  Mask, DBCtrls, ComCtrls;

type
  TfmBA130 = class(TfmSingle)
    qyMasterCompanyID: TStringField;
    qyMasterSupplierID: TStringField;
    qyMasterSupplierAttribName: TStringField;
    qyMasterSupplierName: TStringField;
    qyMasterInvoiceNo: TStringField;
    qyMasterOwner: TStringField;
    qyMasterRocID: TStringField;
    qyMasterPhone1: TStringField;
    qyMasterPhone2: TStringField;
    qyMasterFax: TStringField;
    qyMasterContactName1: TStringField;
    qyMasterContactName2: TStringField;
    qyMasterCompanyAddress: TStringField;
    qyMasterDeliveryAddress: TStringField;
    qyMasterInvoiceAddress: TStringField;
    qyMasterPaymentTerm: TStringField;
    qyMasterPrepaid: TBCDField;
    qyMasterBankID: TStringField;
    qyMasterAccountNo: TStringField;
    qyMasterBankAccountName: TStringField;
    qyMasterCreateMan: TStringField;
    qyMasterCreateDate: TStringField;
    qyMasterCreateTime: TStringField;
    qyMasterModifyMan: TStringField;
    qyMasterModifyDate: TStringField;
    qyMasterModifyTime: TStringField;
    qyMasterLastPurchaseDate: TStringField;
    Label1: TLabel;
    Label2: TLabel;
    ED2: TDBEdit;
    Label3: TLabel;
    ED3: TDBEdit;
    Label4: TLabel;
    ED4: TDBEdit;
    Label16: TLabel;
    DBEdit1: TDBEdit;
    qyMasterSupplierTypeID: TStringField;
    qyMastersupplierTypeName: TStringField;
    Label22: TLabel;
    DBEdit2: TDBEdit;
    Label5: TLabel;
    ED6: TDBEdit;
    Label6: TLabel;
    ED7: TDBEdit;
    Label8: TLabel;
    ED9: TDBEdit;
    Label7: TLabel;
    ED8: TDBEdit;
    Label9: TLabel;
    EDA: TDBEdit;
    Label11: TLabel;
    EDB: TDBEdit;
    Label10: TLabel;
    EDC: TDBEdit;
    Label12: TLabel;
    EDD: TDBEdit;
    Label13: TLabel;
    EDE: TDBEdit;
    Label14: TLabel;
    EDF: TDBEdit;
    Label18: TLabel;
    DBEdit3: TDBEdit;
    EDK: TDBEdit;
    EDJ: TDBEdit;
    Label19: TLabel;
    Label21: TLabel;
    EDL: TDBEdit;
    Label17: TLabel;
    ED5: TDBComboBox;
    sbSupplierTypeID: TSpeedButton;
    DBEdit4: TDBEdit;
    sbBankID: TSpeedButton;
    qyMasterBankAttribName: TStringField;
    DBRadioGroup1: TDBRadioGroup;
    qyMasterSupplierClass: TStringField;
    Label15: TLabel;
    EDM: TDBEdit;
    qyMasterPayDays: TBCDField;
    Label20: TLabel;
    EDN: TDBEdit;
    procedure qyMasterNewRecord(DataSet: TDataSet);
    procedure qyMasterBeforePost(DataSet: TDataSet);
    procedure qyMasterSupplierTypeIDValidate(Sender: TField);
    procedure sbSupplierTypeIDClick(Sender: TObject);
    procedure sbBankIDClick(Sender: TObject);
    procedure dsMasterStateChange(Sender: TObject);
    procedure qyMasterBankIDValidate(Sender: TField);
  private
    { Private declarations }
  public
    { Public declarations }
 
    procedure OpenDB; override;
  end;

var
  fmBA130: TfmBA130;

implementation

uses Main, DataModule, PublicFunction, CheckData, GetData, BaseSearch;

{$R *.DFM}

{ TfmBA130 }

procedure TfmBA130.OpenDB;
begin
  qyMaster.Close;
  OrderBySQL := 'M.SupplierID';
  qyMaster.SQL.Text := SQLText;
  qyMaster.Open;

end;

procedure TfmBA130.qyMasterNewRecord(DataSet: TDataSet);
begin
  inherited;

  with qyMaster do
  begin
    FieldByName('SupplierID').AsString := Space(8);
    FieldByName('SupplierAttribName').AsString := Space(10);
    FieldByName('SupplierName').AsString := Space(60);
    FieldByName('InvoiceNo').AsString := Space(8);
    FieldByName('SupplierTypeID').AsString := '00';
    FieldByName('Owner').AsString := Space(8);
    FieldByName('RocID').AsString := Space(10);
    FieldByName('Phone1').AsString := Space(20);
    FieldByName('Phone2').AsString := Space(20);
    FieldByName('Fax').AsString := Space(20);
    FieldByName('ContactName1').AsString := Space(8);
    FieldByName('ContactName2').AsString := Space(8);
    FieldByName('CompanyAddress').AsString := Space(60);
    FieldByName('DeliveryAddress').AsString := Space(60);
    FieldByName('InvoiceAddress').AsString := Space(60);
    FieldByName('PaymentTerm').AsString := 'K';
    FieldByName('SupplierClass').AsString := 'B';
    FieldByName('LastPurchaseDate').AsString := Space(8);
    FieldByName('Prepaid').AsFloat := 0;
    FieldByName('BankID').AsString := Space(7);
    FieldByName('AccountNo').AsString := Space(14);
    FieldByName('BankAccountName').AsString := Space(60);
    FieldByName('PayDays').AsFloat := 0;
  end;
end;

procedure TfmBA130.qyMasterBeforePost(DataSet: TDataSet);
begin
  inherited;

  if qyMaster.State = dsInsert then
  begin
    if Trim(qyMaster.FieldByName('SupplierID').AsString) = '' then
    begin
      NullWarning('供应商编号');
      ED1.SetFocus;
      Abort;
    end;
    with qyTemp do
    begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT SupplierID');
      SQL.Add('FROM Supplier');
      SQL.Add('WHERE CompanyID = :CompanyID AND SupplierID = :SupplierID');
      ParamByName('CompanyID').AsString := sCompanyID;
      ParamByName('SupplierID').AsString := qyMaster.FieldByName('SupplierID').AsString;
      Open;
    end;
    if qyTemp.FieldByName('SupplierID').AsString <> '' then
    begin
      RepeatWarning('ㄑ供应商编号');
      ED1.SetFocus;
      Abort;
    end;
  end;
  if Trim(qyMaster.FieldByName('SupplierName').AsString) = '' then
  begin
    NullWarning('供应商名称');
    ED3.SetFocus;
    Abort;
  end;
  if not CheckSupplierTypeID(qyMaster.FieldByName('SupplierTypeID').AsString) then
  begin
    ED4.SetFocus;
    Abort
  end;
  if (Trim(qyMaster.FieldByName('RocID').AsString) <> '') and
     (not CheckRocID(qyMaster.FieldByName('RocID').AsString)) then
  begin
    ED7.SetFocus;
    Abort;
  end;
  if qyMaster.FieldByName('PayDays').AsFloat < 0 then
  begin
    MyWarning('付款日数不能小于0!');
    EDN.SetFocus;
    Abort;
  end;
  if not CheckBankID(qyMaster.FieldByName('BankID').AsString) then
  begin
    EDJ.SetFocus;
    Abort
  end;
end;

procedure TfmBA130.qyMasterSupplierTypeIDValidate(Sender: TField);
begin
  inherited;
  qyMaster.FieldByName('SupplierTypeName').AsString :=
           GetSupplierTypeName(qyMaster.FieldByName('SupplierTypeID').AsString);
end;

procedure TfmBA130.sbSupplierTypeIDClick(Sender: TObject);
begin
  inherited;
  SearchData(ED4, DM.qySupplierType);
end;

procedure TfmBA130.sbBankIDClick(Sender: TObject);
begin
  inherited;
  SearchData(EDJ, DM.qyBank);
end;

procedure TfmBA130.dsMasterStateChange(Sender: TObject);
begin
  inherited;
  if qyMaster.State in [dsInsert, dsEdit] then
  begin
    sbSupplierTypeID.Enabled := True;
    sbBankID.Enabled := True;
  end
  else
  begin
    sbSupplierTypeID.Enabled := False;
    sbBankID.Enabled := False;
  end;
end;

procedure TfmBA130.qyMasterBankIDValidate(Sender: TField);
begin
  inherited;
  qyMaster.FieldByName('BankAttribName').AsString :=
           GetBankAttribName(qyMaster.FieldByName('BankID').AsString);
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -