我有一个独特的问题,我不确定是否可能。
我有一个报告,每组有几个Group Headers。我想要做的是选择组标题(GH1a,GH1p,GH1w ...)有一个自动递增的数字,然后我将使用罗马(@function)变成罗马数字。编号将独立于实际组的数量,仅与组标题无关。可能有一到100,000个记录(组)返回到报告,但对于每个记录(组),每个组中的组标题将具有编号相同的选择组标题
EX:
GROUP A
GH1a: I
GH1b:
GH1c: II
GH1d: III
GH1e:
GH1f:
GH1g: IV
GROUP B
GH1a: I
GH1b:
GH1c: II
GH1d: III
GH1e:
GH1f:
GH1g: IV
等...
任何帮助将不胜感激。我试图在报告标题和我希望使用以下代码增加的每个GH中使用全局变量x:
在reportheader和/或GH1a // @ iCountreset
中 Global NumberVar iCount:=1;
在每个GH中我想要增加// @ iCounted
Global Numbervar iCount;
iCount:= iCount+1;
然后第二个将它罗马化// @ RomanCount
roman(@iCounted);
我目前对它们进行了硬编码但是我试图将几个rpt文件合并到一个文件中,唯一不同的是某些GH部分会被抑制,因此不计入编号。
提前谢谢你。
答案 0 :(得分:0)
//{@reset}
WhilePrintingRecords;
Global Numbervar G1:=1;
//{@increment}
WhilePrintingRecords;
Global Numbervar G1:=G1+1;
//{@roman}
Roman({@increment})
**编辑**
瑞安的评论是正确的。我的新方法使用子报表来递增共享变量,这是有效的。步骤:
添加{@reset} GH1a' main'报告;抑制
//{@reset}
WhilePrintingRecords;
Shared Numbervar G1:=0;
创建子报告;把它放在GH1b;将这些公式添加到其中:
添加到详细信息部分;抑制:
//{@increment}
WhilePrintingRecords;
Shared Numbervar G1:=G1+1;
添加到详细信息部分:
//{@roman}
Roman({@increment})
您需要将此子报表添加到需要进行罗马数字计算的每个部分。要使此过程不那么痛苦,请导出子报表('将子报表另存为'),然后重新插入。