0

我有一个正在构建的报告,它使用一个包含六个子行集的行集。我正在通过按钮上的 pplcode 生成此报告。我声明了行集:

rs_resp = CreateRowset(Record.AVZ_JD_RESP_TBL);
&rs_expr = CreateRowset(Record.AVZ_JD_EXPR_TBL);
&rs_skls = CreateRowset(Record.AVZ_JD_SKLS_TBL);
&rs_educ = CreateRowset(Record.AVZ_JD_EDUC_TBL);
&rs_lic = CreateRowset(Record.AVZ_JD_LIC_TBL);
&rs_cond = CreateRowset(Record.AVZ_JD_COND_TBL);
&rs_dtl = CreateRowset(Record.AVZ_JD_DTL_VW, &rs_resp, &rs_expr, &rs_skls, &rs_educ, &rs_lic, &rs_cond);

然后我遍历并填充行集:

&rs_dtl.Fill("WHERE FILL.AVZ_JD_DESCRID = :1 AND EFFDT = %DATEIN(:2)", &jdDescrID, &effdt); 

等等。

在我的报告中,我在顶部有一些来自父行集的东西,然后是子行集(带有“节标题”)如下:

孩子一:来自 &rs_resp 的数据

孩子二:来自 &rs_expr 的数据...我的问题不是所有的行集都有数据,我想从我的报告中排除这些部分。我第一次尝试在 RTF 模板的条件区域中使用@numrows,但很快就被提醒即使是空行集也至少有 1 行...

挑战似乎是获得标题以及受条件影响的数据区域......

有没有人这样做过,或者有什么想法?

谢谢!

4

1 回答 1

1

您当前的订单似乎类似于
Parent 1
Parent 2

   孩子 1.1
   孩子 1.2
   孩子 2.1
   孩子 2.2
   孩子 1.3
   孩子 1.4
   孩子 2.3
   孩子 2.4
   孩子 1.5

在您尝试在上面使用的方法中,您最终将拥有 &rs_dtl 中的所有父行和相应行集中的所有子行。在这种情况下,您将需要在 RTF 模板中搜索相应的子行(对于存在的每个父行),我会说这是一项繁琐的任务。

而是尝试按以下顺序对行集进行排序:

父母 1
   孩子 1
   孩子 2
   孩子 3
   孩子 4
父母 2
   孩子 1
   孩子 2
   孩子 3
   孩子 4

这将使您更容易打印父行的子行。此外,可以进行检查 - 以验证子行是否为空并相应地打印。

于 2012-05-09T10:42:26.667 回答