Компоненты Rave Reports и отчеты в приложении Delphi

       

Форма состояния процесса вывода отчета компонента TRvSystem



Рисунок 23.5. Форма состояния процесса вывода отчета компонента TRvSystem


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

Вложенное свойство

property StatusFormat: string;

определяет строку форматирования для текста о состоянии процесса. Для нее предусмотрены следующие управляющие символы:

  •  %с — текущее состояние процесса вывода;
  •  %р — номер текущей страницы; 
  •  %f — номер первой страницы; 
  •  %1 — номер последней страницы;
  •  %d — название устройства вывода (название принтера, имя файла, предварительный просмотр);
  •  %r — имя драйвера устройства вывода;
  •  %s — общее число страниц;


  •  %t — порт печати;
  •  %о-%9 — номера строк для свойства statusText (см. ниже).

Вложенное свойство

property StatusText: TStrings;

позволяет задать до десяти строк (можно задать и больше, но они не будут восприняты строкой статуса) с какой-либо дополнительной информацией, описывающей процесс вывода. Первая строка списка будет выведена при наличии в свойстве statusFormat управляющего символа %0, вторая — при наличии символа %1 и т. д.

При помощи перечисленных свойств вы сможете детально описать процесс вывода отчета. В этом вам помогут методы-обработчики событий компонента TRvSystem.

До начата печати отчета и по его окончании (даже если печать была прервана) соответственно вызывается пара методов-обработчиков:

property OnBeforePrint: TNotifyEvent; 

property OnAfterPrint: TNotifyEvent;

В начале печати непосредственно отчета (не заголовка) вызывается метод-обработчик

property OnPrint: TNotifyEvent;

Если вы печатаете одну страницу, будет вызван метод-обработчик

type

TPrintPageEvent = function(Sender: TObject;

var PageNum: Integer): Boolean;

property OnPrintPage: TPrintPageEvent;

Но до начала печати вызывается метод-обработчик

property OnNewPage: TNotifyEvent;

который обозначает генерацию страницы.

При печати колонтитулов в верхней и нижней частях страницы вызываются методы-обработчики

property OnPrintHeader: TNotifyEvent;

property OnPrintFooter: TNotifyEvent;

Разработчик может задать несколько опций для всего компонента TRvSystem, управляя тем самым процессом вывода отчета. Для это используется свойство

type

TSystemOption = (soUseFiler, soWaitForOK, soShowStatus, soAllowPrintFromPreview, soPreviewModal);

TSystemOptions = set of TSystemOption; 

property SystemOptions: TSystemOptions;

Элементы типа TSystemOptions обозначают следующее:

  •  soUseFiler — при установке этой опции в значение True вывод будет направляться в файл, заданный свойством SystemFiler, независимо от других настроек компонента;
  •  SoWaitForOK — если включить эту опцию, генерация отчета будет задержана до момента, когда пользователь нажмет кнопку ОК в диалоге настройки печати компонента (см. Рисунок 23.4);
  •  soshowstatus — эта опция управляет видимостью окна состояния процесса вывода отчета в компоненте;
  •  soAiiowPrintFromPreview — будучи включенной, эта опция позволяет печатать отчет из окна предварительного просмотра;
  •  soPreviewModal — при значении True делает окно предварительного просмотра модальным.

 



Содержание раздела