Создание отчета в Oracle Reports Builder

Создадим отчет (документ) для двух таблиц связанных реляционной связью. Для этого будем использовать следующие таблицы: d_dover и d_dover_sp_naimen. Первая таблица представляет собой шапку документа, а вторая - его табличную часть.

Запустим Oracle Reports Builder и сохраним чистый проект документа, как d_dover (тип файла *.rdf).

Для того чтобы отобразить один документ в отчете нужно передать его номер в отчет для этого мы будем использовать User Parameter (пользовательские параметры).

Щелкнем мышью по узлу в Object Navigator по Data Model, выделим пункт User Parameter и нажмем кнопку “+” в Object Navigator, в результате будет создан параметр с именем «p_1», переименуем его в «NDOC».

Теперь нужно построить SQL запросы для получения данных из БД, для этого мы не будем использовать мастер отчетов, а сделаем это вручную. Щелкнем правой кнопки мыши по проекту отчета в Object Navigator и выберем пункт Report Editor, в результате чего появится окно Report Editor.

Нажмем кнопку  для построения модели данных и выполним следующие операции:

1. Построим запрос для шапки документа, для нажмем кнопку   и щелкнем курсором мыши по рабочему полю Report Editor в результате чего должно появится окно для построения запроса.

Введем следующий текст:

 и нажмем кнопку «OK» в результате чего в рабочей области Report Editor появится наш запрос.

 

2. Построим второй запрос для табличной части документа из таблицы d_dover_sp_naimen. Таким же образом как описано выше запустим построитель запросов и введем следующий текст: 

и нажмем кнопку «ОК»

После того как мы построили запросы, перейдем к дизайну самого документа, для этого нажмем кнопку  на панели инструментов Report Editor. В появившейся новой рабочей области мы увидим чистую область для рисования документа.

Перед началом работы нажмите кнопки  и .

На первом этапе нарисуем шапку документа, для этого создадим повторяющийся фрейм в верхней части листа, щелкнем по нему, чтобы он выделился, и нажмем кнопку  и выберем «Нет линии», чтобы рамка фрейма не отображалась. Двойным щелком по фрейму вызовем его свойства, в появившемся окне в свойстве «Source» выберем «G_ndoc1» и закроем данное окно, т.е. запрос для шапки.

Теперь нам нужно расположить поля данных шапки в созданном нами фрейме. Создадим поле данных во фрейме, двойным щелчком по нему вызовим свойства данного поля и в свойстве «Source» выберем «ndoc1», т.е. номер документа. Рамку для поля данных поставим «Нет линии». Теперь нужно создать подпись для этого поля, создадим элемент текст перед полем данных и введем для него подпись «Доверенность №», для элемента «текст» и поля данных поставим размер шрифта 12 (для этого их нужно сначала выделить).

Таким же образом создадим поля данных и подпись для полей: дата выписки, дата действия, Ф.И.О., получатель. Для этого создадим 4 подписи с текстом «Дата выписки:», «Дата действия:», «Получатель:», «Доверенность выдана:», кроме этого 4 поля данных, у которых в поле «Source» установлено «datav», «data_deis», «fio», «naim_org». Необходимо у всех полей данных рамку установить в «Нет линии». В результате проделанных операций мы получим шапку документа.

Ниже шапки документа расположим второй повторяющийся фрейм, для вывода табличной части документа из второго запроса. Двойным щелчком вызовем свойства данного фрейма и укажем свойство «Source» «G_KOD1», а в свойстве «Vertical Elasticity» выберем «Variable».

Так как в табличной части документа на необходимо выводить столбец с нумерацией строк, нам необходимо создать элемент «Summary Column» во втором запросе. Для этого перейдем на вкладку построения модели данных отчета, нажмем кнопку  и щелкнем мышью по второму запросу, в результате появится еще одно поле в запросе.

Двойным щелком вызовем свойство данного поля и установим следующие свойства: «Function» - «Count», «Source» - «KOD1».

Аналогичным образом, как описано выше, разместим поля данных по горизонтали в следующем порядке во втором фрейме со следующими свойствами «Source»: «Номер по порядку» - «CS1», «Наименование» - «NAIMEN», «Количество» - «KOL», «Единица измерения» - «ED_IZM». Установите свойства полей данных рамка в «Нет линии» и сделаем выравнивание каждого поля данных по центру, используя панель инструментов Report Editor (). Теперь необходимо добавить подпись над каждым полем данных в соответствии с его содержанием, сделаем выравнивание текста по центру. В результате у нас получится следующие изображение (см. рис. 1).

Рис. 1.

Теперь нам нужно разделить поля данных по горизонтали линиями, чтобы во фрейме данные отображались не одним столбцом, а четырьмя. Для этого будем использовать элемент «Линия».

Таим же образом, нарисуем еще две линии между полями: «Наименование» и «Единица измерения», «Единица измерения» и «Количество».

На последнем этапе создания документа нам необходимо создать надписи для подписей главного бухгалтера и руководителя предприятия, поочередно создадим элемент «текст» () и добавим в них текст «Главный бухгалтер», «Руководитель предприятия». Для отображения линии, где бухгалтер или руководитель будет расписываться, используйте элемент «Линия».

В результате в режиме дизайна у нас должно получится следующее изображение (см. рис. 2).

Рис.2.

Теперь можно посмотреть, что у нас получается в режиме просмотра, для этого нажмем кнопку , сразу же должно появится окно для ввода параметров.

В данном окне мы должны ввести номер документа, который мы уже раннее создали (т.е. который уже есть в таблице d_dover), после ввода номера документа, нажмем кнопку Enter и получим документ (см. рис. 3).

 

Рисунок 25

Нажмем кнопку  для сохранения нашего документа.

 

 

ПРИЛОЖЕНИЕ 7


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: