想在10次迭代后结束RTF模板BI Publisher的for循环。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了想在10次迭代后结束RTF模板BI Publisher的for循环。相关的知识,希望对你有一定的参考价值。

我想在RTF模板中的for循环迭代10次后结束。谁能指导我一下?

答案

测试数据

<record_set>
<record>
<rownum>1</rownum>
<transaction_id>111</transaction_id>
<amount>200</amount>
</record>
<record>
<rownum>2</rownum>
<transaction_id>222</transaction_id>
<amount>300</amount>
</record>
<record>
<rownum>3</rownum>
<transaction_id>333</transaction_id>
<amount>400</amount>
</record>
<record>
<rownum>4</rownum>
<transaction_id>444</transaction_id>
<amount>200</amount>
</record>
</record_set>

选择1

你可以在if语句中使用一个变量。

<?for-each:record_set?>
<?xdoxslt:set_variable($_XDOCTX,'row_number',1)?>
<?for-each:record?><?if:xdoxslt:get_variable($_XDOCTX,'row_number')<=2?>
Transaction ID: <?transaction_id?>
Row Number: <?xdoxslt:get_variable($_XDOCTX,'row_number')?>
<?xdoxslt:set_variable($_XDOCTX,'row_number', xdoxslt:get_variable($_XDOCTX,'row_number')+1)?>
Amount:<?amount?>
<?end if?>
<?end for each?> 
<?end for each?>

选项2

您可以添加一个 rownum 到你的select语句和XML中,然后在for-each条件中使用。

select rownum, transaction_id, amount from your_table

<?for-each:record_set?>
<?for-each:record[rownum<=2]?>
Transaction ID: <?transaction_id?>
Row Number: <?rownum?>
Amount:<?amount?>
<?end for each?> 
<?end for each?>

以上是关于想在10次迭代后结束RTF模板BI Publisher的for循环。的主要内容,如果未能解决你的问题,请参考以下文章

我想使用 rtf 模板在 BI Publisher Report 中添加条形码,可以吗?

在 RTF 模板的分页符上显示不同的页面(BI 发布者)

如何使用 BI Publisher Desktop 在 RTF 模板中将数字格式化为字母?

如何在模板中迭代 python-django 循环 N 次?

基于 RTF 中文本长度的 BI Publisher 条件字段隐藏

如何对 RTF 中的不同值求和(BI Publisher)