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

📄 acp300_01.pas.svn-base

📁 这是一个功能齐全的,代码完整的ERP企业信息管理系统,现在上传和大家分享
💻 SVN-BASE
字号:
unit Acp300_01;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, BAS200_03, dxExEdtr, ActnList, DB, ADODB, Menus, dxCntner, dxTL,
  dxDBCtrl, dxDBGrid, ExtCtrls, ComCtrls, ToolWin, StdCtrls,
  wwdbdatetimepicker, Buttons, dxDBTLCl, dxGrClms;

type
  TAcp300_01Form = class(TBas200_03Form)
    lblDate: TLabel;
    sbSearch: TSpeedButton;
    edtFromDate: TwwDBDateTimePicker;
    edtToDate: TwwDBDateTimePicker;
    cbType: TComboBox;
    lblType: TLabel;
    dxDBGrid1O150_002: TdxDBGridColumn;
    dxDBGrid1O150_003: TdxDBGridColumn;
    dxDBGrid1G100_003: TdxDBGridColumn;
    dxDBGrid1FNotBill: TdxDBGridMaskColumn;
    dxDBGrid1FNotAmount: TdxDBGridMaskColumn;
    ADOQuery1P510A_001: TWideStringField;
    ADOQuery1P510A_003: TDateTimeField;
    ADOQuery1P510A_004: TSmallintField;
    ADOQuery1O150_002: TWideStringField;
    ADOQuery1O150_003: TWideStringField;
    ADOQuery1G100_003: TWideStringField;
    ADOQuery1P510B_026: TFloatField;
    ADOQuery1P510B_024: TFloatField;
    ADOQuery1FNotBill: TFloatField;
    ADOQuery1P510B_027: TFloatField;
    ADOQuery1FNotAmount: TFloatField;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure sbSearchClick(Sender: TObject);
    procedure ADOQuery1P510A_004GetText(Sender: TField; var Text: String;
      DisplayText: Boolean);
  private
    AStatus:array[0..5] of string;
    { Private declarations }
  public
    procedure SetInterface; override;
    procedure BrowseEvent; override;
    procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
    { Public declarations }
  end;

var
  Acp300_01Form: TAcp300_01Form;

implementation

uses CommFun, SYSDATA, PUR510_02;

{$R *.dfm}

procedure TAcp300_01Form.SetInterface;
begin
  inherited;
  Caption:=GetDBString('ACP30001001');  //采购发票查询
  lblType.Caption:=GetDBString('ACP30001002');  //类型
  lblDate.Caption:=GetDBString('ACP30001003');  //日期
  sbSearch.Caption:=GetDBString('ACP30001004');  //查询
  cbType.Clear;
  cbType.Items.Add(GetDBString('ACP30001005'));  //未开票额
  cbType.Items.Add(GetDBString('ACP30001006'));  //已开票额
  cbType.ItemIndex:=0;
  ADOQuery1P510A_001.DisplayLabel:=GetDBString('ACP30001007');  //采购单号
  ADOQuery1P510A_003.DisplayLabel:=GetDBString('ACP30001008');  //采购日期
  ADOQuery1P510A_004.DisplayLabel:=GetDBString('ACP30001009');  //定单状态
  ADOQuery1O150_002.DisplayLabel:=GetDBString('ACP30001010');  //供应商号
  ADOQuery1O150_003.DisplayLabel:=GetDBString('ACP30001011');  //供应商名
  ADOQuery1G100_003.DisplayLabel:=GetDBString('ACP30001012');  //币别名称
  ADOQuery1P510B_026.DisplayLabel:=GetDBString('ACP30001013');  //应开票额
  ADOQuery1P510B_024.DisplayLabel:=GetDBString('ACP30001014');  //已开票额
  ADOQuery1FNotBill.DisplayLabel:=GetDBString('ACP30001015');  //未开票额
  ADOQuery1P510B_027.DisplayLabel:=GetDBString('ACP30001016');  //已付款额
  ADOQuery1FNotAmount.DisplayLabel:=GetDBString('ACP30001017');  //未付款额
  //0=新建,1=核准,2=执行,3=收货,4=完成,5=取消
  AStatus[0]:=GetDBString('ACP30001018');  //新建
  AStatus[1]:=GetDBString('ACP30001019');  //核准
  AStatus[2]:=GetDBString('ACP30001020');  //执行
  AStatus[3]:=GetDBString('ACP30001021');  //收货
  AStatus[4]:=GetDBString('ACP30001022');  //完成
  AStatus[5]:=GetDBString('ACP30001023');  //取消
end;

procedure TAcp300_01Form.FormCreate(Sender: TObject);
var
  ADate:TDateTime;
begin
  inherited;
  ADate:=GetServerDate;
  edtFromDate.Date:=GetMonthFirstDate(ADate);
  edtToDate.Date:=GetMonthEndDate(ADate);
  sbSearch.Click;
end;

procedure TAcp300_01Form.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
//
end;

procedure TAcp300_01Form.BrowseEvent;
begin
  Pur510_02Form:=TPur510_02Form.Create(Application);
  Pur510_02Form.OpenData(ADOQuery1.FieldByName('P510A_001').AsString);
  Pur510_02Form.ShowModal;
end;

procedure TAcp300_01Form.ReportGetValue(const ParName: String;
  var ParValue: Variant);
begin

end;

procedure TAcp300_01Form.sbSearchClick(Sender: TObject);
var
  AFromDate,AToDate:TDateTime;
  S:String;
begin
  inherited;
//查询
  if (edtFromDate.Text='') or (edtToDate.Text='') then
  begin
    ShowMsg('UMS10000319');  //起止日期不可为空
    if edtFromDate.Text='' then edtFromDate.SetFocus else edtToDate.SetFocus;
    Abort;
  end;
  if edtFromDate.Date>edtToDate.Date then
  begin
    ShowMsg('UMS10000320');  //结束日期不能小于起始日期
    edtToDate.SetFocus;
    Abort;
  end;
  AFromDate:=edtFromDate.Date;
  AToDate:=edtToDate.Date;
  case cbType.ItemIndex of
    0:S:='>0';  //未开发票
    1:S:='=0';  //已开发票
  end;
  try
    Screen.Cursor:=crHourGlass;
    ADOQuery1.DisableControls;
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select P510A_001,P510A_003,P510A_004,O150_002,O150_003,G100_003,P510B_026,P510B_024,P510B_026-P510B_025-P510B_024 as FNotBill,P510B_027,P510B_024-P510B_027 as FNotAmount');
    ADOQuery1.SQL.Add('from PUR510A,PUR510B,ORD150,GLD100');
    ADOQuery1.SQL.Add('where P510A_001=P510B_001 and P510A_017=O150_001 and P510A_007=G100_001 and ');
    ADOQuery1.SQL.Add('      P510B_026-P510B_025-P510B_024'+S+' and P510A_003>='+GetDateString(AFromDate)+' and P510A_003<='+GetDateString(AToDate));
    ADOQuery1.SQL.Add('order by P510A_001');
    ADOQuery1.Open;
  finally
    ADOQuery1.EnableControls;
    Screen.Cursor:=crDefault;
  end;
  ARecordCount:=GetDataSetCount(ADOQuery1);
end;

procedure TAcp300_01Form.ADOQuery1P510A_004GetText(Sender: TField;
  var Text: String; DisplayText: Boolean);
begin
  inherited;
  if ADOQuery1.IsEmpty then Exit;
  Text:=AStatus[Sender.AsInteger];
end;

initialization
  RegisterClass(TAcp300_01Form);

finalization
  UnRegisterClass(TAcp300_01Form);

end.

⌨️ 快捷键说明

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