Установка среды окружения отчета
Для отчета, созданного мастером или с помощью команды Quick Report, среда окружения отчета уже определена. Разработчику, создающему отчет с помощью конструктора отчетов, среду необходимо сформировать, выполнив для этого следующие действия:
· разместить в окружении используемые в отчете таблицы;
· установить для таблиц необходимые индексы;
· установите отношения между таблицами.
Вся эта информация, относящаяся к среде окружения, хранится в файле описания отчета. Для формирования среды окружения отчета используется окно Data Environment(Среда окружения).
Для открытия окна «Data Environment», в котором осуществляется настройка среды окружения (рис. 5), вы можете воспользоваться одним из следующих способов:
– Выполните команду View | Data Environment основного меню;
– Выберите команду Data Environment контекстного меню.
В среде окружения необходимо разместить все таблицы, используемые в отчете. Для добавления таблицы в окно используется команда Add контекстного меню или Data Environment | Addосновного меню. Таблицы, связанные между собой в базе данных, переносятся в окно диалога «Data Environment» с сохранением связей, установленных между ними. В этом окне можно также устанавливать связи между таблицами или изменить существующие.
Как и в формах, при создании отчетов можно использовать адаптер курсора. Для этого в контекстном меню расположены две команды. Add CursorAdapter (Добавить адаптер курсора) добавляет в среду окружения отчета адаптер курсора. Команда Builder (Построитель) запускает построитель, осуществляющий настройку адаптера курсора.
После размещения таблиц в среде окружения отчета, необходимо упорядочить данные, находящиеся в таблицах. Для этого выполните следующее действия:
1. Выделите таблицу, в которой хотите упорядочить данные.
2. Откройте окно свойств таблицы. Для этого установите на нее курсор, нажмите правую кнопку мыши и выберите в появившемся контекстном меню команду Properties (Свойства).
3. Выделите свойство Order (Порядок) (рис. 6).
4. В поле изменения свойства нажмите кнопку раскрытия списка. Из списка индексов таблицы выберите тот, по которому необходимо упорядочить данные в отчете.
Рис. 5. Окно диалога «Data Environment»
Рис. 6. Свойство Order используется для упорядочения записей в таблице
Если в отчете используется несколько связанных таблиц, необходимо убедиться, что установлены так, как требуется для создания правильного отчета. Для этого выполните следующие действия:
1. Выделите линию, соединяющею таблицы. При этом в окне свойств Propertiesбудут отображаться свойства, характеризующие установленную связь.
2. Проверте, какая из таблиц является родительской, а какая дочерней по отношению к ней. Для этого просмотрите свойства ChildAlias (Дочерняя таблица) и ParentAlias (Родительская таблица).
3. Просмотрите выражение, по которому связаны таблицы. Для этого воспользуйтесь свойством RelationalExpr (Выражение отношения).
После размещения в окне Data Environment (Среда окружения) все используемых в отчете таблиц, закройте его, после чего Visual FoxPro сохранит созданную среду окружения.
Свойство объектов отчета
Любой отчет состоит из объектов: текста, полей отчета, разделительных линий и рамок, графических изображений. Для настройки их свойств используются команды меню, а также диалоговое окно, которое можно открыть одним из следующих способов:
· дважды щелкните кнопкой мыши на объекте;
· выберите из контекстного меню объекта команду Properties.
Окно свойств содержит несколько вкладок, количество которых различно для разных объектов (рис.7).
Вкладка General (Общие) окна свойств, предназначена для настройки общих параметров объекта.
Расположение объекта в полосе отчета задается переключателем Object position (Положение объекта), который содержит опции, приведенные в табл. 4.
Таблица 4.
Опции переключателя Object position
Опция | Назначение |
Float(Плавающие) | Позиция объекта в отчете может измеряться при изменении размеров окружающих его объектов |
Fix relative to top of band(Постоянное относительно верхнее полосы) | Объект сохраняет постоянную позицию относительно верхней границы полосы |
Fix relative to bottom of band(Постоянное относительно нижней полосы) | Объект сохраняет постоянную позицию относительно нижней границы полосы |
Рис. 7. Диалоговое окно Label Properties
Область Size and position in layout (Размер и положение в шаблоне) содержит поля, определяющие расположение объектов относительно страницы отчета. Их назначение в
табл. 5.
Таблица 5.
Поля области Size and position in layout
Поле | Назначение |
From page top(От заголовка страницы) | Расстояние от заголовка страницы до объекта |
From left(От левой стороны страницы) | Расстояние от левой стороны страницы до объекта |
Height(Высота) | Высота объекта |
Width(Ширина) | Ширина объекта |
Вкладка Style(Стиль) диалогового окна свойств (рис.8) предназначена для настройки оформления объекта. Для текстовых объектов отчета (надпись, поле) на вкладке Styleрасположена область Font(Шрифт), предназначенная для настройки оформления объекта (Табл. 6).
Таблица 6.
Флажки области Font
Флажок | Назначение |
Use font script (Использовать наборсимволов) | Указывает на использование набора символов, заданного при настройке шрифтов в диалоговом окне Шрифт |
Strikethrough(Зачеркнутый) | Текст перечеркнут сплошной линией |
Underline(Подчеркнутый) | Текст подчеркнут сплошной линией |
Область Color (Цвет) содержит флажки, приведенные в табл. 7.
Таблица 7.
Флажки область Color
Флажок | Назначение |
Use default foreground (pen) color(Использовать для цвета текста значение по умолчанию) | Указывает, какой цвет использовать для текста, значение устанавливается по умолчанию или задается с помощью диалогового окна Цвет |
Use default background (fill) color(Использовать для цвета фона значение по умолчанию) | Указывает, какой цвет использовать для фона, значение устанавливается по умолчанию или задается с помощью диалогового окна Цвет |
Рис. 8. Вкладка Style диалогового окна Label Properties
Вкладка Print when окна свойств используется для задания условий печати объектов отчета (рис. 9). С помощью параметров этой вкладки вы можете удалить из отчета пустые строки, определить условия печати значений полей при переходе на следующею страницу или при изменении выражения группы и т. п.
Для подавления печати повторяющихся значений объекта используются значение No переключателя Print repeated values (Печатать повторяющиеся значения). При установленном значении Yes печатаются все значения объекта.
Область Also print (Печатать) содержит флажки, описание которых приводится в табл. 8.
Рис. 9. Вкладка Print when диалогового окна Label Properties
Таблица 8.
Флажки области Also print
Флажок | Назначение |
In first whole band of new page/column (На первой целой полосе новой страницы/колонки) | Объект печатается в первой полосе новой страницы или колонки |
When this data group expression changes (При изменении значения выражения группы) | Объект печатается при изменении значения выражения группы, выбранной в списке групп |
When band content to new page/column (При переходе на новую страницу/колонну) | Объект печатается при переходе полосы Detail на новую страницу/колонку |
При установке флажка Remove line if blank (Удалять пустые строки) пустые строки удаляются из отчета.
В поле Print only when expression is true (Печатать, если истинно), используя построитель выражения, можно задать выражение, вычисляемое перед печатью данного объекта. Если значение выражения ложно, то значение объекта печататься не будет.
Вкладка Protection (Защита) (рис. 10) устанавливает защиту от изменения объектов отчета с помощью конструктора отчетов. Она содержит флажки, описание которых приведено в табл. 9.
Таблица 9.
Флажки вкладки Protection
Флажок | Назначение |
Object cannot be moved or resized(Объект не может быть изменен или перемещен в размерах) | Запрещает перемещение и изменение размера объекта |
Object cannot be edited (Объект не может редактироваться) | Запрещает редактирование объекта |
Object cannot be deleted (Объект не может быть удален) | Запрещает удаление объекта |
Object cannot be selected (Объект не может быть выбран) | Объект не может быть выбран для изменения |
Object is not visible in Designer (Объект не виден в конструкторе) | Объект не видим в конструкторе |
Для того чтобы свойства по защите вступили в силу, необходимо открыть отчет с ключом Protection. Например, MODIFY REPORT MyReport PROTECTED.
Рис. 10. Вкладка Protection диалогового окна Label Properties
Вкладка Other(Другие) (рис. 11) диалогового окна свойств объекта отчета содержит дополнительные возможности для объектов отчета.
Рис. 11. Вкладка Other диалогового окна Label Properties
Вкладка содержит кнопки, назначение которых описано в табл. 10.
Таблица 10.
Кнопки вкладки Other
Кнопки | Назначение |
Edit comment (Редактирование комментария) | Открывает диалоговое окно комментария к объекту отчета |
Edit user data (Редактирование пользовательских данных) | Открывает диалоговое окно, в котором вы можете добавлять или редактировать пользовательские данные |
Edit tooltip (Редактирование всплывающих подсказок) | Открывает диалоговое окно для ввода всплывающей подсказки, которая будет появляться при выборе объекта в конструкторе отчетов |
Edit settings (Редактирование настроек) | Определяются настройки, которые могут использоваться внешним кодом в процессе формирования отчета |