Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ВУМИП 2012-07-06.doc
Скачиваний:
66
Добавлен:
13.05.2015
Размер:
9.35 Mб
Скачать

3.10.2. Компоненты отчета

Многие компоненты аналогичны соответствующим компонентам формы (аналог указывается в скобках).

QRSubDetail ‑ подчиненная таблица. Связь организуется через свойствоMaster/Dеtail. В свойствеDataSetуказывается подчиненный набор данных, а в свойствеMasterуказывается отчет, привязанный к главной таблице (п. 3.10.5).

QRStringsBand ‑ полоса строк типаTStringsв свойствеItems(QRStringsBand1.Items.LoadFromFile(‘Fam.Txt’).

QRBand ‑ полоса отчета. Компоненты размещаются на соот­вет­ству­ющих полосах. СвойствоBandType‑ задает тип полосы:rbTiltle(заголовок отчета, печатается в начале отчета),rbPageHeader(заголовок листа),rbDetail(записи отчета),rbPageFooter(подножие листа, выводимое внизу каждого листа),rbSummary(итоги по всему отчету),rbGroupHeader(заголовок группы, выводимый в начале группы),rbGroupFooter(подножие группы, выводимое в конце группы; обычно выводятся итоги по группе),rbSubDetail(данные подчиненного набора для отчета «мастер/детальный»,rbColumnHeader(заголовки столбцов, выводимые один раз на странице над данными),rbChild(дочерняя полоса, выводимая после родительской).

QRChildBand‑ подчиненная полоса. Используется, когда размеры родительской полосы заранее не известны. Полоса добавляется к родительской снизу.

QRGroupзаголовок группы элементов.Свойство Expression содер­­жит имя поля (в квадратных скобках, если имя с пробелами) или выражение, по которому производится группировка. СвойствоFooterBandзадает имя компонента (полосы отчета), являющиеся подножием данной группы (п. 3.10.4) и свойствоMaster=QuickRep1.

QRLabel‑ текстовая надпись (Label).

QRDBText ‑ вывод в детальной полосе значения поля (свойствоDa­ta­Field) набора данных (свойствоDataSet). СвойствоAuto­Stre­tch=TrueиAutoSize=Falseзадает вывод значения в несколько строк.

QRExpr ‑ вычисляемое поле отчета. Выражение или имя поля ука­зы­вается в свойствеExpres­si­on(обычно выражение строится мастером (рис. 3.10.2.1), а значение задается свойствомValue).

QRSysData ‑ системная информация, используемая в составных от­че­­тах для единой настройки и вывода дополнительной информации, используя свойствоData:qrsColumnNo(номер текущего столбца много­колоночного отчета),qrsData(текущая дата),qrsDataTime(текущая дата и время),qrsDetailCount(число выведенных записей),qrsDetailNo(номер те­ку­­щей записи главной таблицы),qrsPageNumber(номер текущего листа),qrsPageCount(число листов в отчете, требует второго чтения таблицы, что уве­­личивает время),qrsReportTitle(заголовок отчета),qrsTime(текущее время). СвойствоTextзадает поясняющий текст.

QRMemo ‑ многострочное поле (Memo).

QRExprMemo ‑ многострочное вычисляемое поле. Включает в ст­ро­ки (свойствоLines) выражения в фигурных скобках, которые вы­чис­ляются при формировании отчета.

QRRichText‑ форматированный текст.

QRDBRichText ‑ вывод форматированного текста, на основе поляBlod, указанного в свойствеDataField.

QRShape ‑ фигура (Shape).

QRImage ‑ рисунок (Image).

QRDBImage‑ рисунок, который хранится в полеBlob.

QRCompositeReport‑ формирование составного отчета из несколь­ких других отчетов. СвойствоReportsсодержит список отчетов. До­бав­ляется отчет в обработчике событияOnAddReportметодомAdd(QRComopziteReport1.Reports.Add(fmReport1.QuickRep1) (п. 3.10.6).

QRPreview‑ создание окна просмотра отчета в событииOnPreview.

QRTextFilter‑ экспорт отчета в текстовый файл, щелкнув по кнопкеSave.

QRCSVFilter‑ аналогичен предыдущему, но данные заключаются в кавычки и между ними выводится разделитель (свойствоSeparator).

QRHTMLFilter‑ экспорт отчета в файл форматаHTML(в каталогWeb‑ сервера Интернет) для его просмотра из броузера.

QRChartвывод диаграммы на принтер (Chart).

Основные свойства компонентов

Alignment‑ выравнивание текста внутри компонента.

Font‑ параметры шрифта.

Frame‑ оформление рамки вокруг отдельного элемента.

Событие OnPrintвозникает непосредственно перед выводом компонента. Процедура обработки этого события имеет два параметра:Sender(имя компонента) иValue(выводимое значение, которое в проце­ду­ре обработки можно отредактировать, например,Value:=Value+' тыс.руб.' ).

Для формирования выражения свойстваExpres­si­onобычно ис­поль­зуется мастер выраже­ний (рис. 3.10.2.1), вызы­вае­мый кнопкой с троеточием. В окне мастера имеются кноп­ки:Database Field(спи­сок полей набора),Function(список функций по катего­риям),Variable(спи­сок сис­темных пе­ре­менных),Clear(очистка окна с текс­том вы­ра­же­ния),Validate(про­­­вер­ка выражения), ари­ф­мети­чес­кие, логичес­кие опе­­ра­ции и операции срав­не­ния.

Рис. 3.10.2.1. Окно мастера выражений