Компонент TQuickRep

Как уже отмечалось, компонент TQuickRep является центральным для построения отчета, потому на данном шаге перечислим его важнейшие свойства, методы и события.

Свойства компоненту TQuickRep представлены в таблице 2.

 

Таблица 2. Свойства компоненту TQuickRep

Свойство Описание
property Bands : TQuickRepBands; Состоит из огромного количества логических значений (False/True), которые определяют включение в отчет отдельных видов составляющих, :
  • HasColumnHeader - заглавия столбцов отчета;
  • HasDetail - детальной информации;
  • HasPageFooter - подвалу страницы;
  • HasPageHeader - заглавия страницы;
  • HasSummary - подвалу отчета;
  • Has Title - заглавия отчета.
Эти свойства формируются автоматически по мере вставки в отчет тех или других полос.
property DataSet : TDataSet; Указывает на набор данных, на основе которого создается отчет. Обычно для выдачи отчета используется один НД. Если нужно вывести связанную информацию из нескольких таблиц БД, ее объединяют в одном НД с помощью оператора SELECT. В этом случае как НД для отчета может использоваться компонент TQuery. Информацию из нескольких связанных НД можно включать в отчет, если эти наборы данных связаны в дополнении отношением Master - Detail. В этом случае как НД отчет указывается Master -набір, а ссылка на соответствующие Detail -набори осуществляется в компонентах TQRSubDetail. Если в отчет нужно включить информацию из несвязанных наборов данных, применяют композитный отчет, то есть отчет, составленный из группы других отчетов.
property Frame : TQRFrame; Определяет параметры рамки отчета :
  • Color - цвет линии рамки;
  • DrawBottom - определяет, следует ли выводить линию снизу;
  • DrawLeft - определяет, следует ли выводить линию слева;
  • DrawRight - определяет, следует ли выводить линию справа;
  • Draw Top - определяет, следует ли выводить линию сверху;
  • Style - определяет стиль линии;
Width - определяет ширину линии в пикселях.
property Options : TQROptions; Содержит множество из следующих логических значений:
  • HasFirstHeader - позволяет печатать верхний колонтитул первой страницы;
  • HasLastFoother - позволяет печатать нижний колонтитул последней страницы;
  • Compression - позволяет сжимать отчет при выведении его в метафайл.
property Page : TQRPage; Определяет параметры страницы. Все вложенные свойства этого сложного свойства доступные в окне ReportSetting.
property PrintlfEmpty : Boolean; Указывает (True), что следует печатать отчет даже в том случае, если он не содержит данных.
property PrinterSettings : TQuickRepPrinterSettings; Определяет параметры принтера.
property ReportTitle : String; Имя отчета (не его заглавие!). Используется для идентификации отчета в задании на сетевую печать, возвращается компонентом TQRSysData при Data=ReportTitle и может использоваться для выбора одного из нескольких доступных отчетов.
property ShowProgress : Boolean; Позволяет/запрещает показывать индикатор процесса печати отчета.
property SnapToGrid : Boolean; Если содержит True, размещаемые в отчете компоненты привязываются к сетке отчета.
property TQRUnits=(Inches, MM, Pixels, Native, Characters);   property Units : TQRUnits; Определяет единицы измерения расстояний в отчете:
  • Inches - дюймы;
  • ММ - миллиметры;
  • Pixels - пиксели;
  • Native - внутренние единицы TQuickRep (0,1 мм);
  • Characters - символы текста.
property Zoom : Integer; Определяет масштаб отображения отчета (в процентах от его размеров на листе бумаги) на этапе разработки. Может иметь значение в диапазоне 1 - 300.

 

Много свойств отчета можно установить на этапе конструирования с помощью редактора свойств (рис.3) - вызывать контекстное меню компоненту TQuickRep и выбрать Report Settings.

Рисунок 3. Окно установки параметров отчета

 

Группа элементов управления Paper size позволяет задать характеристики страницы : ее формат (А4 210 х 270 mm), ширину (Width), длину (Length) и ориентацию - книжную (Portrait) или альбомную (Landscape).

Группа элементов управления Margin позволяет установить поля отчета : сверху (Top), снизу (Bottom), слева (Left), справа (Right), а также количество колонок (Number columns) и расстояние между ними (Column Space).

С помощью элементов группы Other можно задать шрифт (Font), его размер (Size) и единицы измерения длины, которые используются (Units).

Группа элементов управления Page frame определяет свойства рамки : наличие линии сверху (Top), снизу (Bottom), слева (Left), справа (Right), цвет линий (Color) и их толщину (Width).

Группа элементов управления Bands определяет наличие полос заглавий и нижнее поле, а также высоту соответствующей полосы.

Флажки Print first page header и Print last page footer управляют соответственно печатью верхнего колонтитула на первой страницы отчета и нижнего колонтитула на его последней странице.

Методы компоненту TQuickRep представлены в таблице 3.

 

Таблица 3. Методы компоненту TQuickRep

Метод Описание
procedure NewColumn; Реализует выведение информации в следующей колонке отчета, а если определена единственная колонка - в его следующей странице.
procedure NewPage; Выполняет переход на новую страницу. Может использоваться в обработчиках событий компонентов отчета BeforePrint или AfterPrint и не может - в обработчиках событий OnPrint, OnStartPage и OnEndPage.
procedure Prepare; Готовит отчет для выведения в файл.
procedure Preview; Выводит отчет в окно предыдущего пересмотра.
procedure Print; Печатает отчет на принтере.
procedure PrintBackground; Инициирует печать отчета в фоновом режиме (в отдельном потоке команд). По завершению печати вызывается обработчик события OnAfterPrint.
procedurePrinterSetup; Обеспечивает установки параметров принтера.

 

События компоненту TQuickRep представлены в таблице 4.

 

Таблица 4. События компоненту TQuickRep

Событие Описание
property AfterPreview : TQRAfterPreviewEvent; Наступает после закрытия окна предыдущего пересмотра отчета.
property AfterPrint : TQRAfterPrintEvent; Наступает после выведения отчета на печать.
property BeforePrint : TQRBeforePrintEvent; Наступает в момент генерации отчета, к выдаче окна предыдущего пересмотра отчета и к выведению отчета на печать.
property OnEndPage : procedure(Sender: TObject); Наступает в момент подготовки к генерации последней страницы отчета.
property OnNeedData : procedure(Sender: TObject; var moreData: boolean); Используется при создании отчета по данным, которые берутся не из НД, а из текстового файла, списку строк, массива и тому подобное. В параметре MoreData обработчик должен повернуть True, если источник данных еще не исчерпанно.
property OnPreview : procedure(Sender: TObject); Используется для скрепления с отчетом нестандартного окна пересмотра.
property OnStartPage : procedure(Sender: TObject); Наступает в момент подготовки к генерации первой страницы отчета.

 

Компонент TQRBand

Компоненты TQRBand являются основными составными частями отчета и используются для размещения в них компонентов, которые отображают, такие как TQRLabel, TQRDBText, TQRImage, TQRDBImage и тому подобное

 

Свойства компоненту TQRBand представлены в таблице 5.

 

Таблица 5. Свойства компоненту TQRBand

Свойство Описание
property AlignToBottom : Boolean; Если имеет значение True, полоса печатается непосредственно над нижним колонтитулом вместо обычного расположения справа и снизу от предыдущей полосы.
Type TQRBandType=(rbTitle, rbPageHeader, rbDetail, rbPageFooter, rbSummare, rbGroupHeader, rbGroopFooter, rbSubDetail, rbColumnHeader); property BandType : TQRBandType; Место расположения компоненту в отчете и его поведение определяются свойствами.
property Enabled : Boolean; Указывает, печатается в отчете (True) или нет (False) информация, которая содержится в компоненте TQRBand.
property ForceNewColumn : Boolean; Если содержит True, полоса печатается в следующей колонке.
property ForceNewPage : Boolean; Указывает, должна ли информация в составе TQRBand всегда печататься из новой страницы (True) или нет (False).
property HasChild : Boolean; Если содержит True, полоса имеет дочернюю полосу TChildBand. Установка значения True в это свойство автоматически создает в отчете дочернюю полосу.

 

Параметры свойства BandType :

rbTitle - определяет компонент заглавия отчета.

rbPageHeader - определяет компонент заглавия страницы.

rbDetail - компонент детальной информации.

rbPageFooter - компонент подвала страницы. Выводится для каждой страницы отчета после всех других данных на странице.

rbSummary - компонент подвала отчета.

rbGroupHeader - компонент заглавия группы.

rbGroupFooter - компонент нижнего колонтитула группы.

rbSubDetail - компонент для выдачи детальной информации из подлежащего набора данных, при выведении в отчете информации из двух или более наборов данных, связанных в дополнении с помощью механизма Master, - Detail.

rbColumnHeader - компонент для размещения заглавий столбцов.

Последующие два события наступают в соответствии с и после печати полосы :

propety AfterPrint : TQRAfterPrintEvent;

propety BeforePrint : TQRBeforePrintEvent;








Дата добавления: 2016-02-27; просмотров: 906;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.012 сек.