Введение
Редактор макетов печати на пластиковых карточках AS101_Badge (далее - дизайнер макетов) позволяет оформлять внешний вид пластиковых карточек, выдаваемых клиентам системы AS101:
Редактор AS101_Badge основан на широко распространенном дизайнере отчетов. Подключение к серверу базы данных СКД AS101 производится автоматически, а доступ к редактированию макетов определяется паролем, определяемом, задаваемом в конфигурации системы AS101, что позволяет разделить пользователей приложения на администраторов, создающих новые макеты и редактирующих уже существующие, и операторов, которым разрешена только печать
карточек с использованием подготовленных макетов карточек.Дизайнер макетов состоит из двух вкладок – вкладки "ДИЗАЙН" и вкладки "НАЗНАЧЕНИЕ МАКЕТОВ И ПЕЧАТЬ КАРТОЧЕК".
На вкладке "Дизайн" возможно создание нового или редактирование существующего макета карточки, а также просмотр созданного макета с использованием данных из БД AS101.
На вкладке "Назначение макетов и печать карточек" возможно:
Учитывая, что пользователю предоставлены возможности выбора принтера и форматов бумаги, AS101_Badge
позволяет создавать фирменные бэджи и другие идентификационные карты, на которых необходимо размещать информацию о клиентах, включая фото.Возможности дизайнера отчетов позволяют проводить
условное форматирование данных и многое другое, хотя это требует некоторых начальных навыков программирования.Из соображений безопасности доступа к БД AS101
весь прямой доступ к данным отключен, также как и возможности редактирования словаря данных, имеющегося в дизайнере отчетов. В связи с этим ряд возможностей построителя отчетов становится недоступен при редактировании макетов, а весь доступ к данным БД управляется программно без участия пользователя.Связь данных клиентов с макетами достигается программным заполнением словаря данных, в связи с чем
возможность редактирования словаря данных также отключена. При размещении информации о клиентах на макете следует использовать описанную в разделе "Дизайнер отчетов" процедуру вставки в отчет переменных из словаря данных. При этом для переменной [Фото] всегда следует использовать элемент "Рисунок" и формат JPG.
Макетирование и печать карточек
Вкладка "Дизайн (макеты карточек)"
Изначально при входе на вкладку список существующих в системе AS101 макетов пуст. Если Вам известен пароль макетировщика, следует нажать кнопку "
Доступ к настройкам" и ввести пароль. Будет открыт доступ к разделу "Настройка и создание макетов".Для удобства в системе существует макет-заготовка, которую можно загрузить в текущий макет, нажав кнопку "
Загрузить из трафарета". После этого следует указать название макета в строке ввода и воспользоваться кнопкой "Сохранить как новый". При этом трафарет-заготовка будет сохранена в БД AS101. В списке макетов появится созданный Вами макет.Если вы выбрали в сетке-списке какой-либо макет и отредактировали его (или только изменили наименование), следует использовать кнопку "
Сохранить измененный". Если Вы взяли какой-нибудь макет за основу для нового макета, то после редактирования следует пользоваться кнопкой "Сохранить как новый". Без Ваших явных указаний на необходимость сохранения никаких автоматических сохранений после выхода из дизайнера макетов не проводится, чтобы предотвратить случайную "порчу" макета: все редакционные изменения хранятся лишь во временном, невидимом Вам текущем макете. Если Вы не хотите сохранять редакционные изменения, достаточно просто перейти в списке макетов на любой нужный Вам макет или нажать кнопку "Обновить списки", находящуюся под списком макетов.Вызов дизайнера отчетов для выбранного макета происходит при нажатии кнопки "
Редактировать макет". Подробности о приемах работы с дизайнером отчнтов смотрите ниже в разделе "Дизайнер отчетов". Здесь лишь отметим, что при выходе из дизайнера Вам всегда предлагается сохранять макет во внешнем файле (*.frf - форма отчета дизайнера отчетов). Учитывая, что макеты сохраняются в БД AS101, необходимости в сохранении макета во внешнем файле у Вас нет. Можно отказаться от сохранения макета при выходе из дизайнера, но не забыть сразу после выхода воспользоваться описанными выше кнопками "Сохранить измененный" или "Сохранить как новый".После того, как макет создан, можно проверить его внешний вид на данных любого клиента AS101 (а при необходимости сразу же и напечатать). Для этого необходимо сначала воспользоваться кнопкой "
Обновить", расположенной над фотографией клиента.Для поиска конкретного клиента используйте кнопки "
Найти" и "Следующий", предварительно задав колонку, в которой следует искать текст, и сам контекст поиска.После того, как интересующий Вас клиент найден (например, клиент с аномально длинной фамилией), воспользуйтесь кнопкой
"Просмотр макета". Будет открыто окно предварительного просмотра, в котором Вы увидите, как будет выглядеть при печати карточка клиента. Окно предварительного просмотра позволяет сразу же напечатать карточку.ОБЩИЕ ЗАМЕЧАНИЯ ПО СОЗДАНИЮ МАКЕТОВ
Подробности использования дизайнера отчетов описаны ниже в разделе
"Дизайнер отчетов". Здесь отметим только ряд важных для макетирования моментов.Для создания сложного оформления можно использовать заранее подготовленные рисунки или заливки, используя возможности вставки любых рисунков и заливки фигур и прямоугольников в текстом.
Вкладка "Печать карточек"
ФИЛЬТРАЦИЯ СПИСКА
В верхней части вкладки расположена панель
"Отбор клиентов", позволяющая произвести необходимую фильтрацию списка клиентов. Кнопка "Обновить списки" на панели предназначена для обновления всех списков панели отбора клиентов. Можно установить все необходимые Вам условия отбора, после чего, установив предварительно флаг "Вкл. Отбор" нажать кнопку "Обновить". Будет сформирован отфильтрованный список клиентов AS101.При любых изменениях условий фильтрации списка не забывайте обновлять список (кнопка "
Обновить").Если Вы не хотите применять никаких условий фильтрации списка, достаточно снять флаг "
Вкл. Отбор".ПОИСК КЛИЕНТА
Для поиска какого-либо определенного клиента в списке используйте кнопки "Найти" и "Следующий", предварительно задав колонку, в которой следует искать текст, и сам контекст поиска.
В сетке-списке клиентов можно изменять ширину колонок и менять порядок колонок местами.
НАЗНАЧЕНИЕ МАКЕТА КЛИЕНТУ
Под сеткой клиентов расположена панель "Назначение макета клиенту". В этой панели для выбранного Вами клиента следует указать назначаемый ему макет карточки и нажать кнопку "Сохранить". При необходимости изменения макета или отметки о выдаче пропуска также используйте кнопку "Сохранить".
ПРОСМОТР
Нажав кнопку "
Просмотр", Вы открываете окно предварительного просмотра карточки клиента (при условии, что ему уже назначен макет!). Можно выбрать принтер и напечатать карточку клиента.Кнопка "
Просмотр" на вкладке "Печать карточек" предоставляет возможность коррекции внешнего вида карточки. Например, если у клиента фамилия не умещается в поле, отведенное макетом, у Вас есть возможность вызвать дизайнер по правой кнопке мыши. Учтите, что при этом Вы будете редактировать не макет, а макет с конкретными данными. Таким образом можно изменить вид карточки для конкретного клиента (например, изменить размеры полей или поменять шрифт), не внося никаких изменений в макет (после печати карточки внесенные Вами изменения никак не отразятся на исходном макете, но позволят напечатать хорошо оформленную карточку клиента).ПЕЧАТЬ КАРТОЧЕК С НАЗНАЧЕННЫМИ МАКЕТАМИ
Внимание! Печать производится непосредственно на принтер, минуя окно предварительного просмотра, в связи с чем при использовании этой панели следует проконтролировать, какой принтер в системе установлен "по-умолчанию". Показ окна предварительного просмотра невозможен из-за того, что карточка каждого клиента будет печататься с тем макетом, который назначен ему индивидуально! Имейте в виду, что
если клиенту не назначен макет, то его карточка просто пропускается.Если необходимо, можно напечатать одного или несколько выбранных клиентов. Выбор производится левой кнопкой мыши, удерживая нажатой клавишу CTRL на клавиатуре, при этом все выбранные клиенты помечаются точкой. После этого следует нажать кнопку "
Только выделенных".Если вы использовали фильтр для клиентов, можно напечатать карточки для всего списка, нажав кнопку "
Весь список".ПРОСМОТР И ПЕЧАТЬ КАРТОЧЕК ПО ПРОИЗВОЛЬНОМУ МАКЕТУ
Если необходимо, можно предварительно "отфильтровать" список клиентов, после чего выбрать макет и нажать кнопку "
Весь список" панели "Просмотр и печать списка карточек по произвольному макету".Открывается окно предварительного просмотра, в котором можно увидеть все страницы для печати. Это позволяет не только проконтролировать вид карточек перед печатью во избежание неоправданной порчи пластиковых карт, но и провести выборочную печать. Номера страниц всегда можно увидеть в окне предварительного просмотра, щелкнув мышью по нужной странице.
Например, макет был двусторонний, в списке отбора - 10 клиентов. На предварительном просмотре Вы увидите 20 страниц (1,2 стр. - первый клиент, 3,4 стр. - второй и т.д.). Вы можете напечатать карточки только для 4-го и 5-го клиентов, указав при печати страницы 7-10.
Элементы для оформления макета
Иконка |
Название |
Описание |
|
Текст |
Предназначен для отображения текста (однострочного или многострочного). В тексте могут присутствовать переменные (обрамляются квадратными скобками), выражения или поля БД (также обрамляются квадратными скобками) |
|
Бэнд |
Бэнд (англ. band - полоска). Как и во всех band-ориентированных генераторах отчетов, позволяет объединять объекты в группы (заголовок отчета, страницы, многострочная часть, подвал и пр.). ПРИМ . Из-за отключенного доступа к данным практически не применим, за исключением вывода информации на растягиваемых полосах. |
|
Рисунок |
Предназначен для отображения рисунка в форматах JPG, BMP, ICO, WMF, EMF. Также способен отображать рисунок из BLOb-поля БД.ПРИМ . Поле (переменная) [Фото] должна иметь тип btJPG |
|
Вложенный отчет |
Предназначен для создания вложенных отчетов. Будучи вставленным в отчет, приводит к созданию новой страницы, содержимое которой будет выведено вместо объекта при формировании отчета. ПРИМ . Из-за отключенного доступа к данным практически не применим. |
|
Линия |
При выборе этого объекта курсор принимает форму карандаша. На странице отчета при этом можно рисовать вертикальные и горизонтальные линии. |
|
Текст с тенью |
Выполняет те же функции, что и объект "Текст". Кроме того, умеет отображать тень или градиентную заливку. Очень удобный объект для печати наклеек. |
|
Штрих-код |
Отображает данные в форме штрих-кода. Способен отображать данные из поля БД. ПРИМ . Из-за отключенного доступа к данным практически не применим. |
|
Фигура |
Отображает один из четырех типов фигур: прямоугольник, прямоугольник с закругленными углами, эллипс и треугольник. |
|
Флажок |
Отображает крестик или галочку внутри прямоугольника. |
|
RichText |
Отображает форматированный текст (формат RTF). В тексте могут присутствовать переменные/выражения/поля БД. Также способен отображать данные из BLOb-поля БД. |
|
OLE объект |
Отображает объект OLE. Также способен отображать данные из BLOb-поля БД. |
|
Диаграмма |
Отображает данные в виде диаграммы. ПРИМ . Из-за отключенного доступа к данным практически не применим. |
|
RichText 2.0 |
Отображает форматированный текст с картинками и OLE-вставками (формат RTF 2.0, используется компонент TrxRichEdit). В тексте могут присутствовать переменные/выражения/поля БД. Также способен отображать данные из BLOb-поля БД. |
Представляет собой произвольным образом обрамленный прямоугольник с многострочным текстом внутри
. Задается цвет текста/заливка, тип рамки, толщина рамки и цвет, все параметры шрифта текста, выравнивание текста внутри прямоугольника и ориентация текста (норм./90 градусов). Для этого предназначены панели инструментов "Текст" и "Прямоугольник":В мемо объекта можно поместить многострочный текст с переменными. Переменные обрамляются квадратными скобками.
При формировании отчета, когда в объекте обнаруживается переменная, вызывается событие, которому передается имя переменной (это может быть и не имя, а выражение) и ожидается возврат ее значения. Примеры использования переменных:Длина, см: [Длина] – текст (Длина, см:) и переменная ([Длина])
Длина, см: [[Длина в дюймах] * 2.54] – текст и выражение с переменной
Редактор объекта позволяет редактировать содержимое мемо, быстро вставлять переменные, выражения, а также редактировать скрипт. Для более удобной работы можно воспользоваться быстрыми клавишами: Insert - вставка переменной; клавиша Ctrl+Enter - аналог кнопки OK.
Кнопки на панели инструментов выполняют следующие функции:
Помимо основного редактора, имеется редактор, позволяющий выбрать формат отображения имеющихся в тексте переменных. Вызвать его можно либо из контекстного меню объекта, либо из инспектора объектов (свойство DisplayFormat).
Переменная может отображаться как текст, число, дата, время, булевское значение (список в левой части окна). Для каждого из этих типов (кроме текстового представления) можно выбрать один из нескольких способов форматирования (список в правой части окна),
например, для числа можно задать количество знаков после запятой, знак-разделитель целой и дробной части, разделение на разряды.Кроме того, для каждого типа может быть выбран произвольный формат, когда строка форматирования задается вручную (например, #,###,##0.000 для числа). Для этого необходимо в списке справа выбрать тип форматирования "Другой". Строки форматирования для каждого из типов описаны в справочной системе Delphi, раздел formatting strings (кроме булевского типа, где строка представлена в формате Значение1;Значение2). Если выбран текстовый тип (по умолчанию), то форматирование производиться не будет.
Указанные опции форматирования будут воздействовать на все переменные, содержащиеся в объекте. Если переменная не может быть отформатирована указанным способом, она выводится как текст.
Для того, чтобы отобразить объект другим шрифтом или цветом в зависимости от выполнения какого-либо условия, можно воспользоваться диалогом "Условное выделение". Диалог можно вызвать с помощью кнопки
К примеру, нужно выделить суммы заказов, превышающие 1000$ жирным шрифтом. Для этого в объекте, содержащем сумму заказа, в диалоге указывается условие – Value > 1000 и задаются параметры шрифта. Условие выделения можно указать и по-другому – [Part total] > 1000. Другой пример использования выделения – для придания отчету презентабельного вида можно сделать чередующуюся раскраску строк данных. Для этого на бэнд надо поместить объект "Текст", растянуть его по ширине секции, в диалоге выделения набрать условие [LINE#] mod 2 = 0 и указать цвет фона (к примеру, серый).
В контекстном меню объекта можно задать следующие опции:
Кроме того, в инспекторе объектов можно задать следующие значения:
Предназначен для вставки графического файла в формате
JPG/BMP/WMF/ICO в документ. Редактор объекта позволяет вставить рисунок и очистить содержимое объекта.Рисунок может быть вставлен из переменной или поля таблицы БД, если в мемо объекта поместить ссылку на соответствующее поле, например: [Фото]. Редактор мемо может быть вызван с помощью инспектора объектов либо комбинацией клавиш Ctrl+Enter. Эту опреацию можно также выполнить из инспектора объектов (
свойство DataField).В контекстном меню объекта и в инспекторе можно задать следующие опции:
Представляет собой вертикальную либо горизонтальную линию с изменяемым цветом и толщиной. Дизайнер имеет удобные средства для рисования линий. В частности, с помощью линий можно быстро задать внешнее обрамление для таблицы, отличное от внутреннего.
Для рисования линии выберите инструмент "Линия" на панели объектов. При этом курсор мыши примет форму карандаша при перемещении его над поверхностью листа. Установите курсор мыши в место начала линии, нажмите левую кнопку мыши и двигайте мышь до нужной позиции. После отпускания кнопки будет нарисована линия. После окончания рисования нужно нажать кнопку "выбор объекта" либо Esc.
Предназначен для вставки геометрических фигур (прямоугольник, прямоугольник с закругленными углами, эллипс, треугольник) в документ. Тип фигуры можно установить в инспекторе объектов (свойство Shape).
Предназначен для вставки OLE объектов в документ. Редактор объекта “OLE” позволяет вставить новый объект и редактировать существующий.
Вставка нового объекта производится в стандартном диалоговом окне. OLE объект может быть вставлен из поля таблицы БД, если в мемо объекта поместить ссылку на соответствующее поле. Редактор мемо может быть вызван с помощью инспектора объектов либо комбинацией клавиш Ctrl + Enter. Эту операцию можно также выполнить из инспектора объектов (свойство DataField).
В контекстном меню объекта опция "растягиваемый" (Stretched) позволяет корректно отображать данные в некоторых случаях (например, при вставке объекта "Лист Excel").
Прим
.: в числе вынесенных в словарь переменных (представляющих сведения о клиентах AS101) OLE-поля не используются, поэтому возможна только вставка ссылок на какие-нибудь используемые Вами OLE-объекты.Предназначен для вставки текста в формате RTF (Rich Text format) в документ. В частности, таким образом можно вставить текст, подготовленный в текстовом процессоре MS Word, предварительно сохранив его в формате RTF.
Редактор объекта позволяет выполнять все базовые операции над текстом - менять шрифт, выравнивание, создавать маркированные списки.
Прим
.: в числе вынесенных в словарь переменных (представляющих сведения о клиентах AS101) RTF-поля не используются, поэтому возможна только вставка ссылок на какие-нибудь используемые Вами RTF-объекты.В тексте могут находиться переменные, обрамленные квадратными скобками - как и в объекте “Текст”. RichText объект может быть вставлен из поля таблицы БД
(доступ отключен!!!), если в мемо объекта (не в сам объект!) поместить ссылку на соответствующее поле. Редактор мемо может быть вызван с помощью инспектора объектов либо комбинацией клавиш Ctrl + Enter. Эту операцию можно также выполнить из инспектора объектов (свойство DataField). Объект RichText 2.0Объект аналогичен объекту RichText, за исключением того, что он базируется на компоненте RXRichEdit, который поддерживает формат RTF 2.0 (RichText с OLE-вставками и картинками).
Предназначен для вставки штрихкодов в документ. Можно использовать следующие типы штрихкодов:
Дизайнер предоставляет пользователю удобные средства для разработки внешнего вида отчета и позволяет сразу выполнить предварительный просмотр. Интерфейс дизайнера выполнен на современном уровне с использованием панелей инструментов (toolbars), расположение которых можно изменять по своему вкусу. Информация о расположении панелей запоминается в реестре, и при следующем запуске восстанавливается. Также в реестре запоминаются остальные настройки дизайнера.
Использование дизайнера дает возможность пользователю настраивать вид отчета
, а также редактировать готовый отчет.
Окно с параметрами отчета доступно из меню "Файл|Параметры отчета...".
В списке принтеров имеется "Виртуальный принтер". Он необходим в случае, если в системе нет установленных принтеров. При этом дизайнер и предварительный просмотр отчета функционируют нормально. Вы можете выбрать любой из форматов бумаги, поддерживаемой Windows и Вашим принтером (вплоть до формата A2), устанавливать ориентацию листа бумаги. Т.е. "виртуальный" принтер эмулирует функции
реального принтера (разумеется, на нем нельзя печатать;)Другой случай, когда необходимо использовать виртуальный принтер - Вы разрабатываете форму отчета для принтера с форматом бумаги А3, а самого принтера у Вас нет (он есть у заказчика). В этом случае выбор виртуального принтера снимает проблему.
Флажок "
Выбирать при открытии отчета" позволяет привязать отчет к одному из принтеров, установленных в системе. Это значит, что при открытии такого отчета принтером по умолчанию станет выбранный принтер. Это полезно в случае, если в системе имеется несколько разных принтеров - текстовые документы можно привязать к монохромному принтеру, документы с графикой - к цветному.Если флажок "Делать два прохода" установлен, формирование отчета будет осуществляться в два этапа. На первом проходе отчет формируется, осуществляется его разбивка на страницы, но результат нигде не сохраняется. На втором проходе происходит обычное формирование отчета с сохранением результата в потоке.
Для чего же нужно делать два прохода? Наиболее часто эта опция применяется в случае, если в отчете имеется упоминание об общем количестве страниц в нем, т.е. информация вида "Страница 1 из 15". Общее количество страниц подсчитывается на первом проходе и доступно через системную переменную TOTALPA
GES. Наиболее частая ошибка - попытка применить эту переменную в однопроходном отчете, в этом случае она возвращает 0.Другая область применения - выполнение каких-либо вычислений на первом проходе и отображение результатов на втором. Например, в случае, когда необходимо отобразить в заголовке группы сумму, которая обычно подсчитывается и отображается в подвале группы. Такого рода вычисления связаны с использованием встроенного языка FR.
Прим.
: использование двухпроходных отчет едва ли Вам потребуется, учитывая, в кроме дат и фото все остальные переменные - текстовые.Параметры страницы
Прим.
: пластиковые карточки имеют стандартный формат 85х55 мм. Формат бумаги следует выбирать, руководствуясь тем, какой принтер для печати на карточках у Вас установлен.Окно с параметрами страницы доступно из меню "Файл|Параметры страницы..." либо при двойном щелчке левой кнопкой мыши на свободном месте листа отчета. Окно представляет собой блокнот с четырьмя закладками: "Бумага", "Источник", "Поля" и "Параметры".
Закладка "Бумага"
Поля ввода ширины и высоты становятся доступными, если из списка "Размер" выбран пункт "Размеры, определяемые пользователем". Следует отметить, что не все драйверы принтеров поддерживают пользовательский размер бумаги. Кроме того, не все принтеры поддерживают произвольные пользовательские размеры (например, драйвер принтера HP LaserJet 6L не дает устанавливать размеры листа меньше чем 76 * 127мм).
Закладка "Источник"
Закладка "Поля"
Здесь можно задать размеры отступа от краев листа, а также задать опцию “Растянуть на область печати”. На этом моменте следует остановиться более подробно.
А) Возможны два варианта страницы в дизайнере: с полями печати и без них. Если поля печати включены (по умолчанию), то они отображаются в дизайнере и все, что находится вне полей, на печать не выводится. Это позволяет добиться максимального соответствия между видом страницы в дизайнере и на бумаге. Координаты объектов исчисляются от верхнего левого угла листа.
Б) Но при переходе на другой принтер из-за изменившихся границ печати некоторые объекты могут вылезти за пределы полей и не будут напечатаны.
Если включить флажок "Растянуть на область печати", то предполагается, что страница в дизайнере соответствует области печати, т.е. все, что находится на странице, будет корректно напечатано на любом принтере. Координаты объектов в этом случае исчисляются от верхнего левого угла области печати. Правда, при этом вид страницы в дизайнере будет немного отличаться от распечатанного документа.Если поля страницы нулевые, то при построении отчета будут использована информация о полях, предоставляемая драйвером принтера.
Если Вы используете матричный принтер, будьте внимательны. Дело в том, что во многих матричных принтерах одно или несколько полей имеет нулевой размер, в связи с чем при формировании отчета и при его распечатке может возникнуть ситуация, когда текст выходит за границы листа. Чтобы избежать этого, явно задавайте поля станицы либо устанавливайте флажок " Растянуть на область печати".Следует отметить, что на формирование отчета при включенных полях страницы оказывает непосредственное влияние только установка значений для верхнего и нижнего полей. Левое же и правое поля действуют только для Cross-tab отчетов.
Закладка "Параметры"
На этой закладке можно указать количество колонок для печати многоколоночных отчетов. Текущие установки отображаются в дизайнере.
Флажок “Печатать на предыдущем листе” позволяет начать печать страницы, начиная со свободного места на предыдущем листе. Эта опция может применяться в случае, если шаблон отчета состоит из нескольких листов либо при печати составных (composite) отчетов.
Опции дизайнера
Чтобы установить опции дизайнера, воспользуйтесь командой меню "Сервис|Опции...".
Здесь можно задать используемые единицы измерения (пикселы, миллиметры, дюймы), указать шаг сетки в точках (шаг сетки 18 точек точно соответствует 5мм. Это особо полезно в случаях, когда надо сделать бланк, размеры которого кратны 5мм.
Также можно указать способ прорисовки объектов при их перемещении (или изменения размеров).
Опция "Расположение страницы" позволяет выбрать расположение страницы. Это необходимо, если на экране присутствует инспектор объектов: таким образом можно задать взаимное расположение страницы и инспектора.
Если опция "Цветные кнопки" отключена, то все кнопки становятся черно-белыми; при наведении указателя мыши на кнопку она показывается в цвете.
Опция "Показывать заголовки бэндов" позволяет отключать заголовки у бэндов в целях экономии свободного места на странице.
Наконец, опция "Редактирование после вставки" управляет процессом вставки новых объектов. Если опция включена, каждый раз при вставке объекта будет показываться его редактор. При вставке большого количества пустых объектов опцию лучше отключать.
На закладке "Редактор" можно настроить шрифт для окна редактора текста. При включенной опции "Использовать установки шрифта объекта" шрифт в окне редактора текста будет соответствовать шрифту редактируемого объекта.
Инспектор позволяет манипулировать всеми свойствами выбранных объектов.
Окно инспектора похоже на Object Inspector в Delphi и функционирует аналогичным образом.
Так же, как и остальные панели инструментов, его можно показать или скрыть соответствующей командой меню "Сервис|Панели инструментов". Показать окно можно также при нажатии на клавишу F11. Двойной щелчок на заголовке окна инспектора сворачивает окно в полоску, еще один двойной щелчок - восстанавливает исходные размеры.Диалог вставки полей БД в отчет
Этот диалог позволяет быстро вставить поле БД в отчет.
Прим:
В связи с блокировкой доступа к полям данных (описано во введении), следует пользоваться готовым словарем данных.Прим.
Возможность редактировать словарь данных отключена.Окно словаря данных (Data dictionary) доступно из меню "Файл|Словарь данных...". Окно представляет собой блокнот с тремя закладками: "Переменные", "Данные из БД" и "Источники данных для бэндов".
Словарь данных хранится в файле вместе с формой отчета.Закладка "Переменные"
Прим
.: фактически, словарь переменных заполняется без Вашего участия и связывается должным образом с наборами данных.Эта закладка предназначена для работы со списком переменных.
Список переменных расположен в левой части окна. Как видно из рисунка, структура списка двухуровневая: он состоит из категорий, в каждой категории может быть одна или несколько переменных. Категории нужны только для визуальной группировки переменных и в отчет не вставляются.
При создании нового отчета список пуст, и чтобы заполнить его, воспользуйтесь кнопками под списком:
Закладка "Данные из БД"
Прим
.: в AS101_Badge прямой доступ к данным из БД блокирован.Закладка "Источники данных для бэндов"
Прим
.: в AS101_Badge прямой доступ к данным из БД блокирован.
Окно конструктора выражений можно вызвать из редактора текста, нажав кнопку
Диалог позволяет выбрать переменную для вставки в выражение. Слева размещен список категорий, справа – список переменных в выбранной категории.
Для вставки переменной в выражение надо выбрать переменную и нажать кнопку "ОК", либо сделать на ней двойной щелчок мышью.Диалог вставки поля БД
Прим
.: в AS101_Badge прямой доступ к данным из БД блокирован.
Панели инструментов дизайнера отчетов
Панель инструментов "Стандартная"
Иконка |
Название |
Описание |
|
Новый отчет |
Создает новый пустой отчет. |
|
Открыть отчет |
Открывает существующий отчет из файла с расширением FRF. Клавиатурный аналог - Ctrl+O. |
|
Сохранить отчет |
Сохраняет отчет в файл с расширением FRF. Клавиатурный аналог - Ctrl+S. |
|
Предварительный просмотр |
Выполняет построение отчета и его предварительный просмотр. Клавиатурный аналог - Ctrl+P. |
|
Вырезать |
Вырезает выделенные объекты в буфер обмена. Клавиатурный аналог - Ctrl+X. |
|
Копировать |
Копирует выделенные объекты в буфер обмена. Клавиатурный аналог - Ctrl+C. |
|
Вставить |
Вставляет объекты из буфера обмена. Клавиатурный аналог - Ctrl+V. |
|
Отменить |
Отменяет последнюю операцию. Число уровней отката - до 100. Клавиатурный аналог - Ctrl+Z. |
|
Повторить |
Повторяет последнюю отмененную операцию. Клавиатурный аналог - Ctrl+Y. |
|
На передний план |
Помещает выделенные объекты на передний план. |
|
На задний план |
Помещает выделенные объекты на задний план. |
|
Выделить все |
Выделяет все объекты на странице. Клавиатурный аналог - Ctrl+A. |
|
Новая страница |
Создает новую страницу. |
|
Удалить страницу |
Удаляет текущую страницу. |
|
Свойства страницы |
Вызывает диалог со свойствами страницы. |
|
Показать сетку |
Показывает точечную сетку на странице. Шаг сетки можно задать в опциях дизайнера. Клавиатурный аналог - Ctrl+G. |
|
Выравнивать объекты по сетке |
При перемещении или изменении размеров объектов координаты/размеры будут изменяться скачкообразно в соответствии с шагом сетки. |
|
Расположить в узлах сетки |
Изменяет размеры/расположение выделенных объектов таким образом, чтобы они размещались в узлах сетки. |
|
Справка |
Показывает справку по элементам управления. |
|
Выход |
Закрывает окно дизайнера. |
Иконка |
Название |
Описание |
|
Шрифт |
Позволяет выбрать название шрифта из выпадающего списка. Помнит пять последних использованных шрифтов. Двойной щелчок мышью вызывает стандартный диалог выбора шрифта. |
|
Размер шрифта |
Позволяет выбрать размер шрифта из выпадающего списка. Размер можно также ввести вручную. |
|
Утолщение |
Устанавливает/снимает утолщение шрифта. Клавиатурный аналог - Ctrl+B. |
|
Наклон |
Устанавливает/снимает наклон шрифта. Клавиатурный аналог - Ctrl+I. |
|
Подчеркивание |
Устанавливает/снимает подчеркивание шрифта. Клавиатурный аналог - Ctrl+U. |
|
Цвет шрифта |
Выбирает цвет шрифта из выпадающего списка. |
|
Условное выделение |
Показывает диалог с атрибутами выделения для выбранного объекта "Текст". |
|
Выравнивание влево |
Устанавливает выравнивание текста влево. |
|
Выравнивание по центру |
Устанавливает выравнивание текста по центру. |
|
Выравнивание вправо |
Устанавливает выравнивание текста вправо. |
|
Выравнивание по ширине |
Устанавливает выравнивание текста равномерно по ширине. |
|
Выравнивание по верхнему краю |
Устанавливает выравнивание текста по верхнему краю. |
|
Выравнивание по высоте |
Устанавливает выравнивание текста по высоте. |
|
Выравнивание по нижнему краю |
Устанавливает выравнивание текста по нижнему краю. |
|
Вертикальный текст |
Переключает нормальный/вертикальный шрифт. |
Панель инструментов "Прямоугольник"
Иконка |
Название |
Описание |
|
Верхняя линия |
Включает/выключает верхнюю линию рамки. |
|
Левая линия |
Включает/выключает левую линию рамки. |
|
Нижняя линия |
Включает/выключает нижнюю линию рамки. |
|
Правая линия |
Включает/выключает правую линию рамки. |
|
Все линии |
Включает все линии рамки. |
|
Нет линий |
Выключает все линии рамки. |
|
Цвет фона |
Выбирает цвет фона из выпадающего списка. |
|
Цвет линии |
Выбирает цвет линии из выпадающего списка. |
|
Стиль линии |
Выбирает стиль линии из выпадающего списка. |
|
Толщина линии |
Выбирает толщину линии из выпадающего списка. |
Панель инструментов "Выравнивание"
Иконка |
Описание |
|
Выровнять левые края. |
|
Центрировать по горизонтали. |
|
Центрировать по горизонтали в окне. |
|
Расположить равномерно по ширине. |
|
Выровнять правые края |
|
Выровнять верхние края. |
|
Центрировать по вертикали. |
|
Центрировать по вертикали в окне. |
|
Расположить равномерно по высоте. |
|
Выровнять нижние края. |
Дополнительные элементы для создания макетов
ПРИМЕЧАНИЕ
: все перечисленные ниже элементы не могут использоваться в полном объеме, так как требуется прямой доступ к данным БД и словарю. В AS101_Badge они блокированы по соображениям безопасности.Дизайнер отчетов, как и многие другие распространенные продукты, является бэнд-ориентированным построителем отчетов. Ниже приведен полный перечень бэндов и выполняемых ими функций.
Название |
Функция |
Report title |
печатается один раз в начале отчета |
Report summary |
печатается один раз в конце отчета |
Page header |
печатается вверху на каждой странице |
Page footer |
печатается внизу на каждой странице |
Master header |
печатается в начале списка 1-го уровня |
Master data |
данные списка 1-го уровня |
Master footer |
печатается в конце списка 1-го уровня |
Detail header |
печатается в начале списка 2-го уровня |
Detail data |
данные списка 2-го уровня |
Detail footer |
печатается в конце списка 2-го уровня |
Subdetail header |
печатается в начале списка 3-го уровня |
Subdetail data |
данные списка 3-го уровня |
Subdetail footer |
печатается в конце списка 3-го уровня |
Overlay |
печатается на каждой странице нижним слоем |
Column header |
печатается в начале каждой колонки |
Column footer |
печатается в конце каждой колонки |
Group header |
заголовок группы |
Group footer |
печатается после группы |
Cross header Cross data Cross footer |
эта группа бэндов предназначена для создания отчетов с переменным количеством столбцов и разбивкой на страницы |
Child |
может быть прикреплен к любому из бэндов, кроме Page footer, и выводиться вместе с ним. |
В зависимости от типа бэнда в контекстном меню доступны следующие опции:
Stretched) - высота бэнда определяется максимальной высотой находящихся в нем объектов. У объектов также должна быть включена опция "растягиваемый";Вложенный отчет - это отчет с размещенным на нем объектом SubReport, который представляет собой ссылку на другой отчет, расположенный на отдельной странице. При формировании такого отчета вместо объекта SubReport будет выведен соответствующий отчет.
Объекты SubReport можно располагать на листе друг под другом или рядом. В случае, если объекты надо расположить друг под другом, их необходимо разнести по разным дата-бэндам (т.е. первый отчет - в первом бэнде Masterdata, второй - во втором и т.д.).
На использование SubReports накладываются следующие ограничения:Представляет собой прямоугольник с крестиком внутри. Если в мемо объекта поместить ссылку на переменную либо на поле таблицы БД, то крестик будет показан при ненулевом значении переменной. В мемо можно также поместить символ “0” либо отличный от нуля.
В инспекторе объектов можно выбрать тип CheckBox’a: с крестиком или с галочкой (свойство CheckStyle).
Примечание
. Все вышеописанные объекты являются встроенными. Для использования этого объекта и всех прочих в run-time следует использовать соответствующий компонент из палитры компонентов FR. Если открываемый отчет содержит неподключенные компоненты, то выдастся сообщение об ошибке.Предназначен для вставки графика или диаграммы в документ. Возможно использование шести типов графиков: линии, точки, столбцы горизонтальные и вертикальные, области и круговые диаграммы. Редактор объекта представляет собой блокнот с тремя закладками: "Тип", "Данные" и "Пометки". Здесь можно задать различные опции для графика
, а также указывать объекты, содержимое которых будет использовано при построении графика.На этой закладке можно выбрать один из шести типов диаграммы, а также указать различные опции:
При построении отчета информация будет накапливаться в мемо:
Заголовок1;Заголовок2;Заголовок3
Число1;Число2;Число3
График можно построить и вручную, если занести в мемо объекта соответствующие значения. Если количество строк заголовка не соответствует количеству значений, график выведен не будет.
Для построения графика необходимо указать имена двух объектов типа "Текст", в которых содержится название и соответствующее числовое значение. При построении отчета содержимое этих объектов будет накапливаться в мемо диаграммы.
Если объект содержит число в форматированном виде или комбинацию числа и строки (например, "$1000" или "10 000"), то FR попытается выделить числовую часть из строки. Алгоритм выделения - удаляются все нецифровые символы в начале и в конце строки, после этого удаляются все символы - разделители разрядов (как правило, пробелы). То есть если задано более сложное форматирование, например: "10000км2", то такие объекты использовать уже нельзя. В этом случае следует создать невидимый объект с аналогичным содержимым, но без всякого форматирования, и указывать его имя. Невидимым объект можно сделать с помощью инспектора объектов в дизайнере, установив параметр Visible в 0.
Объект позволяет легко строить графики типа "Top10", т.е. график, в котором представлены только первые самые большие значения, а остальные значения просуммированы в отдельную группу с названием. Для этого необходимо указать количество выводимых значений и подпись (обычно в качестве подписи используется слово "Другие").
На этой закладке можно указать, какие значения выводить в качестве пометок.
Программирование в дизайнере отчетов
Этот раздел будет полезен Вам только в том случае, если необходима какая-либо дополнительная обработка данных: например, в зависимости от значения поля VIP следует печатать (или не печатать) те или иные поля отчета. Или при печати карточки каким-то образом учитывать срок действия карточки.
Следует помнить, что ряд полей данных клиентов в СКД AS101 может быть настроен на использование нестандартным образом, что и дает возможность проводить дальнейшую обработку данных непосредственно в отчете.
В каждом объекте может быть размещен один или несколько (блок) операторов. Редактирование скрипта производится в окне редактора текста (для того, чтобы увидеть скрипт, надо нажать кнопку
Скрипт имеется не только у объектов. И бэнды, и страницы отчета
также имеют свой скрипт. Вызвать скрипт бэнда можно, вызвав редактор свойства OnBeforePrint бэнда (из инспектора объектов, либо выделив бэнд и нажав Ctrl+Enter). Вызвать скрипт страницы отчета можно, вызвав редактор свойства OnBeforePrint страницы (для этого надо щелкнуть на пустом месте страницы и вызвать редактор из инспектора объектов). Диалоговая форма, как и страница отчета, имеет скрипт - свойство OnActivate. Скрипт остальных объектов может быть вызван через их свойство Memo либо при нажатии Ctrl+Enter.
Написание кода ("на что можно ссылаться в скрипте")
В скрипте можно использовать свойства и методы объектов отчета, поля таблиц БД, различные константы. Также можно создавать переменные и массивы, которые будут доступны во всем отчете. Кроме того, можно использовать процедуры и функции.
Использование переменных
Переменную описывать не надо, она имеет тип Variant. В имени переменной можно использовать латинские буквы, цифры и знак подчеркивания. Переменную из скрипта можно использовать в объектах, и наоборот, переменную из списка переменных можно использовать в скрипте.
Скриптовые переменные хранятся в объекте TfrVariables, к которому есть доступ через глобальную переменную frVariables.
Кроме этого, можно обращаться к переменным, определенным в словаре данных, к системным переменным, а также пользовательским переменным. При этом переменные могут содержать в имени недопустимые с точки зрения синтаксиса символы (например, системная переменная Page#). Обращаться к таким переменным следует с использованием квадратных скобок:
begin
a := [Page#];
end
Массивы
В скрипте, помимо переменных, можно создавать массивы. Массивы могут быть только одномерными, но можно организовать доступ к элементам массива таким образом, что можно трактовать массив как двумерный или с большим количеством измерений.
Пример использования массива:
begin
MyArr[0] := 'a'; MyArr[1] := 'b'; MyArr[3] := 'd';
MyArr[2] := MyArr[0] + MyArr[1] + 'c' + MyArr[3];
end;
Фактически значения элементов массива хранятся в списке frVariables в виде
Arr_имя массива_индекс. Т.е. в вышеприведенном примере мы получим содержимое frVariables:
Arr_MyArr_0 := 'a'
Arr_MyArr_1 := 'b'
Arr_MyArr_2 := 'abcd'
Arr_MyArr_3 := 'd'
Константы
В скрипте можно использовать константы. Простейший пример - использование числовых, строковых и логических констант:
begin
a := 0;
b := 'abcd';
c := True;
d := 'That''s all!';
end;
Обратите внимание на использование одинарной кавычки внутри строковой константы - как и в Pascal, ее надо дублировать
: d := 'That''s all!'.Кроме простых констант, в скрипте доступны константы - названия цветов, стилей шрифта и пр. Вот список констант, которые можно использовать:
– цвета:
clWhite, clBlack и т.п. - все стандартные цвета + системные цвета;результат работы диалогового окна: mrNone, mrOk, mrCancel;
– служебные
: CRLF, Null;– стиль шрифта:
fsBold, fsItalic, fsUnderline;– рамка объекта:
frftNone, frftRight, frftBottom, frftLeft, frftTop;выравнивание текста в объекте "Текст": frtaLeft, frtaRight, frtaCenter, frtaVertical, frtaMiddle, frtaDown;
выравнивание по бэнду: baNone, baLeft, baRight, baCenter, baWidth, baBottom.
Кроме того, определены константы для подключаемых объектов, например,
csCheck для объекта "CheckBoxObject". Все, что можно видеть в выпадающих списках свойств в инспекторе объектов, можно использовать как константу в скрипте.
Обращение к объектам
В скрипте можно обращаться к свойствам и методам объектов отчета.
К объектам отчета относятся визуальные объекты, элементы управления, бэнды, страницы отчета, сам отчет. Для обращения к объекту применятся точечная нотация, например: Memo1.Text. Для обращения к собственным свойствам или методам точечная нотация необязательна.Свойства, к которым возможно обращение, отображены в инспекторе объектов. К некоторым комплексным свойствам (например, Font) возможно обращение как к
Font.Name, Font.Size и т.п.:begin
Memo1.Font.Name := 'Courier New';
Memo1.Font.Size := 10;
Memo1.Font.Color := clRed;
Memo1.Font.Style := fsBold + fsItalic
end;
К свойствам типа TStrings (Memo, SQL, Items и пр.) возможен доступ по индексу:
if
Memo1.Lines[1] = 'a' thenMemo1.Lines[1] := 'b'
Также к таким свойствам могут применяться операции Add, Delete, Clear и Count:
if
Memo1.Lines.Count > 10 thenMemo1.Lines.Delete(10)
else
begin
Memo1.Lines.Clear;
Memo1.Lines.Add('a');
end;
Полный список свойств и методов объектов см. в разделе "Свойства и методы объектов".
Следует отметить, что обращение к несуществующему методу или свойству не приведет к сообщению об ошибке. Поэтому следует быть осторожным при написании кода.
Свойства и методы объектов дизайнера отчетов
Все визуальные объекты отчета являются потомками класса TfrView. Он имеет следующие свойства и методы, к которым можно обращаться из скрипта:
Свойство |
Тип |
Описание |
BandAlign |
Integer |
Выравнивание внутри бэнда. Одна из констант baNone, baLeft, baRight, baCenter, baWidth, baBottom. |
Enabled |
Boolean |
Разрешает или запрещает работу объекта. |
FillColor |
Integer |
Цвет фона объекта. Может быть задан константой clXXX. |
FrameColor |
Integer |
Цвет рамки объекта. |
FrameStyle |
Integer |
Стиль линии рамки. Одна из констант psSolid, psDash, psDot, psDashDot, psDashDotDot, psDouble. |
FrameTyp |
Integer |
Тип рамки объекта - набор констант frftTop, frftBottom, frftLeft, frftRight. |
FrameWidth |
Double |
Толщина рамки. |
Height |
Integer |
Высота объекта. |
Left |
Integer |
Координата Х левого верхнего угла объекта. |
Memo |
String |
Текст, находящийся в мемо объекта. К этому свойству можно также обращаться с использованием индекса, например: Memo[1]. |
Memo.Count |
Integer |
Возвращает количество строк в мемо. |
Name |
String |
Имя объекта. |
Stretched |
Boolean |
Является ли объект растягиваемым. |
Top |
Integer |
Координата Y левого верхнего угла объекта. |
Visible |
Boolean |
Видимость объекта. (при печати) |
Width |
Integer |
Ширина объекта. |
Методы:
Метод |
Параметры |
Описание |
Hide |
- |
Аналогично установке Visible := False. |
Memo.Add |
String |
Добавляет строку в мемо. |
Memo.Clear |
- |
Очищает мемо. |
Memo.Delete |
Integer |
Удаляет строку с данным индексом из мемо. |
Show |
- |
Аналогично установке Visible := True. |
Стандартные объекты
Помимо общих свойств и методов, которые были рассмотрены выше, объект имеет собственные свойства:
Свойство |
Тип |
Описание |
Alignment |
Integer |
Выравнивание текста внутри объекта. Набор значений frtaLeft, frtaRight, frtaCenter, frtaVertical , frtaMiddle, frtaDown. |
AutoWidth |
Boolean |
Если True, ширина объекта устанавливается равной ширине имеющегося в объекте текста. |
CharSpacing |
Integer |
Расстояние между символами. |
Font.Name |
String |
Имя шрифта, которым будет выведен текст объекта. |
Font.Size |
Integer |
Размер шрифта. |
Font.Style |
Integer |
Стиль шрифта. Набор констант fsBold, fsItalic, fsUnderline. |
Font.Color |
Integer |
Цвет шрифта. |
GapX |
Integer |
Промежуток между рамкой объекта и текстом. |
GapY |
Integer |
Промежуток между рамкой объекта и текстом. |
HideZeros |
Boolean |
Если True, не выводить нулевые значения переменных. |
LineSpacing |
Integer |
Расстояние между строками текста. |
Suppress |
Boolean |
Подавлять повторяющиеся значения. |
TextOnly |
Boolean |
Если True, обработка переменных не производится. |
WordBreak |
Boolean |
Переносить слова по слогам (только русские слова). |
WordWrap |
Boolean |
Переносить длинные слова на следующую строку. |
Методы: нет.
Объект "Рисунок" (TfrPictureView)
Свойство |
Тип |
Описание |
BlobType |
Integer |
Тип рисунка, содержащегося в BLOb-поле. Одна из констант btBMP, btJPG, btICO, btWMF. |
Center |
Boolean |
Центрировать рисунок внутри объекта. |
DataField |
String |
BLOb-поле таблицы, содержащее рисунок. |
KeepAspect |
Boolean |
Сохранять пропорции рисунка при растягивании. |
Подключаемые объекты
Объект "Прямоугольник с тенью" (TfrRoundRectView)
Этот объект является потомком объекта "Текст".
Следовательно, он имеет тот же набор свойств и методов, что и родитель, и кое-что свое:
Свойство |
Тип |
Описание |
BeginColor |
Integer |
Начальный цвет градиентной заливки. |
EndColor |
Integer |
Конечный цвет градиентной заливки. |
Gradient |
Boolean |
Использовать градиентную заливку. |
RoundRect |
Boolean |
Использовать закругление. |
RoundSize |
Integer |
Размер закругения. |
ShadowColor |
Integer |
Цвет тени. |
ShadowWidth |
Integer |
Ширина тени. |
Style |
Integer |
Стиль градиентной заливки . Одна из констант gsVertical, gsHorizontal, gsElliptic, gsRectangle, gsHorizCenter, gsVertCenter. |
Методы: нет.
Объект "Фигура" (TfrShapeView)
Свойство |
Тип |
Описание |
Shape |
Integer |
Тип фигуры. Одно из значений skRectangle, skR oundRectangle, skEllipse, skTriangle, skDiagonal1, skDiagonal2. |
Методы: нет.
Объекты "RichText", "RichText 2.0" (TfrRichView, TfrRXRichView)
Свойство |
Тип |
Описание |
GapX |
Integer |
Промежуток между рамкой объекта и текстом. |
GapY |
Integer |
Промежуток между рамкой объекта и текстом. |
TextOnly |
Boolean |
Если True, обработка переменных не производится. |
DataField |
String |
BLOb-поле таблицы, содержащее данные. |
Методы: нет.
Объект "Штрихкод" (TfrBarcodeView)
Свойство |
Тип |
Описание |
DataField |
String |
Поле таблицы, содержащее данные. |
Методы: нет.
Объект "Бэнд" (TfrBandView)
Свойство |
Тип |
Описание |
Breaked |
Boolean |
Бэнд является разрываемым. |
ChildBand |
String |
Дочерний бэнд. |
ColumnGap |
Integer |
Промежуток между колонками. |
Columns |
Integer |
Количество колонок у дата-бэнда . |
ColumnWidth |
Integer |
Ширина колонки. |
Condition |
String |
Условие группировки для бэнда group header. |
DataSource |
String |
Источник данных для дата-бэнда. |
EOF |
Boolean |
True, если достигнут конец набора записей, связанного с бэндом. |
FormNewPage |
Boolean |
Формировать новую страницу после печати бэнда и всех его детальных бэндов. |
Master |
String |
Бэнд, по которому выполняется группировка. |
OnFirstPage |
Boolean |
Печатать на первой странице. |
OnLastPage |
Boolean |
Печатать на последней странице. |
PrintChildIfInvisible |
Boolean |
Печатать дочерние (child) бэнды, если родительский бэнд невидимый. |
PrintIfSubsetEmpty |
Boolean |
Печатать бэнд, если его детальный список пуст. |
RepeatHeader |
Boolean |
Повторять бэнд на новой странице. |
Методы:
Метод |
Параметры |
Описание |
First |
- |
Устанавливает источник данных, связанный с бэндом, на первую запись. |
Next |
- |
Устанавливает источник на следующую запись. |
Prior |
- |
Устанавливает источник на предыдущую запись. |
Объект "CheckBox" (TfrCheckBoxView)
Свойство |
Тип |
Описание |
CheckColor |
Integer |
Цвет крестика. |
CheckStyle |
Integer |
Стиль (крестик/галочка). Константы csCross, csCheck. |
DataField |
String |
Поле таблицы, содержащее данные. |
Методы: нет.
Примеры программирования в дизайнере отчетов
Вот некоторые простые примеры использования интерпретатора:
if
[Сумма] < 2000 thenFillColor := clTransparent
else if [Сумма] < 10000 then
FillColor := clGreen
else
FillColor := clRed
Цвет можно задать числом, например:
FillColor := 128 + 128*256 + 128*65536 //(
серый цвет)if
[Сумма] > 2000 thenVisible := 1 else
Visible := 0
if FreeSpace * 5/18 < 30 then NewPage
CurY := PageHeight - Height