用fastreport怎样控制打印某条记录?(原来没人会,浪费了100分) (100分)

  • 主题发起人 主题发起人 aialee
  • 开始时间 开始时间
A

aialee

Unregistered / Unconfirmed
GUEST, unregistred user!
数据集有100条记录,报表要求打印出其中第20~30条和50~60条(又或者序号>=50的)。fastreport怎样部分打印?
放了很久都没人回答,浪费了100分
目前小弟使用的方法是重新生成两个数据集,或者重新生成一张新表,再把其中全部内容生
成新的报表。觉得极不方便。
有那位兄弟赐教,用fastreport怎样控制打印某条记录?
--------------------------------------
目前已经使用blyb兄弟重新生成数据集的方法,觉得极不方便。
如报表分A,B,C,D四区。
-----------------
| A区 |B区 |
-----------------
| C区 |D区 |
-----------------
A区数据集1中20~30条记录
B区数据集1中50~60条记录
C区数据集1中10~20条记录
D区数据集1中80~90条记录
why兄弟提供的方法还是很有帮助。
有没有方法直接控制报表中的表达式,因为一份报表有时分十个区,字段与数据混合排放,
用生成数据集的方法,生成十个数据集,然后再生成最后一个数据集,太麻烦了。除创建临
时表外有没有直接一点的方法。


 
用SQL语句动态生成fastreport对应的数据集。
 
设置TfrDBDataSet的Rangebegin
,RangeEnd属性
 
我想你要我们帮你就是让我们很明白,不如把你做的是什么,为什么要分区说出来我们看看
 
不如自己NewPage然后给每页填内容。
我就是这么干的。有个课表用Report没法做。
 
TfrDataset = class(TComponent)
protected
FRangebegin
: TRangebegin
;
FRangeEnd: TRangeend;
FRangeEndCount: Integer;
FOnFirst, FOnNext, FOnPrior: TNotifyEvent;
FOnCheckEOF: TCheckEOFEvent;
FRecNo: Integer;
public
constructor Create(AOwner: TComponent);
override;
procedure Init;
virtual;
procedure Exit;
virtual;
procedure First;
virtual;
procedure Next;
virtual;
procedure Prior;
virtual;
function Eof: Boolean;
virtual;
property Rangebegin
: TRangebegin
read FRangebegin
write FRangebegin
default rbFirst;
property RangeEnd: TRangeEnd read FRangeEnd write FRangeEnd default reLast;
property RangeEndCount: Integer read FRangeEndCount write FRangeEndCount default 0;
property RecNo: Integer read FRecNo;
property OnCheckEOF: TCheckEOFEvent read FOnCheckEOF write FOnCheckEOF;
property OnFirst: TNotifyEvent read FOnFirst write FOnFirst;
property OnNext: TNotifyEvent read FOnNext write FOnNext;
property OnPrior: TNotifyEvent read FOnPrior write FOnPrior;
end;
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部