我有一个查询,它给出了这样的输出......
EMPLOYEE_NUMBER,NAME,QUESTION,ANSWER。
我需要在这样的报告中显示这些信息
员工人数| NAME |问题01 |问题02 |问题03 ......
在这些问题列中,应显示员工对该特定问题的答案。
这些问题列应该是动态生成的,因为问题不会随时改变。我在查询中使用PIVOT / UNPIVOT来处理这个问题,除了rtf模板外,一切都很好。
我使用Oracle报表生成器创建报表,RTF模板用于格式化。最后将这些.rdf文件和.rtf文件上传到oracle应用程序。在oracle应用程序中,rtf out put设置为Excel。这样用户就可以将报告下载为Excel文件。
所以我试图通过使用RTF模板实现这一目标......
在第一栏的第一栏EMPLOYEE_NUMBER:
<?for-each-group@section:G_EMPLOYEE_NUMBER;./ EMPLOYEE_NUMBER?> <?variable@incontext:IND;EMPLOYEE_NUMBER?>
在QUESTION列中(最后一列是动态的)标题:
<?for-each-group@column: G_EMPLOYEE_NUMBER;QUESTION?>
在QUESTION专栏的第一个单元格中:
<?for-each-group@cell://G_EMPLOYEE_NUMBER;QUESTION?>
<?current-group()[EMPLOYEE_NUMBER=$IND]/ANSWER?>
但这并不能提供所需的输出。在.rtf模板中似乎有些不对劲,甚至输出也没有出现在Excel中。它只是在浏览中打开,列没有正确显示。有什么想法吗?您是否在上述代码中看到任何错误?
注意:
G_EMPLOYEE_NUMBER
是报告中的分组名称。
我是这些技术的新手。
xml中连续的示例数据:
<Row>
<Employee_Number>5001419</Employee_Number>
<Name>David Fernando</Name>
<Question>I'm able to use internal systems to find information on policies/people/projects</Question>
<Answer>b. Agree</Answer>
</Row>
答案 0 :(得分:0)
sample RTF示例数据:<DATA_DS><P_LDG></P_LDG><P_UDT>ANNUAL_PERFORMANCE_GRID</P_UDT><G_1><BASE_USER_TABLE_NAME>ANNUAL_PERFORMANCE_GRID</BASE_USER_TABLE_NAME<BASE_USER_COLUMN_NAME>LE_MIN</BASE_USER_COLUMN_NAME><ROW_LOW_RANGE_OR_NAME>INR.ALL.9581.ALL.ALL.ALL.ALL.1.1.ALL.ALL</ROW_LOW_RANGE_OR_NAME><VALUE>0.00</VALUE><LDG>IN Legislative Data Group</LDG><VALUE_ORIG>0.00</VALUE_ORIG><ROWNAME>IN Legislative Data Group|INR.ALL.9581.ALL.ALL.ALL.ALL.1.1.ALL.ALL</ROWNAME></G_1><G_1><BASE_USER_TABLE_NAME>ANNUAL_PERFORMANCE_GRID</BASE_USER_TABLE_NAME><BASE_USER_COLUMN_NAME>TARGET_TYPE</BASE_USER_COLUMN_NAME><ROW_LOW_RANGE_OR_NAME>INR.ALL.9581.ALL.ALL.ALL.ALL.1.1.ALL.ALL</ROW_LOW_RANGE_OR_NAME><VALUE>1</VALUE><LDG>IN Legislative Data Group</LDG><VALUE_ORIG>Percentage Base</VALUE_ORIG><ROWNAME>IN Legislative Data Group|INR.ALL.9581.ALL.ALL.ALL.ALL.1.1.ALL.ALL</ROWNAME></G_1><G_1><BASE_USER_TABLE_NAME>ANNUAL_PERFORMANCE_GRID</BASE_USER_TABLE_NAME><BASE_USER_COLUMN_NAME>PT_DEDUCTION</BASE_USER_COLUMN_NAME><ROW_LOW_RANGE_OR_NAME>INR.ALL.9581.ALL.ALL.ALL.ALL.1.1.ALL.ALL</ROW_LOW_RANGE_OR_NAME><VALUE>1</VALUE><LDG>IN Legislative Data Group</LDG><VALUE_ORIG>Y</VALUE_ORIG><ROWNAME>IN Legislative Data Group|INR.ALL.9581.ALL.ALL.ALL.ALL.1.1.ALL.ALL</ROWNAME></G_1></DATA_DS>