Этикетки



Этикетки

На практике часто возникает необходимость в создании отчетов, предназначенных для рассылки информации рекламного характера потенциальным клиентам или рассылки сведений о результатах деятельности предприятия за отчетный период. В Visual FoxPro для этих целей имеется специальный тип отчетов и соответствующий мастер для создания почтовых этикеток. В данном разделе мы рассмотрим создание этикеток как с помощью мастера, так и в окне конструктора этикеток.



Расширенные средства создания отчетов



Глава 17. Расширенные средства создания отчетов

Использование в отчетах представлений данных Этикетки Использование мастера при создании этикеток Создание этикетки с помощью конструктора Использование в отчетах отношения "один-ко-многим" <



Использование мастера при создании этикеток



Использование мастера при создании этикеток

Сначала рассмотрим создание этикетки с помощью мастера. Выполните следующие действия: Откройте созданный проект. Выберите вкладку Documents (Документы). Установите курсор в группу Labels (Этикетки) и нажмите кнопку New (Новый) окна конструктора проекта. Открывается диалоговое окно New Label (Новая этикетка). Выберите в нем опцию Label Wizard (Мастер этикетки).

Совет
Совет

Для запуска мастера создания этикеток вы можете также в меню Tools (Сервис) выбрать команду Wizards (Мастера), а затем в открывшемся меню — опцию Label (Этикетка).

Запускается мастер по созданию почтовой этикетки. В его первом диалоговом окне выберите источник данных (рис. 17.2), т. е. укажите таблицу, из которой будут выбираться данные, и нажмите кнопку Next (Далее). На втором шаге из предложенного списка наиболее часто используемых размеров этикеток выберите подходящий (рис. 17.3). Столбец Avery содержит наименования этикеток. В столбце Dimensions (Размеры) отображается размер этикетки, а в столбце Columns (Колонки) — количество колонок этикеток, помещаемых на странице. По умолчанию размер этикеток указывается в дюймах, а при установке опции Metric (Метрический) — в миллиметрах.

В этот список можно добавить новые размеры этикеток. Для этого нажмите кнопку New Label (Новая этикетка). Открывается диалоговое окно Custom Labels (Пользовательские этикетки) (рис. 17.4) со списком пользовательских этикеток. В этом окне можно ввести новые размеры этикеток или изменить существующие.

Для создания новой или редактирования существующей этикетки необходимо нажать кнопку New (Новый) или Edit (Редактировать) соответственно. При этом открывается диалоговое окно New Label Definition (Определение размеров новой этикетки) (рис. 17.5), позволяющее ввести размеры этикетки или отредактировать установленные. Введите на схеме размеры этикетки, укажите в поле Label Name (Наименование этикетки) наименование этикетки и нажмите кнопку Add (Добавить) или Update (Обновить) для добавления или изменения этикетки соответственно.



Использование в отчетах отношения "один-ко-многим"



Использование в отчетах отношения "один-ко-многим"

Visual FoxPro поддерживает в отчетах отношение "один-ко-многим". Эта возможность упрощает отображение в отчете иерархических данных.

Добавим в форму просмотра телефонов клиентов и их заказов, созданную в главе 15, средства для печати телефонов просматриваемого клиента. Для этого в форме расположим кнопку для печати телефонов (рис. 17.14) и создадим соответствующий отчет.

Откройте проект sales. Откройте для модификации форму Клиенты и продажи. Добавьте в форму кнопку с надписью Печать. Откройте окно свойств кнопки. Выберите метод click (Нажатие) и введите в окне процедуры следующий текст программы вызова отчета:

curiCdCustomer=icdCustomer

REPORT FORM RepCust TO PRINTER;

FOR PhonCust.icdCustomer=curiCdCustoraer

SELECT PhonCust

SET SKIP TO

select Customer

ThisForm.Refresh!)

Откройте новое окно конструктора отчетов и добавьте в окно Data Environment (Среда окружения) таблицы customer и PhonCust. Главной таблицей отчета является customer, а подчиненной по отношению к ней — таблица PhonCust. Установите связи между этими таблицами и определите свойство опетомапу (Один-ко-многим), выбрав значение True (Истина) (рис. 17.15).

Использование в отчетах представлений данных



Использование в отчетах представлений данных

Вопросы создания отчетов нами уже обсуждались. В этой главе рассмотрим использование при создании отчетов представлений данных, создание отчетов для таблиц, имеющих отношение "один-ко-многим", а также конструирование этикеток.

В главе 14 мы познакомились с представлениями данных, содержащими результат выборки из базовых таблиц базы данных. Их удобно использовать при создании отчетов, так как задавая параметры для представлений данных, можно печатать отчеты, содержащие информацию за определенный интервал времени, о конкретном клиенте и т. п.

Рассмотрим создание отчета, данные для которого находятся в представлении данных, содержащем итоговые суммы продаж по клиентам.

Откройте Проект Sales. Для создания нового отчета откройте окно конструктора отчетов. Откройте окно Data Environment (Среда окружения), выполнив команду Environment (Окружение) из меню View (Вид) или выбрав команду Data Environment (Среда окружения) контекстного меню. Для добавления представления данных в среду окружения выполните команду Add (Добавить) из меню Data Environment (Среда окружения). В открывшемся диалоговом окне Add Table or View (Добавить таблицу или представление данных) установите опцию Views (Представления данных) и выберите из списка представление данных sumcust. Закройте окно Data Environment (Среда окружения). Создайте стандартный отчет, используя команду Quick Report (Стандартный отчет) из меню Report (Отчет). При создании отчета воспользуйтесь размещением по строкам и выберите все поля представления данных. Скорректируйте заголовки полей в полосе Page Header (Верхний колонтитул) отчета. Добавьте в отчет группировку по коду клиента, воспользовавшись командой Data Grouping (Группировка данных) из меню Report (Отчет). В полосе Group Footer (Группа снизу) создайте итоговое поле, которое будет суммировать продажи по каждому клиенту. Добавьте в отчет полосы для размещения заголовка и итоговой части отчета, выполнив команду Title/Summary (Титул/Итоги) из меню Report (Отчет). В заголовке отчета введите текст Стоимость продаж по клиентам.

На рис. 17.1 представлен отчет в окне просмотра, данные для которого находятся в представлении данных sumCust.



Использование представления данных в отчетах



Рис. 17.1. Использование представления данных в отчетах




Выбор источника данных для создания этикеток



Рис. 17.2. Выбор источника данных для создания этикеток




Выбор типа этикетки



Рис. 17.3. Выбор типа этикетки




Диалоговое окно Custom Labels со списком пользовательских размеров



Рис. 17.4. Диалоговое окно Custom Labels со списком пользовательских размеров




Диалоговое окно New Label Definition для определения нового размера этикетки



Рис. 17.5. Диалоговое окно New Label Definition для определения нового размера этикетки


На третьем шаге создания этикетки необходимо расположить поля, знаки пунктуации (точка, запятая, дефис, пробел, двоеточие), сформировав текст этикетки. Этикетка заполняется последовательно, поэтому перед переносом в нее объектов тщательно спланируйте их размещение в этикетке. Для формирования адреса выполните следующие действия: перенесите из списка Available Fields (Имеющиеся поля) в список Selected Fields (Выбранные поля) поле, содержащее почтовый индекс. Для этого дважды щелкните на поле или нажмите кнопку со стрелкой; чтобы разместить запятую, нажмите кнопку с изображением запятой; для размещения пробела перед названием страны нажмите кнопку Space (Пробел); перенесите поле, содержащее название страны; если необходимо расположить данные с новой строки, нажмите кнопку с изображением изогнутой стрелки; аналогично расположите остальные поля этикетки.

Разместив все необходимые поля (рис. 17.6), нажмите кнопку Next (Далее) для перехода к следующему шагу.



Расположение объектов в этикетке



Рис. 17.6. Расположение объектов в этикетке


Теперь следует задать порядок сортировки данных (рис. 17.7). Перенесите из списка Available fields or index tag (Имеющиеся поля и индексы) в список Selected fields (Выбранные поля) поля пли индексы, по которым хотите упорядочить этикетки. Нажмите кнопку Next (Далее). В заключительном окне мастера укажите вариант завершающих действий (сохранение этикетки, сохранение и открытие ее в конструкторе этикеток или сохранение и печать), выбрав соответствующую опцию.

При выборе второй опции созданная этикетка сохраняется на лиске и открывается в окне конструктора этикеток (рис. 17.8). На рис. 17.9 показана созданная с помощью мастера этикетка в окне предварительного просмотра.



Определение порядка сортировки



Рис. 17.7. Определение порядка сортировки




Созданная этикетка в окне конструктора этикеток



Рис. 17.8. Созданная этикетка в окне конструктора этикеток




Созданная этикетка в окне просмотра



Рис. 17.9. Созданная этикетка в окне просмотра


Совет
Совет

В том случае, если при создании этикеток вы хотите использовать вычисляемые поля для объединения полей исходной таблицы, отображения инициалов вместо полного имени и отчества и т. п., предварительно создайте представление данных, содержащее всю необходимую информацию в том виде, в каком нужно, и используйте его при создании этикеток с помощью мастера.





Диалоговое окно New Label



Рис. 17.10. Диалоговое окно New Label


Открывается диалоговое окно New Label (Новая этикетка) (рис. 17.10), где в табличном виде находится список наиболее часто используемых этикеток. Столбцы таблицы имеют следующее назначение:

Avery No — наименование этикетки; Height — высота этикетки; Width — ширина этикетки; Columns — число колонок.

Выберите из предложенных вариантов требуемый тип этикетки и нажмите кнопку ОК. На экране откроется окно конструктора этикеток (рис. 17.11).

Окно конструктора этикеток выглядит примерно так же, как окно конструктора отчетов. Отличие заключается в том, что для этикетки заданы размеры отчета и количество колонок в отчете. В остальном создание этикетки аналогично созданию отчета.

Рассмотрим создание этикетки на примере подготовки адресов для рассылки корреспонденции клиентам, используя информацию из таблицы customer. Этот пример аналогичен примеру создания многоколоночного отчета, описание которого дано в главе 8.

Основное преимущество этикеток, по сравнению с отчетами, состоит в автоматическом выборе размеров этикетки и расстояния между ними. Нет необходимости самостоятельно рассчитывать размер получаемого отчета и заботиться о том, чтобы он поместился на бумаге. При печати на обычной бумаге это преимущество не вполне очевидно, но как только вы начнете использовать для этих целей специальные листы с наклейками, вы ощутите удобство выбора типа наклейки.



Окно конструктора этикеток



Рис. 17.11. Окно конструктора этикеток


Для создания этикетки выполните следующие действия:

В меню File (Файл) выберите команду New (Новый). В открывшемся диалоговом окне New (Новый) установите опцию Label (Этикетка) и нажмите кнопку New file (Новый файл). В открывшемся диалоговом окне New Label (Новая этикетка), содержащем список типов наиболее часто используемых этикеток, выберите этикетку такого типа, которая удовлетворяет вашим требованиям. Откройте окно Data Environment (Среда окружения) и добавьте в него таблицу Customer. Воспользовавшись командой Quick Report (Стандартный отчет) из меню Report (Отчет), перенесите в этикетку поля, содержащие почтовый индекс, страну проживания клиента, его адрес, фамилию, имя и отчество. При этом выберите размещение полей по строкам. В окне конструктора разместите поля так, как это принято для почтовых этикеток в конкретной стране. В рассматриваемом примере будем считать, что почтовые этикетки изготавливаются для рассылки в пределах СНГ, поэтому расположим их так, как показано на рис. 17.12.

Расположение полей при создании почтовых этикеток



Рис. 17.12. Расположение полей при создании почтовых этикеток




Просмотр почтовых этикеток



Рис. 17.13. Просмотр почтовых этикеток


Просмотрите созданные этикетки в окне просмотра. В результате вы увидите отчет, показанный на рис. 17.13.

Замечание
Замечание

В том случае, если вы хотите изменить количество этикеток, печатаемых на одной странице, или порядок их расположения, выберите в меню File (Файл) команду Page Setup (Параметры страницы). Затем в открывшемся диалоговом окне Page Setup (Параметры страницы) установите новые значения параметров, как при работе с обычным отчетом. Сохраните созданную этикетку. Для этого в меню File (Файл) выберите команду Save as (Сохранить как). Если работа над этикетками закончена, напечатайте их, воспользовавшись командой Print (Печать) из меню File (Файл).



Форма Клиенты и продажи



Рис. 17.14. Форма Клиенты и продажи




Установка отношения "один-ко-многим"



Рис. 17.15. Установка отношения "один-ко-многим"




Отчет для печати телефонов клиентов



Рис. 17.16. Отчет для печати телефонов клиентов




Отчет для печати телефонов клиентов в окне просмотра



Рис. 17.17. Отчет для печати телефонов клиентов в окне просмотра


В заголовке отчета расположите его название. Добавьте в отчет группировку по коду клиента. В полосе Group Header (Группа сверху) разместите поля из таблицы customer и надписи к ним, а также надписи к полям из таблицы Phoncust. В полосе Detail (Детали) разместите поля из таблицы Phoncust. Созданный отчет представлен на рис. 17.16. Сохраните отчет под именем RepCust. Запустите на выполнение форму Клиенты и продажи. Для печати телефонов клиента, на котором установлен курсор, нажмите кнопку Печать телефонов. На рис. 17.17 приведен вариант просмотра отчета на экране.



Создание этикетки с помощью конструктора



Создание этикетки с помощью конструктора

При создании сложных этикеток вы можете использовать конструктор этикеток. Для его открытия выполните одно из перечисленных ниже действий. В меню File (Файл) выберите команду New (Новый). В открывшемся диалоговом окне New (Новый) установите опцию Label (Этикетка) и нажмите кнопку New file (Новый файл). Нажмите кнопку New (Новый), предварительно выбрав на вкладке Documents (Документы) в окне проекта группу Labels (Этикетки), и в открывшемся диалоговом окне New Label (Новая этикетка) выберите опцию New Label (Новая этикетка).