Настройка формата файла отчёта XML в Dream Report

Дополнительно к форматам файлов отчётов PDF, XML, CSV и Web (HTML5) в Dream Report версии 5.0 появился новый формат файла отчёта – XML. При использовании файла в формате XML пользователь сначала настраивает отчёт и использует стандартные объекты отчёта – единичный объект, объект выражение, таблицы, объекты дата/время и другие. Свойства форматирования отчёта не так важны (цвет, выравнивание, шрифты и т.д.) так как эти свойства не передаются в файл формата XML. Проверить корректность работы отчёта можно использовав формат файла отчёта PDF и, когда это сделано, можно приступать к настройке формата файла отчёта XML:

  1. В студии Dream Report необходимо дважды нажать мышкой на имя отчёта и открыть настройки отчёта, а далее выбрать вкладку Формат файла отчёта:

2. Далее нужно выбрать формат отчёта “XML формат” и нажать на кнопку “Настройки”.

3. Откроется окно “Настройка отчёта в формате XML” с окном документа XML.

4.Пользователь может также:

  • Создать документ формата XML, напечатать соответствующий код XML и перенести доступные объекты из отчёта в файл XML. Это потребует знание основ XML; или
  • Сделать импорт шаблона XML (нажать на кнопку “LУстановить шаблон XML”) и добавить динамическое содержимое отчёта, а потом перенести доступные объекты из отчёта.

5.В примере, который рассматривается ниже, загружен пример шаблона XML в отчёт “GW Monthly Operating Report”. Шаблон уже включает в себя данные – например,                       <LAB_RESULT_ID>14121B-1B</LAB_RESULT_ID> - поэтому нам нужно просто заменить данные динамическими объектами из отчёта.

6.Необходимо просто заменить соответствующий текст нужными объектами отчёта методом «drug and drop», из списка объектов, который представлен слева:


Табличные данные

Добавление данных из таблиц в документ XML потребует сделать некоторые дополнительные действия.  Вернёмся к отчёту из примера, который представлен выше:

  1. Необходимо убедиться в том, что в настройках таблицы задано Имя таблицы (на вкладке настройки таблицы «Внешний вид»). Если у таблицы не будет названия, то она не будет доступна для выбора как объект отчёта в списке объектов (это справедливо и для настройки файла формата Excel).

2. Нужно перенести мышкой таблицу в окно XML – оно будет отображено в формате XML как [tblstep#Blanton##]:

3. Далее, нужно перенести колонки таблицы и поместить их между символами ## (как это показано на изображении выше). В окне XML это будет отображено как:

[tblstep#Blanton#Date="[col#1:Date]" Residual="[col#2:Residual]" Flow_Rate="[col#3:Flow_Rate]"#]

4. Для корректного отображения файла XML в редакторе XML файлов, для таблицы необходимо использовать следующий (выделенный) синтаксис– первая линия всегда должна быть ф формате XML:

<?xml version="1.0" encoding="UTF-8"?>

<Table name="Blanton">

<HistoryResult name="History">[tblstep#Blanton#<History Date="[col#1:Date]" Residual="[col#2:Residual]" Flow_Rate="[col#3:Flow_Rate]" />#]

</HistoryResult>

</Table>


5. Дополнительный код XML может быть добавлен в окно XML с включёнными объектами отчёта.



Проверка генерации отчёта в формате XML

Для проверки работы можно использовать Панель управления функционированием (Dream Report Runtime Management Console (RMC)) или Динамический генератор отчётов (Dynamic Report Generator (DRG)), выбрать отчёт, выбрать опцию “XML”, и затем сгенерировать отчёт:


Код файла отчёта XML нашего примера представлен ниже, обратите внимание, что полученные табличные данные вставляются в документ XML:

<?xml version="1.0" encoding="UTF-8"?>

<Table name="Blanton">

<HistoryResult name="History">

<History Date="04/01/19 12:00:00 AM" Residual="32.63" Flow_Rate="314" />

<History Date="04/02/19 12:00:00 AM" Residual="40.67" Flow_Rate="277" />

<History Date="04/03/19 12:00:00 AM" Residual="46.04" Flow_Rate="324" />

<History Date="04/04/19 12:00:00 AM" Residual="46.00" Flow_Rate="360" />

...

<History Date="04/27/19 12:00:00 AM" Residual="39.38" Flow_Rate="277" />

<History Date="04/28/19 12:00:00 AM" Residual="33.75" Flow_Rate="365" />

<History Date="04/29/19 12:00:00 AM" Residual="39.42" Flow_Rate="277" />

<History Date="04/30/19 12:00:00 AM" Residual="33.75" Flow_Rate="365" />

</HistoryResult>

</Table>