我有一个报告,我正在构建一个使用带有六个子行集的行集。我通过按钮上的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);
等等。
在我的报告中,我从顶部的父行集中获取了一些内容,然后是子行集(带有“section headers”):
儿童一: 来自& rs_resp的数据
儿童二: 来自& rs_expr的数据 ... 我的问题不是所有的行集都有数据和数据。我想从报告中排除这些部分。我首先尝试在RTF模板上的条件区域中使用@numrows,但很快就提醒即使空行集至少有一行......
挑战似乎是得到标题以及数据区域受条件影响......
有没有人这样做过,或有任何想法?
谢谢!
答案 0 :(得分:1)
你当前的订单似乎是这样的,
家长1
家长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
这将使您更容易打印父行的子行。此外,可以放入检查 - 以验证子行是否为空并相应地打印。