3.2. Отчёт по экземпляру сущности
Допустим, что мы хотим получить сведения об отдельно взятом издании книги, то есть экземпляре сущности library$BookPublication.
Для этого запустите мастер создания отчётов и на первом этапе укажите детали отчёта:
Затем выберите тип построения отчёта – Report for single entity. Этот тип построения означает, что отчёт будет создаваться по одной сущности.
 
 
  После этого нажмите на кнопку Next и в отобразившемся окне выберите атрибуты сущности BookPublication и связанных с ней сущностей, которые будут включены в отчёт (Publication.Book.Name, Publication.Publisher.Name, Publication.Year и Publication.City.Name). Для этого выделите их в левой колонке и перенесите в правую колонку нажатием на кнопку  или двойным кликом.
 или двойным кликом.
Атрибуты будут отображаться в отчёте в том порядке, в котором они выбраны на этом этапе. Для того чтобы изменить порядок отображения, перемещайте атрибуты при помощи кнопок  /
/ .
.
 
 
  После нажатия на кнопку ОК произойдет переход ко второму этапу – редактированию регионов отчёта.
Отобразившийся экран содержит список именованных регионов – полос шаблона отчёта, в которых будут отображаться данные. Мастер позволяет добавить в шаблон несколько регионов, позволяющих отображать разные наборы данных в виде простого текста.
При необходимости набор атрибутов сущности, загружаемых в регион шаблона отчёта, можно отредактировать, нажав на ссылку со списком атрибутов в описании региона. Также можно добавить новый регион, нажав на кнопку Add simple region.
Если в сущности есть атрибуты-коллекции, появится также кнопка Add tabulated region, позволяющая добавить регион для отображения данных в виде таблицы.
В обоих случаях отобразится окно выбора атрибутов сущности library$BookPublication, позволяющее добавить или удалить атрибуты из набора.
 
 
  На этом этапе посмотрите, как отчёт будет выглядеть с текущим набором данных, нажав на кнопку Run и выбрав экземпляр сущности library$BookPublication.
 
 
  После настройки регионов перейдите к третьему этапу – сохранению отчёта. На этом этапе просмотрите готовый шаблон отчёта, измените название и формат файла вывода, выбрав один из доступных типов.
 
 
  После нажатия на кнопку Save откроется стандартный редактор отчёта, в котором при необходимости произведите более тонкую настройку шаблона и структуры данных. После завершения редактирования нажмите Save and close в редакторе отчёта.
Отчёт будет добавлен в группу отчётов General в браузере отчётов, откуда его можно запустить кнопкой Run.
 
 
  Дополнительно мы можем сделать так, чтобы отчёт о деталях публикации запускался из браузера публикаций. Для этого в XML-дескрипторе bookpublication-browse.xml добавьте к таблице публикаций кнопку Print details для запуска отчёта:
<groupTable id="bookPublicationsTable"
    ...
    <buttonsPanel>
        ...
        <button id="printDetails"
                caption="msg://printDetails"/>После чего в контроллере экрана добавьте к ней действие TablePrintFormAction для запуска отчёта:
@Inject
private Button printDetails;
@Subscribe
private void onInit(InitEvent event) {
    TablePrintFormAction action = new TablePrintFormAction("report", bookPublicationsTable);
    bookPublicationsTable.addAction(action);
    printDetails.setAction(action);
}Наконец, свяжите отчёт с экраном просмотра сущности BookPublication. Откройте отчёт на редактирование, перейдите на вкладку Roles and Screens, выберите экран library$BookPublication.browse из выпадающего списка и добавьте его в таблицу ниже:
 
 
  После этого запустите отчёт по любой публикации, выбирая ее в таблице и нажимая на кнопку Print details.
 
 
  Готовый отчёт выглядит следующим образом:
