property ProjectFile: string;

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

property Engine: TRpComponent;

ССЫЛКУ на КОМПОНеНТ TRvSystem.

При необходимости вы можете загрузить отчет из внешнего файла или потока:

procedure LoadFromFile(FileName: String);
procedure LxxL<3FrcmStream( Stream: TStream) ;

Загруженный отчет становится текущим.

Кроме этого существует и пара методов для сохранения отчета:

function SaveToFile(FileName: String);
procedure SaveToStream(Stream: TStream) ;

В процессе работы приложения может потребоваться напечатать несколько различных отчетов. Для этого можно использовать требуемое число компонентов TRvProject или загружать нужные отчеты по мере необходимости.

Забегая немного вперед (см. гл. 24), скажем, что один файл проекта отчета может содержать несколько независимых отчетов. Каждый из них идентифицируется в компоненте TRvProject тремя свойствами. Имя, полное имя и описание отчета содержатся соответственно в трех свойствах только для чтения:

property ReportName: String;
property ReportFullName: String;
property ReportDesc: String;

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

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

В параметре ReportName передается имя нужного отчета. Если параметр FullName имеет значение True, то это полное имя отчета, иначе - имя отчета.

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

procedure GetReportList (ReportList: TStrings;
FullName: boolean);

Список имен будет возвращен в список строк ReportList, а параметр FullName определяет, какие именно имена будут занесены в список. При значении параметра True метод возвращает полные имена отчетов (соответствует свойству ReportFullName), иначе - имена (соответствует свойству ReportlName).

Например, код

var ReportPist: TStringPist;
i: Integer;
ReportPist := TStringList.Create;
RvProj ectl.Open;

try

RvProjectl.GetReportList(ReportList, False);
for i := 0 to ReportList.Count - 1 do RvProjectl.ExecuteReport(ReportList[I]);

finally

RvProj ectl.Close;
ReportList.Free;
end;

последовательно печатает все отчеты, входящие в состав файла проекта отчета.

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

property StoreRffi/: Boolean;

При щелчке на кнопке в строке этого свойства в Инспекторе объектов открывается специализированный редактор Load Into ехе (рис. 23.2).

Программирование в Delphi 7

Рис. 23.2. Редактор свойства StoreRAV компонента TRvProject

Здесь можно задать файл проекта отчета. После этого в Инспекторе объектов в строке свойства storeRAV появятся дата и время загрузки проекта отчета. Это же время и дата будут сохранены в свойстве

property RaveBlobDateTime: TDateTime; Отправить отчет на печать можно методом

procedure Execute;

⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в Delphi 7



Новости за месяц

  • Декабрь
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс