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

📄 nondbf.pas

📁 suite component ace report
💻 PAS
字号:
unit nondbf;

interface

uses
  SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  Forms, Dialogs, StdCtrls, Buttons, Sctbtn, Sctvar, sctctrl, Sctrep,
  ExtCtrls;

type
  TNonDbfMasterDetail = class(TForm)
    SctReport1: TSctReport;
    ReportPage: TSctGrouppage;
    ReportHeaderBand: TSctBand;
    ReportHeaderBandlevel: TSctLevel;
    PageHeaderBand: TSctBand;
    PageHeaderBandlevel: TSctLevel;
    DetailBand: TSctBand;
    DetailBandlevel: TSctLevel;
    PageFooterBand: TSctBand;
    PageFooterBandlevel: TSctLevel;
    ReportFooterBand: TSctBand;
    ReportFooterBandlevel: TSctLevel;
    svarDateTime: TSctDateTimeVar;
    svarPage: TSctPageVar;
    SubDataDetailBand: TSctSubDataBand;
    SubDataDetailBandlevel: TSctLevel;
    Sctvarlabel1: TSctvarlabel;
    Yr1: TSctExprvar;
    Yr2: TSctExprvar;
    Yr3: TSctExprvar;
    Data1: TSctExprvar;
    Data2: TSctExprvar;
    Data3: TSctExprvar;
    Category: TSctExprvar;
    Sctvarlabel2: TSctvarlabel;
    Sctvarlabel3: TSctvarlabel;
    Sctvarlabel4: TSctvarlabel;
    Sctvarlabel5: TSctvarlabel;
    Sctvarlabel6: TSctvarlabel;
    Sctvarlabel7: TSctvarlabel;
    procedure ReportPageDataSkip(Sender: TObject);
    procedure ReportPageDataStart(Sender: TObject);
    procedure SubDataDetailBandDataStart(Sender: TObject);
    procedure SubDataDetailBandDataSkip(Sender: TObject);
    procedure SubDataDetailBandAfterDataSkip(band: TSctSubDataBand);
    procedure ReportPageAfterDataSkip(page: TSctGrouppage);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  NonDbfMasterDetail: TNonDbfMasterDetail;
  nX, nY: Integer;
implementation

{$R *.DFM}

procedure TNonDbfMasterDetail.ReportPageDataSkip(Sender: TObject);
var
  pg: TSctGrouppage;
begin
  if nX >= 30 Then
    begin
      { When we are done, we need to set the DataIsFinished flag
        to signal the report engine that we're done.}
      pg := TSctGroupPage(Sender);
      pg.DataIsFinished := True;
    end;
  nX := nX + 3;
end;

procedure TNonDbfMasterDetail.ReportPageDataStart(Sender: TObject);
begin
  nX := 1;
end;

procedure TNonDbfMasterDetail.SubDataDetailBandDataStart(Sender: TObject);
begin
  nY := 1;
end;

procedure TNonDbfMasterDetail.SubDataDetailBandDataSkip(Sender: TObject);
var
  band: TSctSubDataBand;
begin
  if nY >= 5 Then
    begin
      band := TSctSubDataBand(Sender);
      band.DataIsFinished := True;
    end;
  nY := nY + 1;
end;

procedure TNonDbfMasterDetail.SubDataDetailBandAfterDataSkip(band: TSctSubDataBand);
begin
  Category.AsInteger := nY;
  Data1.AsFloat := nX + nY;
  Data2.AsFloat := 2 * (nX + nY);
  Data3.AsFloat := 3 * (nX + nY);   
end;

procedure TNonDbfMasterDetail.ReportPageAfterDataSkip(page: TSctGrouppage);
begin
  yr1.AsInteger := nX + 1991;
  yr2.AsInteger := nX + 1992;
  yr3.AsInteger := nX + 1993;
end;

end.

⌨️ 快捷键说明

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