4.4. Форматы значений полей

Для любого поля, выводимого отчётом, можно задать форматирование на вкладке Parameters and Formats редактора отчёта. Рассмотрим форму добавления формата:

report formatter
Рисунок 56. Форма добавления формата значений полей
  • Value name – имя поля отчёта с префиксом полосы, например Book.year.

  • Format string – формат поля. Для числовых значений формат задаётся по правилам java.text.DecimalFormat, для дат – java.text.SimpleDateFormat.

  • Флажок Groovy script – позволяет указать скрипт Groovy для форматирования параметра. С помощью алиаса value в скрипт передаётся текущее значение параметра, которое может быть отформатировано или преобразовано в нужный формат. Скрипт Groovy должен возвращать новое значение в виде строки.

Форматы позволяют вставлять в документ изображения и HTML-блоки.

  • Для вставки изображения значение поля должно быть строкой URL для доступа к нему, а в формате значения строка форматирования должна иметь вид: ${image:<Width>x<Height>}, например ${image:200x300}.

    Для изображений в формате FileDescriptor можно использовать формат ${imageFileId:WxH}, который принимает как FileDescriptor id, так и ссылку на экземпляр самого FileDecriptor.

  • Для вставки HTML-блока необходимо в поле возвращать HTML-разметку, а в формате значения выбрать ${html} в качестве строки форматирования. В выходном значении тэги верхнего уровня до <body> включительно могут быть опущены. При необходимости произойдет автоматическое дополнение недостающих тегов верхнего уровня. Кодировка всех блоков UTF-8. CSS и атрибут style не поддерживаются.

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