iReport - печатать, когда выражение контролирует весь макет или нет - PullRequest
0 голосов
/ 04 марта 2010

Мне нужно срочно распечатать макет, основанный на одном состоянии. Допустим, у меня есть макет этикетки с 50 полями, который работает. Но перед тем, как напечатать это, у меня есть условие о том, что, если Количество пакетов равно 0, не печатать вообще. Просто напечатайте сообщение об ошибке, в котором говорится, что нет пакетов и нет этикеток. Это означает, что при выполнении этих конкретных действий, если количество пакетов равно 0, тогда должно быть напечатано только сообщение, а не общий макет печати с 50 полями.

Во всяком случае, я прошел много документации. Я нашел только печать, когда выражение используется на уровне поля. если это так, мне нужно добавить эту проверку для всех 50 полей:).

Пожалуйста, уточните или предложите.

С уважением, ~ Мадху

Ответы [ 2 ]

0 голосов
/ 08 ноября 2011
  • Программа может запросить с SELECT COUNT(*) перед запуском отчета. Если счетчик равен нулю, то программа показывает сообщение; в противном случае будет показан отчет.

  • Получить список страниц из JasperPrint. Размер списка - это количество страниц.

    JasperPrint print;
    print = JasperFillManager.fillReport(filename, map, connection);
    List list = print.getPages();
    System.out.println(list.size());
    
0 голосов
/ 03 марта 2011

Вы имели в виду, что не хотите отображать страницу отчета, если нет данных? Если в этом случае вам просто нужно перейти к отчету по свойствам, то в группе «больше» вы меняете «когда нет данных» на «Нет страницы».

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