Среда, Ноябрь 22, 2017

Персонализация в Corel Draw Часть 2.

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






 

Итак, что мы имеем. Нам нужно напечатать к примеру 300 удостоверений для 300 сотрудников. В удостоверении должен быть указан номер, фамилия, имя, отчество, и должность сотрудника. Это будут переменные данные. Остальной макет - часть не меняющаяся.

Как всегда качаем макет из интернета: http://ksivi.org. Лень самому честно говоря делать. Нашли мы там какое-то удостоверение какой-то организации. Удалил все лишнее и теперь наш макет выглядит вот так:

Ну и конечно для ленивых выкладываю исходник макета. Скачать можно по ссылке.

Исходный макет для персонализации готов, начинаем готовить базу данных для слияния. Как я уже писал ранее, базу данных для персонализации мы будем готовить в Microsoft Excel, хотя и Corel Draw поддерживает другие форматы баз данных. Если быть точнее, то Corel работает с источниками данных ODBC, а это открывает широкие возможности для использования различных баз данных. Подробнее про ODBC, если это интересно можно прочитать тут.

На личном опыте могу сказать что очень просто делаются через ODBC связи с базами MYSQL и ORACLE, но это конечно тема для совсем другой статьи.

Итак, мы выбрали Microsoft Excel, теперь нам нужны исходные данные. Так как Вам нужен конкретный результат, а мне просто показать на примере, мы идем разными путями. Вы руками набиваете себе таблицу с исходными данными, или правите уже готовый, предоставленный заказчиком список фамилий, а я конечно же ищу его в интернете. Первый же запрос в яндексе дает мне необходимый результат. Скачать документ можно с первоисточника. После небольшой корректировки (я удалил первый 2 строки, потому что для персонализации первая строка должна содержать в себе названия столбцов, т.е. всегда первой строкой пишем названия столбцов, а уж потом наши данные. Кстати сразу небольшой совет. При подготовке базы данных для слияния при печати CorelDraw рекомендую все ячейки делать в текстовом формате. Немного позже я объясню, почему нужно делать именно так) наша база выглядит вот так:

Я еще удалил из исходного файла 3 строку, потому что там были номера столбцов, а они нам не нужны. Итак, первый столбец - пусть это будет порядковый номер удостоверения, второй столбец будет фамилия, имя, отчество сотрудника, третий столбец пусть будет должность, сотрудника, а четвертый столбец хоть и называется Дата прохождения флюорографии, но в нашем конкретном случае пусть это будет дата выдачи удостоверения. Кстати последнего поля у нас еще нет в макете, мы его добавим. Сохраняем нашу базу данных на диске, запоминаем путь. Кстати скачать доработанную базу данных можно по ссылке.

Вот и наша база данных для персонализации готова, приступаем непосредственно к подготовке макета для печати переменных данных. Опять возвращаемся в Corel Draw. Добавляем в макет поле дата выдачи удостоверения. Печать переменных данных осуществляется через меню слияние при печати. Выбираем Файл - слияние при печати - создать/загрузить поля слияния. Появляется мастер. В предыдущем материале я писал как делать персонализацию без базы данных, сейчас же базу данных мы подготовили, поэтому выбираем Импортировать текст из файла или источника ODBC. Появляется следующая картинка:

Немного расскажу. Файл - персонализация из текстового файла. Под текстовым файлом понимаются списки с расширениями txt, csv, rtf. Чисто теоретически мы конечно можем перенести нашу базу данных из формата Excel в список, разделенный запятыми, но мы будем делать сразу правильно, поэтому выбираем Источник данных ODBC. В меню выбора источника данных выбираем Источник данных компьютера - Файлы Excel.

Двойным кликом щелкаем на строке Файлы Excel и ищем на диске подготовленную ранее базу данных. Открываем файл, появляется еще одно небольшое окошко в котором видны все наши поля. Corel поддерживает только таблицы Excel, состоящие из одного листа, и если в вашем файле несколько листов, на этом этапе выбирайте нужный лист.

Как видим все в порядке, все поля совпадают. Нажимаем далее, проверяем все ли правильно. В новом окошке проверяем наименования полей.

Смело жмем далее и видим все наши переменные данные.Тут можно исключить какие-то записи.

Если все хорошо опять жмем далее, появляется последнее окно мастера слияния при печати, которое позволит нам сохранить настройки. Жмем Готово. Теперь осталось поставить наши поля на нужные места в макете. 

Сверху появилась панель Слияния при печати. Порядок действий такой. Сначала на панели Слияние при печати выбираем нужную нам переменную. После выбираем в макете текстовую часть, на место которой нужно вставить нашу переменную, на панели Слияния жмем кнопку Вставить.

Точно так проделываем со всеми переменными.

После всех манипуляций, если Вы все делали правильно, наш макет выглядит так:

Я специально выделил красным вставленные поля. Ну вот собственно и все готово. Теперь на панели Слияние при печати нажимаем кнопку Выполнить слияние с новым документом и получаем новый документ с переменными данными.

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

Google

Разработка сайта -  sprohanov.ru