- •Лабораторная работа №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. Создание групп
3.1. Создание выражений
Синтаксис выражений QuickReport очень похож на синтаксис выражений Object Pascal. Ниже в таблице приведены поддерживаемые операторы:
Оператор |
Описание |
+ |
Add |
- |
Subtract |
* |
Multiply |
/ |
Divide |
( ) |
Parentheses |
And |
Logical AND |
Or |
Logical OR |
Not |
Logical NOT |
= |
Equal |
< |
Less than |
> |
Greater than |
<= |
Less than or equal |
<> |
Not equal |
Стандартные функции включенные в интерпретатор QuickReport:
Функция |
Описание |
Date |
Возвращает текущую дату, результат строка |
Time |
Возвращает текущее время, результат строка |
Str(num) |
Преобразовывает число в строку |
Copy(str, s, l) |
Выделяет подстроку из строки |
Int(num) |
Возвращает целую часть числа |
Frac(num) |
Возвращает дробную часть числа |
If (expr, r1, r2) |
Возвращает или r1 или r2 в зависимости от expr |
TypeOf(expr) |
Возвращает тип выражения |
Sqrt(num) |
Возвращает квадратный корень числа |
Sum(expr) |
Возвращает сумму выражения |
Count |
Возвращает количество экземпляров |
Min(expr) |
Возвращает минимальное значение |
Max(expr) |
Возвращает максимальное значение |
Average(expr) |
Возвращает среднее значение |
Интерпретатор выражений может работать со следующими типами данных: Strings, Integer, Float и Boolean. Двоичные данные и memo поля не поддержаны в интерпретаторе. Ниже приводится список возможных преобразования типов:
Тип данных |
Тип поля |
String |
Поля типа String, date и time |
Integer |
Поля типа SmallInt, byte, Integer |
Float |
Поля типа Float, currency |
Boolean |
Поля типа Boolean |
2.3.1.1. Использование полей базы данных в выражениях
Некоторые поля из таблиц базы данных доступны в интерпретаторе выражений. Имена полей должны указываться напрямую (например Name) или через имя_таблицы.имя_поля (например: ). Если вы не указываете имя таблицы, то интерпретатор ищет имя во всех доступных наборах данных и использует первое найденное. Наборы данных в форме отчета участвуют в поиске первыми, затем поиск производится по модулю данных.
Текущая версия интерпретатора не поддерживает имена полей со специальными символами, например пробел, ‘/’, точка, денежный знак и т.п..
2.3.1.2. Использование строк в выражениях
Строки в выражения должны быть заключены в одинарные кавычки. Вот пример допустимого выражения:
‘Delphi is great!’
Максимальная длина строки равна 255 символов.
