报告节点的模板选项卡
创建模板。要定义报告的内容,请在“报告”节点的“模板”选项卡上创建模板。该模板包含数行文本,每一行都指定与报告内容相关的某些信息,并且用一些特殊标记行指出内容行的范围。在每个内容行中,会在将该行发送到报告之前对括在方括号 ([]) 内的 CLEM 表达式求值。模板中某个行的可能范围有三个:
固定。未标记的行被视为固定行。在对固定行包含的所有表达式求值后,只将这些行向报告复制一次。例如,行
这是我的报告,打印在 [@TODAY] 上
将一个行复制到报告中,包含文本和当前日期。
全局(迭代 ALL)。对于输入数据的每条记录,会将包含在特殊标记
#ALL 与 # 之间的行向报告复制一次。CLEM 表达式(括在方括号中)根据每个输出行的当前记录进行求值。例如,行
#ALLFor record [@INDEX], the value of AGE is [AGE]#
将为每个记录包括一行,指出记录号和年龄。
生成所有记录的列表:
#ALL[Age] [Sex] [Cholesterol] [BP]
#
条件(迭代 WHERE)。对于满足指定条件的每条记录,会将包含在特殊标记 #WHERE <condition> 和 # 之间的行向报告复制一次。该条件是指 CLEM 表达式。(在 WHERE 条件中,方括号是可选的。)例如,行
#WHERE [SEX = 'M']Male at record no. [@INDEX] has age [AGE].#
会为每个性别值为 M 的记录向文件写入一行。完整的报告将包含通过将模板应用到输入数据定义的固定行、全局行和条件行。
您可以使用各种类型的输出节点都具备的“输出”选项卡指定用于显示或保存结果的选项。有关更多信息,请参阅输出节点的“输出”选项卡主题。
以 HTML 或 XML 格式输出数据
您可以直接在模板中包括 HTML 或 XML 标记以使用这两种格式中的任意一种编写报告。例如,以下模板生成 HTML 表。
This report is written in HTML.Only records where Age is above 60 are included.
<HTML>
<TABLE border="2">
<TR>
<TD>Age</TD>
<TD>BP</TD>
<TD>Cholesterol</TD>
<TD>Drug</TD>
</TR>
#WHERE Age > 60 <TR>
<TD>[Age]</TD>
<TD>[BP]</TD>
<TD>[Cholesterol]</TD>
<TD>[Drug]</TD>
</TR>
#
</TABLE>
</HTML>