Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИОСУ.doc
Скачиваний:
33
Добавлен:
19.03.2015
Размер:
14.55 Mб
Скачать

52. Разработка отчетов с помощью средства Rave Reports.

Для запуска среды Rave, на форму необходимо установить компонентTRaveProjectили выбрать из главного менюDelphiTools\RaveDesigner. Главное рабочее окно состоит из раздеов:

1. Основной раздел PageDesigner.

2. Редактор событий EventEditor.

3. Свойства property.

4. Дерево проекта PrjectTree.

5. Панель инструментов ToolbarPalet.

6. Строка состояния.

RaveDesignerможно настроить на пользователя с разным уровнем опыта. Для этого в главном менюEdit/Preferencesв разделе окружение (Environment) выбрать уровень пользователя: новичок (beginner), пользователь среднего уровня (Intermediate) и опытный пользователь (advanced).

ReportLibrary– библиотека отчетов, которая содержит все отчеты, отчет может содержать одну или несколько страниц, на которых расположены компоненты. Так же вRaveможно управлять шаблонами в разделеGlobalPageCatalog. Шаблон может содержать несколько компонентов: заголовки, полное определение страницы и т.д.DataViewDictionary– представляются данные и объекты, связанные с данными для отчетов.

Панель инструментов и палитра панели инструментов. По умолчанию присутствуют палитры компонентовStandard,Drawing,Report,Barcode. Причем можно добавлять другие элементы. Все панели могут изменять компоненты, которые будут входить в проект. Команды, доступные на панели редактирования:

- ProjectToolbar– панель проекта, создает новый отчет, страницу и компонент объекта. Данная панель позволяет создать новый проект, сохранить/загрузить уже существующий.

- AlignmentToolbar– панель выравнивания, содержит инструменты для выравнивания и позиционирования компонентов на странице. Компонент, выбранный первым, используется для основного ориентира при выравнивании

- FontsToolbar– панель шрифтов, для изменения атрибутов шрифтов.

- FillsToolbar– панель заливок.

- LinesToolbar– панель линий, которая позволяет изменять стиль, толщину, обрамление линий.

- ZoomToolbar– панель масштабирования.

Компонент RvProject.Файл, который будет хранить отчет - *.rav. Для формирования отчета на форме размещается компонентRvProjectи присваивается его свойствуProjectFileимя, а для кнопки, вызывающей отчет, необходимо написать обработчик событияRvProject1.Execute. Для управления важными параметрами отчета и предварительного просмотра можно подключитьRvNDRWriterилиRvSystemк свойствуEngineкомпонентаRvProject.RvNDRWriterгенерирует отчет в форматеNDR– внутренний формат, который можно воспроизвести во многих других форматах.RvSystemкомбинируетRvNDRWriterсо стандартным интерфейсом печати. Встроенный вRaveмеханизм преобразования позволяет конвертировать его в другие форматы представления, это делается при обращении к методуExecute, когда в диалоговом окнеOutputOptionsвыбирается один из форматов спискаFormat. На страницеRaveпалитры компонентов присутствуют:RvRenderPreview– используется для отображенияNDRфайла на экране, если нет надобности использовать средства просмотра, можно использоватьRvSystem.RvRenderPrinter– передачаNDRфайла на печать.

Подключение к данным.Компоненты подключения к данным обеспечивают связь между данными, содержащимися в приложении и компонентомDirectDataView. Для подключения используются компоненты:

- RvCustomConnection– обеспечивает передачу данных вRaveотчет при помощи программных событий. Используется для передачи данных в отчет, никак не связанных с БД.

- RvDataSetConnection– подключает компонентуDirectDataViewлюбой компонент, который является производным от классаTDataSet.

Свойство FieldsAliesListможет модифицировать имена полей набора данных.

- RvTableConnection

- RvQueryConnection

Подключаются к компонентам TableиQuery, обеспечивая механизм сортировки.

Компонент RavEDesignerявляется владельцем всех компонентов, входящих в отчет. Чтобы видеть значение в иерархии проектов необходимо открытьRaveProjectи посмотреть панель свойств. К базовым компонентам относятся 7 на странице стандартной палитры инструментов:Text;Memo;Section;FontMaster;Metafile;PageNumInit;Bitmap.

Sectionиспользуется для группировки компонентов подобно компонентуPanel. BitmapиMetafileотносятся к графическим компонентам и позволяют добавлять графические изображения в отчет.FontMasterпозволяет определить стандартный шрифт для различных частей отчета.

PageNumIntпозволяет производить нумерацию страниц.

Объекты доступа к данным. КомандаNewDataObjectповоляет произвести возможные подключения к данным, причем настройка свойствDataBaseConnectionпозволит подключиться к БД,DirectDataViewпозволяет извлекать данные из приложенияDelphi.DriverDataViewопределяет запрос на подключение к БД.SimpleSecurityControllerпозволяет реализовать механизм защиты, базирующийся на списках пользователей.DataLookUpSecurityсверяет имя пользователя и пароль с записями в БД. В самой простой форме компонентRegionсоответствует всей странице отчета, например, при создании в отчете списка. Но, изменяя размеры компонент и место положения, можно разместить несколько таких компонентов, которые создадут определенный дизайн отчета. КомпонентBands, как правило, располагается внутриRegion. Существует два типа полос:

- DataBand– отображает информацию изDataViewи содержит в себе несколько компонентовDataText.

- Band- для отображения заголовков и завершения в рамках региона.

Существует еще несколько типов заголовков Body. Выбор типа заголовка осуществляется с помощьюBondStyle. Для управления компонентомBandиспользуется редактор стиля полос, который позволяет выбрать возможности выбранного компонентаBand.

Компоненты, связанные с данными.ВнутриDataBandвозможна реализация нескольких компонентов, связанных с данными (DataText). Для настройки свойстваDataFieldsиспользуется открывающийся список, если в рамках одного компонентаDataTextтребуется отобразить значение только одного текстового поля. Но, используя редакторDataTextEditor, можно скомбинировать значения из нескольких полей, т.е. редактор позволяет произвести конкатенацию полей.DataMemoпозволяет отобразить текст, не умещающийся в одной строке. Для этого настраиваются свойстваDataViewиDataFields. Для работы с компонентом необходимо запустить редакторMailMergeEditorчерез свойствоMailMergeItems. В этом свойстве можно выбрать изменяемые поляMemo.

Вычисление итоговых значений. Компонент CalcTextпозволяет вычислить значение на основе некоторого набора значений. СвойствоCalsTypeпозволяет определить тип вычислений (средне,max,min). СвойствоCountBlanksопределяет, должны ли пустые поля участвовать в вычислениях. (RunningTotal=true, то значение не будет переустанавливать в 0, когда выводится на печать).

51