Процесс создания отчета состоит из этапов: создание Шаблона определения данных (Data Definition), создание RTF шаблона представления данных конечному пользователю, создание Параллельного (concurrent) приложения, добавление созданного приложения в группу запросов пользователя, выполнение отчета с параметрами.
Создадим отчет, выводящий число, число+1, число*2. Диапазон будем задавать параметрами.
Шаблон представляет собой XML-файл следующей структуры:
В нашем случае:
2. Cоздание RTF шаблона.
Используя надстройку Oracle BI Publisher, загрузим наш Data Definition в текущий документ. Нарисуем таблицу, положим в ячейки XSL-код:
Тег for-each означает, что строки будут создаваться для всех значений в выходном XML-файле.
3. Создание concurrnt - приложения
Внимание: Краткое имя должно соответствовать имени Data Definition!
Нажав на кнопку параметров, указываем 2 параметра: a, b (формат 6/Number).
4. Добавление созданного приложения в группу запросов пользователя.
С правами системного администратора: Защита - Полномочия - Запрос.
Добавляем созданное приложение в группу запросов, связанную с выбранными полномочиями.
5. Выполнение отчета с параметрами
Вид - Запросы - Отправить новый запрос - Отдельный запрос
Создадим отчет, выводящий число, число+1, число*2. Диапазон будем задавать параметрами.
with a1 as ( select level col1, (level + 1) colAdd, (level * 2) colx2 from dual connect by level < 10 ) select * from a1 where col1 between :a and :b1. Создание Data Definition шаблона.
Шаблон представляет собой XML-файл следующей структуры:
В нашем случае:
<?xml version="1.0" encoding="UTF-8"?> <datatemplate description="Concurrent test template 1" name="concurrentTest1"> <properties> <property name="debug_mode" value="on"> </property></properties> <parameters> <parameter datatype="number" defaultvalue="" name="errbuf"> <parameter datatype="number" defaultvalue="" name="retcode"> <parameter datatype="number" defaultvalue="" name="a"> <parameter datatype="number" defaultvalue="" name="b"> </parameter></parameter></parameter></parameter></parameters> <dataquery> <sqlstatement name="Q1"> <![CDATA[ with a1 as ( select level col1, (level + 1) colAdd, (level * 2) colx2 from dual connect by level < 10 ) select * from a1 where col1 between :a and :b]]> </sqlstatement> </dataquery> <datastructure> <group name="Group1" source="Q1"> <element name="VALUE" value="col1"> <element name="VALUE_PLUS_1" value="colAdd"> <element name="VALUE_x2" value="colx2"> </element></element></element></group> </datastructure> </datatemplate>
2. Cоздание RTF шаблона.
Используя надстройку Oracle BI Publisher, загрузим наш Data Definition в текущий документ. Нарисуем таблицу, положим в ячейки XSL-код:
<?for-each: //GROUP1?>
<?VALUE?>
|
<?VALUE_PLUS_1?>
|
<?VALUE_X2?>
<?end for-each?>
|
3. Создание concurrnt - приложения
Внимание: Краткое имя должно соответствовать имени Data Definition!
Нажав на кнопку параметров, указываем 2 параметра: a, b (формат 6/Number).
4. Добавление созданного приложения в группу запросов пользователя.
С правами системного администратора: Защита - Полномочия - Запрос.
Добавляем созданное приложение в группу запросов, связанную с выбранными полномочиями.
5. Выполнение отчета с параметрами
Вид - Запросы - Отправить новый запрос - Отдельный запрос
Комментариев нет :
Отправить комментарий