0

レポートを生成するために xsl-fo と xml を使用しています。テーブルから値を取得して pdf に配置するクエリがあります。簡単です。親子関係に基づいてクエリを実行しています。たとえば、pdf には 2 つのセクションが表示されます。役職とその責任です。最初は、これは 1 対 1 の関係でした。これで、1 対多の関係になりました。したがって、役職、責任A、責任2などを含むpdfに表示する方法が必要です。責任セクションには Mod_Num (1,2,3...) があります。そのため、特定の役職のすべての責任を取得するために xsl-fo をループする方法があるかどうか疑問に思っていました。クエリでwhere句を使用して正しい情報を引き出すことを考えていました

Where Mod_Num = 'xsl-counter'

そんな感じ

私の例が大ざっぱではないことを願っています。ただし、どんな助けでも大歓迎です。ありがとう

4

1 に答える 1

0

XSL-FOだけでそれができるかどうかはわかりません。FTL (moqui や ofbiz など) も使用している場合は、次のようにすることができます。

<#assign x = 0/> を使用して変数を設定できます。

次に、<#list Responsibility as r> を使用します。

<#list> では、<#assign x = x+1/> を実行できます。

<#list> のすぐ内側で、<#if> を使用できます。次のようなものです:

<#assign x = 0/>
<#list responsibilities as r>
    <#if x == 0>
        <fo:block>Responsibility 1: ${r.text}</fo:block>
    <#elseif x == 1>
        <fo:block>Responsibility 1: ${r.text}</fo:block>
    </#if>
    <#assign x = x+1/>
</#list>

これはおそらくあなたがやっていることとまったく同じではないことはわかっていますが、詳細を入手しなければ、知るのは困難です. うまくいけば、それはあなたを助けるでしょう.

于 2014-03-20T01:09:08.713 に答える