📄 rord.pas
字号:
unit Rord;
interface
uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
Forms, Dialogs, sctctrl, StdCtrls, Sctvar, Sctrep, Grids, DBGrids, DB,
DBTables, ExtCtrls, Buttons, Sctbtn, AcePage;
type
Tordform = class(TForm)
Panel1: TPanel;
CustomerSource: TDataSource;
Customer: TTable;
orders: TTable;
OrdersSource: TDataSource;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
items: TTable;
itemsSource: TDataSource;
ReportHeaderBand: TSctBand;
ReportHeaderBandlevel: TSctLevel;
PageHeaderBand: TSctBand;
PageHeaderBandlevel: TSctLevel;
DetailBand: TSctBand;
DetailBandlevel: TSctLevel;
PageFooterBand: TSctBand;
PageFooterBandlevel: TSctLevel;
ReportFooterBand: TSctBand;
ReportFooterBandlevel: TSctLevel;
ReportPage: TSctGrouppage;
SctReport1: TSctReport;
svarDateTime: TSctDateTimeVar;
svarPage: TSctPageVar;
DataSourceGuide: TSctDataSourceGuide;
DataSourceGuide1: TSctDataSourceGuide;
DataSourceGuide2: TSctDataSourceGuide;
customerCUSTNO: TSctdbvar;
customerCOMPANY: TSctdbvar;
customerADDR1: TSctdbvar;
customerADDR2: TSctdbvar;
customerCITY: TSctdbvar;
customerSTATE: TSctdbvar;
customerZIP: TSctdbvar;
customerCOUNTRY: TSctdbvar;
customerPHONE: TSctdbvar;
customerFAX: TSctdbvar;
customerTAXRATE: TSctdbvar;
customerCONTACT: TSctdbvar;
customerLASTINVOICEDATE: TSctdbvar;
ordersORDERNO: TSctdbvar;
ordersCUSTNO: TSctdbvar;
ordersSALEDATE: TSctdbvar;
ordersSHIPDATE: TSctdbvar;
ordersEMPNO: TSctdbvar;
ordersSHIPTOCONTACT: TSctdbvar;
ordersSHIPTOADDR1: TSctdbvar;
ordersSHIPTOADDR2: TSctdbvar;
ordersSHIPTOCITY: TSctdbvar;
ordersSHIPTOSTATE: TSctdbvar;
ordersSHIPTOZIP: TSctdbvar;
ordersSHIPTOCOUNTRY: TSctdbvar;
ordersSHIPTOPHONE: TSctdbvar;
ordersSHIPVIA: TSctdbvar;
ordersPO: TSctdbvar;
ordersTERMS: TSctdbvar;
ordersPAYMENTMETHOD: TSctdbvar;
ordersITEMSTOTAL: TSctdbvar;
ordersTAXRATE: TSctdbvar;
ordersFREIGHT: TSctdbvar;
ordersAMOUNTPAID: TSctdbvar;
itemsORDERNO: TSctdbvar;
itemsITEMNO: TSctdbvar;
itemsPARTNO: TSctdbvar;
itemsQTY: TSctdbvar;
itemsDISCOUNT: TSctdbvar;
TSctvarlabel5: TSctvarlabel;
SctShape1: TSctShape;
SctReportButton1: TSctReportButton;
SctImageLabel1: TSctImageLabel;
SctTextLabel1: TSctTextLabel;
SctTextLabel2: TSctTextLabel;
SctTextLabel3: TSctTextLabel;
SctTextLabel4: TSctTextLabel;
SctTextLabel5: TSctTextLabel;
SctTextLabel6: TSctTextLabel;
SctTextLabel7: TSctTextLabel;
SctTextLabel9: TSctTextLabel;
SubDataDetailBand: TSctSubDataBand;
SubDataDetailBandlevel: TSctLevel;
TSctvarlabel8: TSctvarlabel;
parts: TTable;
DataSourceGuide3: TSctDataSourceGuide;
partsSource: TDataSource;
partsPARTNO: TSctdbvar;
partsVENDORNO: TSctdbvar;
partsDESCRIPTION: TSctdbvar;
partsONHAND: TSctdbvar;
partsONORDER: TSctdbvar;
partsCOST: TSctdbvar;
partsLISTPRICE: TSctdbvar;
TSctvarlabel9: TSctvarlabel;
TSctvarlabel10: TSctvarlabel;
Sctvarlabel2: TSctvarlabel;
ItemsAmount: TSctExprvar;
TotalofItemsAmount: TSctTotalvar;
SctTotalvarLabel1: TSctTotalvarLabel;
InvoiceForm: TSctOverlayBand;
InvoiceFormLevel: TSctLevel;
SctShape2: TSctShape;
SctVerticalDivider2: TSctVerticalDivider;
SctTextLabel13: TSctTextLabel;
SctTextLabel10: TSctTextLabel;
SctTextLabel11: TSctTextLabel;
SctTextLabel12: TSctTextLabel;
SctVerticalDivider1: TSctVerticalDivider;
SctTextLabel14: TSctTextLabel;
SctShape3: TSctShape;
SctShape4: TSctShape;
SctTextLabel15: TSctTextLabel;
SctShape5: TSctShape;
SctShape6: TSctShape;
SctShape7: TSctShape;
SctTextLabel16: TSctTextLabel;
SctTextLabel17: TSctTextLabel;
SctTextLabel18: TSctTextLabel;
Sctvarlabel1: TSctvarlabel;
Sctvarlabel3: TSctvarlabel;
Sctvarlabel4: TSctvarlabel;
Sctvarlabel5: TSctvarlabel;
SctTextLabel19: TSctTextLabel;
Sctvarlabel6: TSctvarlabel;
SctLine1: TSctLine;
Address: TSctExprvar;
SctBarCodeLabel1: TSctBarCodeLabel;
SubDataDetailBandFoot: TSctDataFootBand;
SubDataDetailBandFootlevel: TSctLevel;
SctTextLabel8: TSctTextLabel;
procedure ItemsAmountGetData(oVar: TSctvar);
procedure SctTextLabel14LabelPrintWhen(lb: TSctLabel; var Result: Boolean);
procedure SctTotalvarLabel1LabelPrintWhen(lb: TSctLabel; var Result: Boolean);
procedure AddressGetData(oVar: TSctvar);
procedure ReportPageAfterDataSkip(page: TSctGrouppage);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
ordform: Tordform;
implementation
{$R *.DFM}
uses sctutil;
procedure Tordform.ItemsAmountGetData(oVar: TSctvar);
begin
oVar.AsFloat := (itemsQty.AsFloat * partsCost.AsFloat);
end;
procedure Tordform.SctTextLabel14LabelPrintWhen(lb: TSctLabel; var Result: Boolean);
begin
result := Not subdatadetailband.DataIsFinished;
end;
procedure Tordform.SctTotalvarLabel1LabelPrintWhen(lb: TSctLabel; var Result: Boolean);
begin
result := subdatadetailband.DataIsFinished;
end;
procedure Tordform.AddressGetData(oVar: TSctvar);
var
s: TMemoryStream;
lf: char;
text: array[0..256] of Char;
cityStateZip: String;
procedure AddStream(str: String);
begin
if Length(str) > 0 then
begin
strPCopy(text, str);
s.Write(text, length(str));
s.Write(lf, 1);
end;
end;
begin
lf := Chr(10);
s := TMemoryStream.Create;
try
AddStream(CustomerCompany.AsString);
AddStream(CustomerAddr1.AsString);
AddStream(CustomerAddr2.AsString);
CityStateZip := SctRightTrim(CustomerCity.AsString)
+ ', ' + SctRightTrim(CustomerState.AsString)
+ ' ' + SctRightTrim(CustomerZip.AsString);
AddStream(CityStateZip);
AddStream(CustomerCountry.AsString);
oVar.AsStream := s;
finally
s.Free;
end;
end;
procedure Tordform.ReportPageAfterDataSkip(page: TSctGrouppage);
begin
svarPage.AsInteger := 0;
end;
procedure Tordform.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -