Урок 6. Отчет с условным выделением

 

В отчете с условным выделением выделяются данные, которые удовлетворяют

заданному условию.

Предположим, что нужно выделить фамилии и оклад тех сотрудников, у которых

оклад больше и меньше заданного.

Условное выделение задается с помощью пакетной процедуры SRW.SET_ATTR в

триггере форматирования поля.

Использование этой процедуры показано в библиотеке LIB_REP -

процедура HI_CON обеспечивает выделение цветом и фонтом по заданному условию,

процедура HI_CON1  в дополнение к предыдущему выделяет поле прямоугольной

черной рамкой.

Для использования процедур библиотеки в отчете, необходимо библиотеку к

отчету присоединить - узел Attached Libraries в Навигаторе, добавить («+»),

выбрать библиотеку в файловой системе и нажать кнопку «Attached», при этом путь к  библиотеке не удалять.

 

Из макета для поля F_FIO  правой кнопкой мыши вызовите PL/SQL Editor

для  создания триггера форматирования и отредактируйте предложенный шаблон.

 

 

Для поля F_OKLAD создайте триггер форматирования аналогично, но используйте процедуру HI_CON1.

 

 

Вид отчета после запуска:

 

 

 

 

Урок 7.  Отчет  с  параметрами. 

               Списки  значений  для   параметров.

 

Создайте простой отчет с одним запросом

При использовании в запросе параметров подстановки Oracle Reports

автоматически создает для них параметры.

Созданные параметры в окне Объектного навигатора:

В таблице атрибутов  параметра можно указать, что для параметра должен

выводиться список значений в форме параметров.

Определение списка значений для параметра P_Dolg:

Определение списка значений для параметра P_Otdel:

 

Для создания формы параметров используйте Tools->Parameter Form Builder.

Измените заголовок, исключите системные параметры, по своему вкусу

выберите шрифт и цвет для названия формы и заголовков параметров.

 

 

 

 

 

   Урок 8. Письмо по форме

 

  Отчеты в стиле письма по форме содержат значения из базы данных, помещенные в статичный текст. Это может быть текст, созданный Oracle Reports, текст, созданный вами, или текст, импортированный из файла.

  Макет отчета в стиле письма поставляется с Oracle Reports(Form Letter).

Поля в статичном тексте являются скрытыми и выводятся в отчете, только если сделать на них ссылку. Ссылка на поле устанавливается с помощью амперсанда(&). Ссылки на поля могут встречаться несколько раз в одном статичном тексте.

Oracle Reports печатает одну запись, т.е. одно письмо на одной странице.

 

Создадим отчет с запросом

 

    Select fio from sotr order by fio

 

и выбором стиля Form Letter.

 

Рамку в макете раздвинем и добавим необходиый статичный текст.

 

Вид макета после изменений:

 

 

Текст письма можно было задать непосредственно в Report Wizard:

 

 

Вид одной страницы формы:

 

 

 

Урок 9.  Простой вывод почтовых адресов

 

Отчет в стиле почтового адреса содержит данные, выводимые в формате, пригодном для использования их как почтовые адреса на конвертах. Адреса могут печататься в один или несколько столбцов и начинаться с любой позиции. Можно печатать адреса вниз по странице, поперек страницы, поперек страницы с продолжением вниз, или вниз, а затем поперек.

Oracle Reports имеет макет почтового адреса по умолчанию

              Style:Mailing Label.

Поля в макете размещены так, что каждое поле находится точно перед предшествующим полем. Метки полей не печатаются.

 

Создайте модель данных на основе запроса:

Select fio from sotr order by fio

Создайте макет по умолчанию, выбрав стиль Mailing Label.

 

Макет отчета:

 

 

Изменим направление печати в окне свойств повторяющейся рамки:

 

 

 

Результат отчета:

 

 

 

 

 

Урок 10. Пример использования триггеров отчетов

       

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

Таблица RUNREPORT состоит из трех столбцов –

    DATE_RUN    date,

    USER_RUN    varchar2(10),

    COMMENTS    varchar2(80)

 

В том же триггере зададим внесение в таблицу строки с текущей датой, идентификатором пользователя и комментарием.

 

Используйте триггер Before Report.

 

Текст функции:

 

Попробуйте запустить отчет несколько раз. Когда вы запускаете отчет второй раз, таблица уже существует, и Reports инициирует исключение.

 

 

Урок 11. Запуск отчета в символьном режиме

 

 

Для того, чтобы запустить отчет в символьном режиме, необходимо внести в его определение следующие изменения:

 

В таблице свойств отчета в разделе Character Mode включите

Design In Character Units:

 

 

Для параметра Mode (системные параметры) изменить значение свойства Initial Value на Character.

 

 

Вывод отчета направить в файл:

 

 

 

Выберите макет по умолчанию еще раз.

Обратите внимание на разницу в выводе макета в редакторе.

Между полями необходимо задать по меньшей мере 1 интервал. В символьном режиме промежутки измеряются в символах, а не в дюймах.

 

Изображения в символьном режиме не выводятся.

 

Урок 12. Включение в отчет динамической графики

 

Создайте отчет с запросом

  

       SELECT * FROM CITY

 

В поле CITY хранится название города,

в поле PICT – имя файла с видом этого города

На поле PICT правой кнопкой мыши вызовите окно свойств

Property Palette

 

 

Установите свойства Read from File и File Format как показано на картинке:

 

 

Создайте макет отчета и увеличьте размеры поля F_PICT:

 

Вид отчета после запуска: