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

📄 acr510_02.pas.svn-base

📁 一个用Delphi开发的ERP软件
💻 SVN-BASE
📖 第 1 页 / 共 4 页
字号:
unit Acr510_02;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Bas200_13, DB, ADODB, ActnList, Menus, ComCtrls, ToolWin,
  StdCtrls, Mask, wwdbedit, Wwdotdot, Grids, Wwdbigrd, Wwdbgrid,
  wwdbdatetimepicker, Buttons,CommFun,AcrComm;

type
  TAcr510_02Form = class(TBas200_13Form)
    adsAcr510B: TADODataSet;
    dsInv500B: TDataSource;
    ADODataSet1: TADODataSet;
    PageControl1: TPageControl;
    tsItem: TTabSheet;
    wwDBGrid1: TwwDBGrid;
    cbFrom: TComboBox;
    lblFrom: TLabel;
    edtDate: TwwDBDateTimePicker;
    lblDate: TLabel;
    lblStatus: TLabel;
    edtStatus: TEdit;
    lblPerson: TLabel;
    edtPerson: TEdit;
    sbPerson: TSpeedButton;
    edtPersonName: TEdit;
    edtSourceNo: TEdit;
    Label1: TLabel;
    gbCust: TGroupBox;
    lblCust: TLabel;
    lblAddress: TLabel;
    lblPhone: TLabel;
    lblFax: TLabel;
    edtAddress: TEdit;
    edtPhone: TEdit;
    edtContact: TEdit;
    edtCust: TEdit;
    sbCust: TSpeedButton;
    edtCustName: TEdit;
    lblCurr: TLabel;
    cbCurr: TComboBox;
    lblRate: TLabel;
    edtRate: TEdit;
    Label3: TLabel;
    edtAmount: TEdit;
    Label4: TLabel;
    edtRevenue: TEdit;
    Label5: TLabel;
    edtReceive: TEdit;
    memRemark: TMemo;
    lblRemark: TLabel;
    adsAcr510BFNo: TIntegerField;
    adsAcr510BFItemNo: TIntegerField;
    adsAcr510BFItemID: TStringField;
    adsAcr510BFItemName: TStringField;
    adsAcr510BFItemSpec: TStringField;
    adsAcr510BFUnitName: TStringField;
    adsAcr510BFOrderQty: TFloatField;
    adsAcr510BFOrderPrice: TFloatField;
    adsAcr510BFOrderAmount: TFloatField;
    adsAcr510BFQty: TFloatField;
    adsAcr510BFPrice: TFloatField;
    adsAcr510BFAmount: TFloatField;
    adsAcr510BFTaxRate: TFloatField;
    adsAcr510BFTaxAmt: TFloatField;
    adsAcr510BFAcrAmt: TFloatField;
    adsAcr510BFRemark: TStringField;
    adsAcr510BFOrder: TStringField;
    adsAcr510BFLineNo: TIntegerField;
    qryHrm150: TADOQuery;
    qryHrm150H150_001: TAutoIncField;
    qryHrm150H150_002: TWideStringField;
    qryHrm150H150_003: TWideStringField;
    qryGld100: TADOQuery;
    qryAcr510B: TADOQuery;
    edtItem: TwwDBComboDlg;
    qryItems: TADOQuery;
    qryItemsI150_001: TAutoIncField;
    qryItemsI150_002: TWideStringField;
    qryItemsI150_003: TWideStringField;
    qryItemsI150_004: TWideStringField;
    qryItemsI140_002: TWideStringField;
    qryItemsI140_003: TWideStringField;
    qryItemsI140_001: TAutoIncField;
    qryInv150: TADOQuery;
    qryInv140: TADOQuery;
    qryAcr510BA510B_001: TWideStringField;
    qryAcr510BA510B_002: TIntegerField;
    qryAcr510BA510B_003: TWideStringField;
    qryAcr510BA510B_004: TIntegerField;
    qryAcr510BA510B_005: TFloatField;
    qryAcr510BA510B_006: TFloatField;
    qryAcr510BA510B_007: TFloatField;
    qryAcr510BA510B_008: TFloatField;
    qryAcr510BA510B_009: TFloatField;
    qryAcr510BA510B_010: TFloatField;
    qryAcr510BA510B_011: TWideStringField;
    qryAcr510BO510B_002: TIntegerField;
    qryAcr510BO510B_003: TIntegerField;
    qryAcr510BO510B_004: TIntegerField;
    qryAcr510BO510B_005: TFloatField;
    qryAcr510BO510B_006: TFloatField;
    qryAcr510BO510B_007: TFloatField;
    ADOQuery1A510A_001: TWideStringField;
    ADOQuery1A510A_002: TSmallintField;
    ADOQuery1A510A_003: TSmallintField;
    ADOQuery1A510A_004: TDateTimeField;
    ADOQuery1A510A_005: TIntegerField;
    ADOQuery1A510A_006: TWideStringField;
    ADOQuery1A510A_007: TIntegerField;
    ADOQuery1A510A_008: TFloatField;
    ADOQuery1A510A_009: TFloatField;
    ADOQuery1A510A_010: TFloatField;
    ADOQuery1A510A_011: TFloatField;
    ADOQuery1A510A_012: TIntegerField;
    ADOQuery1A510A_013: TMemoField;
    ADOQuery1H150_002: TWideStringField;
    ADOQuery1H150_003: TWideStringField;
    ADOQuery1H150_004: TWideStringField;
    ADOQuery1G100_002: TWideStringField;
    ADOQuery1G100_003: TWideStringField;
    ADOQuery1O150_002: TWideStringField;
    ADOQuery1O150_003: TWideStringField;
    qryOrd150: TADOQuery;
    qryOrd150O150_002: TWideStringField;
    qryOrd150O150_003: TWideStringField;
    qryOrd150O150_004: TWideStringField;
    qryOrd150O150_005: TWideStringField;
    qryOrd150O150_006: TWideStringField;
    qryOrd150O150_007: TWideStringField;
    qryOrd150O150_008: TWideStringField;
    qryOrd150O150_012: TWideStringField;
    qryInv150I150_001: TAutoIncField;
    qryInv150I150_002: TWideStringField;
    qryInv150I150_003: TWideStringField;
    qryInv150I150_004: TWideStringField;
    qryInv150I150_005: TIntegerField;
    qryInv150I150_006: TIntegerField;
    qryInv150I150_007: TIntegerField;
    qryInv150I150_008: TWideStringField;
    qryInv150I150_009: TWideStringField;
    qryInv150I150_010: TIntegerField;
    qryInv150I150_011: TIntegerField;
    qryInv150I150_012: TIntegerField;
    qryInv150I150_013: TFloatField;
    qryInv150I150_014: TIntegerField;
    qryInv150I150_015: TFloatField;
    qryInv150I150_016: TFloatField;
    qryInv150I150_017: TIntegerField;
    qryInv150I150_018: TFloatField;
    qryInv150I150_019: TIntegerField;
    qryInv150I150_020: TIntegerField;
    qryInv150I150_021: TFloatField;
    qryInv150I150_022: TFloatField;
    qryInv150I150_023: TFloatField;
    qryInv150I150_024: TIntegerField;
    qryInv150I150_025: TIntegerField;
    qryInv150I150_026: TBooleanField;
    qryInv150I150_027: TBooleanField;
    qryInv150I150_028: TIntegerField;
    qryInv150I150_029: TDateTimeField;
    qryInv150I150_030: TIntegerField;
    qryInv150I150_031: TIntegerField;
    qryInv150I150_032: TFloatField;
    qryInv150I150_033: TFloatField;
    qryInv150I150_034: TFloatField;
    qryInv150I150_035: TFloatField;
    qryInv150I150_036: TIntegerField;
    qryInv150I150_037: TIntegerField;
    qryInv150I150_038: TDateTimeField;
    qryInv150I150_039: TIntegerField;
    qryInv150I150_040: TIntegerField;
    qryInv150I150_041: TIntegerField;
    qryInv150I150_042: TIntegerField;
    qryInv150I150_043: TFloatField;
    qryInv150I150_044: TFloatField;
    qryInv150I150_045: TFloatField;
    qryInv150I150_046: TIntegerField;
    qryInv150I150_047: TIntegerField;
    qryInv150I150_048: TFloatField;
    qryInv150I150_049: TDateTimeField;
    qryInv150I150_050: TWideStringField;
    qryInv150I150_051: TDateTimeField;
    qryInv150I150_052: TWideStringField;
    qryInv150I150_053: TIntegerField;
    qryInv140I140_001: TAutoIncField;
    qryInv140I140_002: TWideStringField;
    qryInv140I140_003: TWideStringField;
    qryInv140I140_004: TSmallintField;
    qryOrd150O150_001: TAutoIncField;
    ADOQuery1A510A_014: TDateTimeField;
    ADOQuery1A510A_015: TWideStringField;
    ADOQuery1A510A_016: TDateTimeField;
    ADOQuery1A510A_017: TWideStringField;
    qryAcr510BI150_002: TStringField;
    qryAcr510BI150_003: TStringField;
    qryAcr510BI150_004: TStringField;
    qryAcr510BI150_008: TStringField;
    qryAcr510BI140_002: TStringField;
    qryAcr510BI140_003: TStringField;
    adsAcr510BFInvAmount: TFloatField;
    qryAcr510BO510B_024: TFloatField;
    adsAcr510BFDisAmt: TFloatField;
    qryAcr510BO510B_025: TFloatField;
    adsAcr510BFCOrderNo: TStringField;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure sbPersonClick(Sender: TObject);
    procedure edtPersonExit(Sender: TObject);
    procedure sbCustClick(Sender: TObject);
    procedure edtItemCustomDlg(Sender: TObject);
    procedure adsAcr510BNewRecord(DataSet: TDataSet);
    procedure cbCurrChange(Sender: TObject);
    procedure wwDBGrid1ColExit(Sender: TObject);
    procedure wwDBGrid1Enter(Sender: TObject);
    procedure wwDBGrid1Exit(Sender: TObject);
    procedure wwDBGrid1UpdateFooter(Sender: TObject);
    procedure edtCustExit(Sender: TObject);
    procedure Action1Execute(Sender: TObject);
  private
    { Private declarations }
    AIsChanged,ABusy:Boolean;
    ALastNo:Integer;
    AStatus:array[0..5] of string;
    procedure GetCustPlaceInfo;
    procedure GetDetailData;
    //加入单据明细
    procedure AddItemLine(AOrderInfo:TOrderInfo; APriceInfo:TPriceInfo;AItemInfo:TItemInfo;ADataSet:TADODataSet;AType:String='UPD');
    procedure SetQty;
    procedure SetPrice;
    procedure SetAmount;
    procedure SetDefault;
    procedure SetDBGridA;
    procedure SetTaxRate;
  public
    procedure OpenData(ACode:String);
    procedure SetInterface; override;
    procedure GetDataInfo; override;
    procedure InsertEvent; override;
    procedure UpdateEvent; override;
    procedure DeleteEvent; override;
    procedure SetEmptyInit; override;
    procedure TableBeforePost; override;
    procedure TableAfterPost; override;
    procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
    { Public declarations }
  end;

var
  Acr510_02Form: TAcr510_02Form;

implementation

uses SYSDATA,HwSelData, HwSelDataA,CshComm;

{$R *.dfm}

procedure TAcr510_02Form.OpenData(ACode:String);
begin
  if ACode='' then AMode:='ADD' else AMode:='UPD';
  ADOQuery1.DisableControls;
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('select A.*,');
  ADOQuery1.SQL.Add('    B.H150_002,B.H150_003,B.H150_004,');
  ADOQuery1.SQL.Add('    C.G100_002,C.G100_003,');
  ADOQuery1.SQL.Add('    D.O150_002,D.O150_003');
  ADOQuery1.SQL.Add('from ACR510A A,Hrm150 B,GLD100 C,ORD150 D');
  ADOQuery1.SQL.Add('where A.A510A_005=B.H150_001 and A.A510A_007=C.G100_001 and A.A510A_012=D.O150_001');
  ADOQuery1.SQL.Add('order by A.A510A_001');
  ADOQuery1.Open;
  ADOQuery1.Locate('A510A_001',ACode,[]);
  ADOQuery1.EnableControls;
  ADOQuery1AfterScroll(ADOQuery1);
end;

procedure TAcr510_02Form.SetInterface;
begin
  inherited;
//设置界面的初始化信息
 Caption:=GetDBString('Acr51002001');  //	Caption
 lblCreateDate.Caption:=GetDBString('Acr51002003');  //	制单日期
 lblCreateBy.Caption:=GetDBString('Acr51002004');  //	制单人员
 lblUpdateDate.Caption:=GetDBString('Acr51002005');  //	修改日期
 lblUpdateBy.Caption:=GetDBString('Acr51002006');  //	修改人员
 gbInfo.Caption:=GetDBString('Acr51002007');  //	基本信息
 lblCode.Caption:=GetDBString('Acr51002008');  //	发票编号
 ADOQuery1A510A_001.DisplayLabel:=GetDBString('Acr51002009');  //	发票编号
 ADOQuery1A510A_004.DisplayLabel:=GetDBString('Acr51002010');  //	发票日期
 ADOQuery1A510A_006.DisplayLabel:=GetDBString('Acr51002011');  //	原始单号
 ADOQuery1A510A_008.DisplayLabel:=GetDBString('Acr51002012');  //	币别汇率
 ADOQuery1A510A_009.DisplayLabel:=GetDBString('Acr51002013');  //	发票金额
 ADOQuery1A510A_010.DisplayLabel:=GetDBString('Acr51002014');  //	发票税额
 ADOQuery1A510A_011.DisplayLabel:=GetDBString('Acr51002015');  //	应收金额
 ADOQuery1H150_002.DisplayLabel:=GetDBString('Acr51002016');  //	员工编号
 ADOQuery1H150_003.DisplayLabel:=GetDBString('Acr51002017');  //	员工姓名
 ADOQuery1H150_004.DisplayLabel:=GetDBString('Acr51002018');  //	英文姓名
 ADOQuery1G100_002.DisplayLabel:=GetDBString('Acr51002019');  //	币别编号
 ADOQuery1G100_003.DisplayLabel:=GetDBString('Acr51002020');  //	币别名称
 ADOQuery1O150_002.DisplayLabel:=GetDBString('Acr51002021');  //	客户编号

⌨️ 快捷键说明

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