Delphi 中的快速报表11.如何根据记录的数量字段打印每一条记录

2wnc66cl  于 11个月前  发布在  其他
关注(0)|答案(2)|浏览(103)

我有一个主详细报告。我希望报告打印的主信息(与其详细信息)的基础上,其数量字段。因此,如果主记录的Quantitty字段是3,它应该出现在报告3次,如果字段是2,它应该出现2次等。

  • 下面是一个包含2条记录的主表示例
    主设备1数量字段为3,主设备2数量字段为2
    所需打印如下:
    Master 1详细信息1
    Master 1详细信息1
    Master 1详细信息1
    Master2 Detial2
    Master 2详细信息2
    如有任何帮助,我们将不胜感激。
ubof19bj

ubof19bj1#

使用FrxDBUserDataset


代码

procedure TForm16.Button1Click(Sender: TObject);
begin
frxreport1.ShowReport();
end;

// IMPORTANT  frxUserDetail.RangeEnd:=reCount
procedure TForm16.frxDBMasterFirst(Sender: TObject);
begin
frxUserDetail.First;
frxUserDetail.RangeEndCount:=FDMaster.FieldByName('QTE').AsInteger;
end;

procedure TForm16.frxDBMasterNext(Sender: TObject);
begin
frxUserDetail.First;
frxUserDetail.RangeEndCount:=FDMaster.FieldByName('QTE').AsInteger;
end;

字符串
我的SQL数据(Firebird)

SELECT CAST('LIGNE 1' AS VARCHAR(20)) DESCRIPTION,3 QTE FROM RDB$DATABASE
UNION
SELECT CAST('LIGNE 2'  AS VARCHAR(20)),1 FROM RDB$DATABASE

toiithl6

toiithl62#

您可以执行以下操作:
1.添加主标注栏并将其链接到主数据集。
1.将主标注栏高度设置为0
1.添加详细信息波段,并将主数据集和详细数据集中的字段放入此波段


的数据

相关问题