Вопрос по jasper-reports – Растянуть строку с переполнением данных, имея несколько строк в одной полосе

19

Мои требования обязывают меня иметь несколько строк в одной & quot; Подробности & quot; группа.

Прямо сейчас у меня есть статическое текстовое поле (которое выделено цветом) в крайнем левом столбце и три поля текстовых данных рядом с ним.

В моем отчете я хочу, чтобы статическая текстовая полоса вместе с тремя полосами растягивалась по высоте, когда данные в одной из этих трех полос переполняются, а следующая строка «правильно» отображается под растянутым рядом. «Правильно» Я имею в виду, что элементы следующей строки должны иметь свою "вершину" значения одинаковы и отображаются в одной и той же «строке».

Я пытался установить & quot; Растянуть с переполнением & quot; пометить как «истинно» и & quot; Положение & quot; «плавать» но проблема в том, что данные следующей строки расположены неправильно.

Все наоборот: вы не можете ответить в течение первых 8 часов. Попробуйте сейчас. mdahlman
У меня есть ответ, но я не могу опубликовать его в этом поле для комментариев, ограничение по количеству символов. Я также не могу ответить, потому что я нашел ответ через 8 часов после того, как задал этот вопрос, и StackOverflow не позволяет мне. Кто-нибудь задаст похожий вопрос, и я смогу на него ответить. Rachcha

Ваш Ответ

3   ответа
28

и ряда вместе.

Remove all the static text labels. Use text fields instead, with the text in quotes. They can be grouped with other text fields and data fields. Put all the data fields after the quoted text field in the same group as the quoted text field. Now, do the same with all the rows that you want to display. Separate group for individual row.

Выберите все элементы в группе или все элементы во всех группах и сделайте это:

Set "Position" to "Float" Set "Stretch Type" to "Relative to the tallest object" Check "Print when detail overflows" checkbox. Check the "Stretch with overflow" checkbox.

Это все, что мы можем сделать, чтобы сделать вещи "растянутыми" все вместе.

Теперь группе придется динамически растягиваться с этими растянутыми деталями. Просто перейдите к свойствам группы, установите для типа Split значение «По умолчанию». и раскол позволил истине. Это помогло мне.

У меня та же проблема, что я упоминал здесьlink, В моем случае я хочу по-разному оформить этикетки, например, смелые ярлыки. Если я добавлю статический текст вместе с полем, подобным & quot; Имя: & quot; + F {name}, то как мне отформатировать метку отдельно? Кроме того, не могли бы вы показать нам несколько скриншотов, как вы на самом деле сгруппировали элементы? Спасибо
@ Али, извини, чувак, у меня сейчас нет доступа к Джасперу, но я верю, что это можно сделать через окно "Свойства". Это должно быть очень легко, так как даже в моем случае здесь я сделал ярлыки жирными. Я не упоминал об этом в этих постах, так как это было слишком просто и очевидно. Rachcha
4

если кто-то подходит к этой проблеме и ответы выше не работают. Я предлагаю проверить корневой элемент вашего xml. Если он имеет следующий атрибут, удалите его:

printOrder="Horizontal"

Тогда выше ответы должны работать.

Надеюсь, я сэкономлю кому-нибудь день на поиск того же материала.

3

как вы советовали, не сработало. Мне пришлось немного изменить ваше решение - я сделал"frame" instead of grouping objectsи поместите ранее сгруппированные элементы в этом кадре. Я поставилpositionType="Float" and stretchType="No stretch" in that frameи установитьstretchType="RelativeToTallestObject" to its child items - тогда все это работает.

Спасибо за ответ. Если вы добавите свою версию JasperServer и другие важные детали, это будет лучше для всех здесь. Rachcha
Конечно: Версия продукта: Jaspersoft iReport Designer 5.5.0; Java: 1,7,0; Java HotSpot (TM) 64-битный сервер ВМ 21.0-b17; Система: Windows 7 вер. 6.1 работает на amd64; CP1250; pl_PL (ireport); Я думаю, это все ...

Похожие вопросы