BI パブリッシャー用の RTF テンプレートの作成中に問題が発生しました。RTF テンプレートのヘッダー (MS Word ヘッダーではなく、start:bodyタグの上にあるものとして識別されるヘッダー) に表を表示しています。そのテーブルには 3 つの行があります。これらの行の 1 つを最初のページにのみ表示し、他のページには表示しない必要があります。
ページ番号を照会する方法が見つかりませんでした。そこで、次のようにフラグを使用しました (ここで、サフィックス _f は RTF フィールドを示します)。私のRTFファイルは次のようになります。
+---------------------------------------------------------------------------------+
¦ init_f ¦ Row to be shown on all the pages ¦ ¦
¦--------+-----------------------------------------+------------------------------¦
¦ if_f ¦ Row to be shown on the first page only. ¦ end_if_f change_variable_f ¦
+---------------------------------------------------------------------------------+
<?start:body?>
other stuff
<?end body?>
どこ、
init_f
<?if: (xdoxslt:get_variable($_XDOCTX,'FLAG')!='NONFIRST')?><?xdoxslt:set_variable($_XDOCTX,'FLAG','FIRST')?><?end if?>
if_f
<?if: (xdoxslt:get_variable($_XDOCTX,'FLAG'))='FIRST'?>
end_if_f
<?end if?>
change_variable_f
<?xdoxslt:set_variable($_XDOCTX,'FLAG','NONFIRST')?>
しかし、すべてのページのすべての行が表示されます。変数「FLAG」の値が異なるページ間で保持されていないようです。私には、ヘッダーが一度生成され、すべてのページで同じヘッダーが使用されているようです。解決策は何ですか?