Как создать разные нижние колонтитулы в зависимости от условия? - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть требование показывать разные нижние колонтитулы в зависимости от условия.

Мой нижний колонтитул состоит из множества статических меток, и теоретически я могу определить «Печать при выражении» для каждой из меток.Но это неудобно.

Q: Можно ли выбрать другой нижний колонтитул в зависимости от условия?

Если нет, то как еще я могу справиться с такой ситуацией без необходимости указывать условие во многих местах?

1 Ответ

0 голосов
/ 18 февраля 2019

xsd допускает отсутствие или максимум один pageFooter тег с максимумом один диапазон.

, но

Это типичный пример, где вы можете использовать компонент кадра , чтобы сгруппировать данные и решить, следует ли их отображать.

Пример отображение разных фреймов с текстовыми полями в зависимости от номера страницы

<pageFooter>
    <band height="60" splitType="Stretch">
        <frame>
            <reportElement x="0" y="0" width="540" height="60" uuid="d0198e94-8325-4909-9804-a8d393600ec5">
                <printWhenExpression><![CDATA[$V{PAGE_NUMBER}%2!=0]]></printWhenExpression>
            </reportElement>
            <textField>
                <reportElement x="0" y="0" width="100" height="30" uuid="379e2ac0-63ea-4493-bd38-1b7ca7b35d8c"/>
                <textFieldExpression><![CDATA["Text Field 1"]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement x="0" y="30" width="100" height="30" uuid="6598ba79-08b6-4997-953d-70b64f159e3b"/>
                <textFieldExpression><![CDATA["Text Field 2"]]></textFieldExpression>
            </textField>
        </frame>
        <frame>
            <reportElement x="0" y="0" width="540" height="60" uuid="d0198e94-8325-4909-9804-a8d393600ec5">
                <printWhenExpression><![CDATA[$V{PAGE_NUMBER}%2==0]]></printWhenExpression>
            </reportElement>
            <textField>
                <reportElement x="0" y="0" width="100" height="30" uuid="379e2ac0-63ea-4493-bd38-1b7ca7b35d8c"/>
                <textFieldExpression><![CDATA["Text Field 3"]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement x="0" y="30" width="100" height="30" uuid="6598ba79-08b6-4997-953d-70b64f159e3b"/>
                <textFieldExpression><![CDATA["Text Field 4"]]></textFieldExpression>
            </textField>
        </frame>
    </band>
</pageFooter>

добавление разного текста разных pageFooter в разные фреймы, затем установка printWhenExpression на фреймкомпонент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...