
- •Лабораторная работа №5 Составление отчетов
- •Скомпилируйте приложение
- •Скомпилируйте приложение.
- •1. Первый отчет
- •1.1. Простой отчет
- •1.2. Другие типы секций
- •1.3. Получение данных
- •1.4. Фильтрация и сортировка данных
- •1.5. Добавление текста и полей данных
- •2. Создание отчетов
- •2.1. Разметка, единицы измерения и масштаб
- •2.2. Размер бумаги и границы
- •2.3. Выбор шрифта
- •2.4. Заголовок отчета и описание
- •2.5. Добавление секций
- •2.6. Размеры секций
- •2.8. Выключение секций
- •2.9. Добавление печатных компонент к отчету
- •2.2.10.4. Размер
- •2.2.10.5. Стиль шрифта и цвет текста
- •2.2.10.6. Выравнивание
- •2.2.10.7. Выравнивание по секции
- •2.2.10.8. Цвет фона и прозрачность
- •2.2.10.9. Рамки
- •2.2.10.10. Разрешение и запрет
- •2.2.10.11. Печать статического текста
- •2.11. Печать из полей базы данных
- •2.2.11.1. Форматирование вывода
- •2.2.11.2. Печать мемо полей
- •2.2.11.3. Печать простых графических фигур
- •2.12. Печать графики
- •2.2.12.1. Статические изображения
- •2.2.12.2. Изображения, хранящие в таблицах
- •2.13. Печать RichText полей
- •3. Использование выражений
- •3.1. Создание выражений
- •2.3.1.1. Использование полей базы данных в выражениях
- •2.3.1.2. Использование строк в выражениях
- •2.3.1.3. Примеры выражений
- •3.2. Использование выражений
- •3.3. Размер стека
- •4. Создание групп
2.9. Добавление печатных компонент к отчету
Для печати информации в отчете вы должны добавить печатные компоненты в ваши секции. В состав QuickReport включено много печатных компонент, но также возможно создать свои собственные или компоненты третьих сторон.
В следующей таблице перечислены компоненты поставляемые с QuickReport:
TQRLabel |
Для печати статического текста, соответствует TLabel для Delphi форм. Свойство Caption может быть изменено во время генерации отчета. |
TQRDBText |
Для печати данных из полей базы данных, подобно TDBText. Так же может использоваться для печати memo полей (blob fields). |
TQRExpr |
Интерпретатор выражений QuickReport. Смотри соответствующую главу. |
TQRSysData |
Используется для печати информации подобной Заголовок Отчета (report title), номер страницы (page number), дата и время. Примечание: некоторые из данных видов информации могут быть отпечатаны с помощью TQRExpr. |
TQRMemo |
Аналогичен TQRLabel, плюс возможность печати многострочного текста. Обычно используется для создания блоков текста. |
TQRRichText |
Для печати форматированного RichText текста. Может быть связан с компонентом RichEdit на форме, и печатать его содержимое. Доступен только для 32 битной версии Delphi 2.0 или 3.0. |
TQRDBRichText |
TQRRichText версия для баз данных. Доступен только для 32 битной версии Delphi 2.0 или 3.0. |
TQRShape |
Для печати квадратов, кругов, горизонтальных и вертикальных линий. Аналогичен TShape. |
TQRImage |
Для печати статических изображений. Может печатать BMP, WMF и ICO форматы. Аналогичен TImage. |
TQRDBImage |
TQRImage версия для баз данных. Извлекает изображение и blob полей, аналогичен TDBImage, для Delphi форм. |
2.10. Насчет текстовых компонент
Все текстовые печатные компоненты QuickReport имеют общую функциональность, которую они наследуют из базового класса. Если вы желаете получить более подробную информацию, то смотрите главу 4.1.1. Печатные компоненты.
2.2.10.1. Автоматический размер
Компоненты могут расширяться по горизонтали автоматически, что бы разместить весь текст или иметь фиксированный размер. В случае фиксированного размера, текст обрезается по границам заданного прямоугольника.
2.2.10.2. Перенос слов
Если установлено свойство AutoSize в значение True текст может занимать несколько строк при условии, что свойство WordWrap также установлено.
2.2.10.3. Авто расширение
При установке свойства WordWrap, компонент может расширяться вертикально, если текст не помещается в горизонтальных границах. Если компонент расширяется, то одновременно расширяется и соответствующая секция, при условии установки свойства CanExpand. Секция может расширяться на несколько страниц для печати длинного текста.
Примечание: если компонент расширяется, то это не перемещает другие компоненты в той же секции вниз. Если вы имеете компоненты, положение которых зависит от других компонент, то вы должны поместить это на секцию типа child. Смотри главу 5.91. Компонент TQRChildBand для получения дополнительной информации.