1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LR_Class, LR_DBSet, Forms, Controls, Graphics,
Dialogs, StdCtrls, BufDataset, db;
type
{ TForm1 }
TForm1 = class(TForm)
BufDataset1: TBufDataset;
Button1: TButton;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
frDBDataSet1: TfrDBDataSet;
frReport1: TfrReport;
procedure Button1Click(Sender: TObject);
procedure CheckBox1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure frReport1BeginBand(Band: TfrBand);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.FormCreate(Sender: TObject);
var
i:Integer;
begin
BufDataset1.CreateDataset;
for i:=1 to 10 do
begin
BufDataset1.AppendRecord([i]);
end;
end;
procedure TForm1.frReport1BeginBand(Band: TfrBand);
begin
if CheckBox1.Checked and (Band.Name='Child1') then
begin
Band.Visible:=((BufDataset1.FieldByName('FIELD1').Value mod 2)=0);
Band.PrintChildIfNotVisible:=CheckBox2.Checked;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
frReport1.ShowReport;
end;
procedure TForm1.CheckBox1Change(Sender: TObject);
begin
CheckBox2.Visible:=CheckBox1.Checked;
end;
end.
|