📄 ar270report.~pas
字号:
unit AR270Report;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BaseReport, DB, DBTables, QRCtrls, QuickRpt, ExtCtrls;
type
TqrAR270 = class(TQuickReport)
qyReportCustomerID: TStringField;
qyReportCustomerAttribName: TStringField;
QRLabel8: TQRLabel;
QRLabel9: TQRLabel;
QRLabel10: TQRLabel;
QRLabel11: TQRLabel;
QRDBText3: TQRDBText;
QRDBText4: TQRDBText;
QRDBText5: TQRDBText;
QRDBText6: TQRDBText;
UpdateSQL1: TUpdateSQL;
qyReportJobDate: TStringField;
qyReportJobID: TStringField;
qyReportIDType: TStringField;
qyReportAmount: TIntegerField;
QRGroup1: TQRGroup;
QRLabel7: TQRLabel;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
private
{ Private declarations }
public
{ Public declarations }
procedure PrepareReport; override;
end;
var
qrAR270: TqrAR270;
implementation
uses DataModule, Main, PublicFunction;
{$R *.dfm}
{ TqrAR250 }
procedure TqrAR270.PrepareReport;
var
sTempDate, sYearMonth : String;
M0030, M3160, M6190, M9120, M1200 : String;
begin
inherited;
with DM.qyTemp1 do
begin
Close;
SQL.Clear;
SQL.Add('SELECT M.CustomerID, M.DeliveryDate, M.DeliveryProperty, ');
SQL.Add('M.AccountReceivable, M.DeliveryID, R.CustomerAttribName ');
SQL.Add('FROM DeliveryMaster M, CustomerMaster R ');
SQL.Add('WHERE M.CompanyID = :CompanyID ');
SQL.Add('AND M.DeliveryDate >= :BeginDeliveryDate AND M.DeliveryDate <= :EndDeliveryDate ');
SQL.Add('AND M.CustomerID >= :BeginCustomerID AND M.CustomerID <= :EndCustomerID ');
SQL.Add('AND M.DeliveryProperty IN (''1'', ''2'') ');
SQL.Add('AND M.CompanyID = R.CompanyID AND M.CustomerID = R.CustomerID ');
ParamByName('CompanyID').AsString := sCompanyID;
ParamByName('BeginDeliveryDate').AsString := DM.tbInput.FieldByName('BeginDate').AsString;
ParamByName('EndDeliveryDate').AsString := DM.tbInput.FieldByName('EndDate').AsString;
ParamByName('BeginCustomerID').AsString := DM.tbInput.FieldByName('BeginCustomerID').AsString;
ParamByName('EndCustomerID').AsString := DM.tbInput.FieldByName('EndCustomerID').AsString;
Open;
end;
DM.qyTemp1.First;
while not DM.qyTemp1.Eof do
begin
qyReport.Locate('CustomerID; JobDate',
VarArrayOf([DM.qyTemp1.FieldByName('CustomerID').AsString,
DM.qyTemp1.FieldByName('DeliveryDate').AsString]),
[loPartialKey]);
qyReport.Insert;
qyReport.FieldByName('CustomerID').AsString := DM.qyTemp1.FieldByName('CustomerID').AsString;
qyReport.FieldByName('CustomerAttribName').AsString :=
DM.qyTemp1.FieldByName('CustomerAttribName').AsString;
qyReport.FieldByName('JobID').AsString := DM.qyTemp1.FieldByName('DeliveryID').AsString;
qyReport.FieldByName('JobDate').AsString := DM.qyTemp1.FieldByName('DeliveryDate').AsString;
if DM.qyTemp1.FieldByName('DeliveryProperty').AsString = '1' then
qyReport.FieldByName('IDType').AsString := '
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -