Иллюстрированный самоучитель по Delphi 7 для профессионалов

Отчет в приложении

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

Любое приложение, использующее генератор отчетов Rave Reports, должно иметь как минимум пару компонентов – TRvProject и TRvSystem. Первый из них есть проект отчета в приложении. С его помощью разработчик получает доступ к отчетам проекта и их свойствам. Второй компонент обеспечивает использование ядра генератора отчетов Rave Reports при печати или предварительном просмотре отчета (см. рис. 23.1). Подробнее о свойствах и методах этих компонентов см. гл. 23.

При использовании этих компонентов в состав исполняемого кода приложения автоматически включается ядро генератора отчетов Rave Reports. Соответственно при распространении приложения не требуются дополнительные файлы – даже файл проекта отчета можно включить в приложение (см. ниже).

Компонент TRvProject необходимо связать с файлом проекта Simple-Demo.RAV. Для этого используется его свойство:

property ProjectFile: string;

Файл RAV можно распространять вместе с приложением или включить его в состав исполняемого файла. Для этого используется свойство:

property StoreRAV: boolean;

…компонента (см. рис. 23.2).

Перед использованием отчетов из компонента TRvProject его необходимо открыть. В нашем примере при открытии формы приложения компонент открывается и в список считываются полные имена отчетов проекта и отображается описание текущего отчета:

procedure TfmMain.FormShow(Sender: TObject);
begin
rpProject.Open;
rpProject.GetReportList(IbxRptLiat.Items, True);
rpProject.ReportDescToMemo(meDesc);
end;

Но только один из отчетов доступен для использования одновременно. Для смены текущего отчета можно воспользоваться методом:

function SelectReport(ReportName: string;
FullName: boolean): boolean;

Для идентификации текущего отчета компонент TRvProject имеет два свойства, которые возвращают его имя и полное имя. Это соответственно свойства ReportName и ReportFullName. При необходимости использовать имя отчета для одного из методов (например метод SelectReport) можно использовать оба имени. Во всех методах, где в качестве параметра применяется имя отчета, имеется дополнительный параметр FullName типа Boolean. При его значении True используется полное имя отчета.

Обратите внимание, что перед использованием любых свойств и методов, относящихся к отчету в компоненте TRvProject, отчет необходимо открыть.

Для этого используется метод open:

RvProjectl.Open;

…или свойство:

Active: RvProjectl.Active: = True;

Так же, если в процессе работы приложения в компонент TRvproject нужно загрузить новый проект отчета, процедуру открытия нужно повторить:

RvProjectl.Close;
RvProjectl.SetProjectFile
(dlgOpenProject.FileName);
RvProjectl.Open;

Компонент отчета необходимо связать с компонентом TRvSystem. Для этого в свойстве Engine компонента TRvproject необходимо задать ссылку на компонент TRvSystem.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.