Для создания отчетов в среде Delphi 7 предлагается использовать компоненты Rave Reports. Эти компоненты были разработаны компанией Nevrona (www.nevrona.com/rave) и позволяют создавать отчеты, которые поддерживают такие механизмы доступа к данным, как BDE, dbExpress, ADO. В отчеты Rave Reports можно включать графические элементы и сохранять в различных форматах (PDF, HTML, RTF).
Для запуска Rave Reports можно выполнить одно из следующих действий:
Ø выполнить команду ToolsÞRave Designer (ИнструментыÞДизайнер отчетов).
Окно дизайнера отчетов состоит из следующих элементов:
Navigation Area (область навигации) – содержит главное меню, панели инструментов и панель компонентов;
Page (страница отчета) – находится в центре окна и разбита на ячейки с помощью четки;
Project Tree Panel (панель дерева проекта) – в правой части окна, позволяет быстро переходить к нужному объекту проекта;
Property Panel (панель свойств) – в левой части окна, служит для отображения и задания свойств компонентов отчета.
В структуре проекта выделяют следующие элементы:
Rave Project – контейнер для всех других компонентов, создается одновременно с созданием нового файла проекта, всегда один для одного файла проекта. Свойства: AdminPassword- позволяет ограничить доступ пользователей к отчетам и данным; Parametres – позволяет создавать элементы, в которые Delphi помещает результаты вычислений для использования их другими компонентами. PIVars – служит для описания специфических данных, которые требуют динамического обновления во время генерации отчета;
Report (Отчет) – содержит страницы отчета.
Page (Страница) – базовый визуальный компонент, на котором помещаются все стандартные компоненты (отчета, рисования).
Global Page (Глобальная страница) – страницы размещаются под узлом Каталога Глобальных страниц в дереве проекта. Содержат шаблоны, используемые для различных целей. Все глобальные страницы могут быть «зеркалированы».
Data Objects (Объекты данных) – компоненты Data Connection для соединения с данными. Диалоговое окно Data Connection вызывается нажатием кнопки New Data Object и предлагает варианты выбора: DataLookupSecurity Controller, Database Connection, Direct Data View, Simple Security Controller, Driver Data View. Выбранный объект помещается в дерево проекта. Соединение с данными из приложений на Delphi обеспечивает Direct Data View.
Структура приложения. В структуру приложения входят:
Стандартные компоненты Data Connection, которые обеспечивают связь между данными: RvCustomConnection, RvDataSetConnection, RvTableConnection.
Компонент RvProject- позволяет создавать, изменять, отображать и печатать компоненты отчета.
Файл проекта отчета с расширением RAV, где сохраняются все определения и настройки.
Отчеты сохраняются в Библиотеке отчетов (Report Library) проекта.
Глобальные страницы сохраняются в Каталоге глобальных страниц проекта (Global Page Catalog).
Виды данных сохраняются в Словаре видов данных проекта (Data View Dictionary).
Компоненты страницы отчета.Большинство компонентов размещается на странице отчета, кроме Band и DataBand, которые размещаются на Region.
Regoin(Регион) – контейнер для полос;
DataBand – предназначен для отображения динамической информации из видов данных.
Band– предназначен для размещения фиксированных компонентов, не изменяющихся на странице. Например, Text, CalcText.
DataText – служит для отображения значений из полей набора данных в любом месте страницы. Связать этот компонент с данными можно двумя способами: выбрать одиночное имя поля из выпадающего списка в свойстве DataField; либо с помощью окна DataTextEditor, который вызывается двойным щелчком на многоточии в свойстве DataField. Предварительно задать свойство DataView.
DataMemo – позволяет добавлять мемо-поля базы данных. Для выбора нужно установить свойства DataView и DataField.
CalcText – предназначен для вычислений и отображения результатов. Свойства: CalcType – определяет тип вычисления (ctAverage, ctCount, ctMaximum, ctMinimum, ctSum); CountBlanks-указывает, будут ли учитываться при подсчете пустые значения; RunningTotal- задает обнуление для вычисляемого значения при запуске генерации отчета.
CalcOp - невизуальный компонент, с помощью которого можно производить вычисления с данными: значения из полей (свойство SrcDataField, Scr2DataField), константы (Src1Value,Src2Value), другие вычисляемые параметры (Src1CalcVar,Src2CalcVar). Свойство Operator задает тип операции.
CalcController – невизуальный компонент, который связывает между собой компоненты DataBand, CalcText и CalcTotal через свойства Controller.
DataCycle –невизуальная посола отчета, связанная с таблицей базы данных. Это цикл через все detail-записи данных для одного уровня master-записи. Имя master-таблицы определяется свойством MasterDataView. Две таблицы связываются через свойство DetailKey. Данные при формировании отчета могут быть отсортировать через свойство MasterKey.
DataMirror Section – предназначен для создания «зеркальной» области, которая будет использоваться в отчете для создания вариаций отчетов.
Type
nm = (word1, word2, …, wordN);
Var
w: nm;
здесь nm – идентификатор типа (произвольный), word1, word2… - конкретные значения, которые может принимать переменная w, принадлежащая типу nm. Значения данного типа считаются упорядоченными, т.е. описание типа одновременно вводит упорядочение word1 < word2 < wordN. Порядковые значения отсчитываются с 0.
К переменным типа перечисления можно применять функции ord, pred, succ и процедуры inc и dec.
Целый тип данных
Целое, целочисленный тип данных (англ. Integer), в информатике — один из простейших и самых распространённых типов данных в языках программирования. Служит для представления целых чисел.
Множество чисел этого типа представляет собой конечное подмножество бесконечного множества целых чисел, ограниченное максимальным и минимальным значениями.
В программировании различают беззнаковые целые числа и целые числа со знаком. Знак числа обычно кодируется старшим битом машинного слова. Традиционно, если старший бит равен 1, то число считается отрицательным, только, если оно не определено как без знаковое.
Тип
Диапазон допустимых значений
Отводимая память, в байтах
shotint
-128…127
integer
-32 768…32 767
longint
-2 147 483 648…2 147 483 647
byte
0…255
word
0…65 535
Переменные целого типа могут принимать только целые значения. Такие переменные в программе описываются следующим образом: a, b, c: integer;
Здесь a, b, c… - имена переменных, integer – тип переменных. Транслятор, встретив такое описание переменных a, b, c, запоминает, что эти переменные могут принимать только целые значения и формирует соответственно этому команды программы.