Jasper Reports - Распечатайте, когда группа изменится

Еще одна вещь, которая не была упомянута: поскольку самотипы не являются частью иерархии требуемого класса, их можно исключить из сопоставления с образцом, особенно если вы исчерпывающе сопоставляете запечатанную иерархию. Это удобно, когда вы хотите смоделировать ортогональное поведение, например:

sealed trait Person
trait Student extends Person
trait Teacher extends Person
trait Adult { this : Person => } // orthogonal to its condition

val p : Person = new Student {}
p match {
  case s : Student => println("a student")
  case t : Teacher => println("a teacher")
} // that's it we're exhaustive
7
задан MKB 18 April 2015 в 05:37
поделиться

3 ответа

Я никогда не использовал функцию «печатать при изменении группы», но, попробовав ее сейчас в новом отчете, я понимаю, что вы имеете в виду - она ​​печатает для каждой подробной записи, даже если группа не меняется.

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

2
ответ дан 6 December 2019 в 08:45
поделиться

У меня возникла проблема с той же проблемой. Вот работа, которую я придумал:

JasperReports имеет несколько автоматически сгенерированных переменных, которые могут помочь вам достичь желаемого. Для каждой группы, которую вы создаете, есть счетчик, который отслеживает количество элементов в вашей текущей группе:

yourGroupName_COUNT

В вашем printWhenExpression просто добавьте выражение вроде следующего, чтобы печатать текстовое поле только при разрыве вашей группы:

$V{yourGroupName_COUNT}==1

-Benjamin

13
ответ дан 6 December 2019 в 08:45
поделиться

Я не думаю, что этот атрибут делает то, что вы думаете. Он должен использоваться вместе с isPrintRepeatedValues ​​= "false" и работает следующим образом:

"если повторяющееся значение, которое вы подавили, охватывает несколько групп, вы можете заставить его снова появляться в начале определенной группы отчетов, если вы укажете имя этой конкретной группы в атрибуте printWhenGroupChanges. " Окончательное руководство стр. 116

6
ответ дан 6 December 2019 в 08:45
поделиться
Другие вопросы по тегам:

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