?? acp300_01.pas.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 + -