gifts2017

Документы в Word без конфигуратора

Опубликовал vovan_victory vovan_victory (vovan_victory) в раздел Печать - Универсальные печатные формы

Как правило, текст трудового договора кадровики набирают в Word. Потом файл с текстом передают программисту и просят сделать печатную форму для справочника Сотрудники. Программист выполняет поставленную задачу, и у справочника появляется новая печатная форма с нужным текстом и автоматическим заполнением основных параметров (ФИО, паспортные данные и т.д.). Проходит какое то время, и появляется необходимость в редактировании текста трудового договора. Кроме редактирования, может возникнуть необходимость в добавлении еще какого-то договора или соглашения в виде печатной формы. Тогда кадровик обращается за помощью к программисту. Чтобы пользователь сам мог отредактировать текст или добавить новую печатную форму без помощи программиста (или с минимальной помощью программиста), был написан этот инструмент. Скажу сразу. Обработка может показаться сложной и непонятной для обычного пользователя в части формирования источника данных для заполнения файла word (тогда он может обратиться за помощью к программисту), но отредактировать текст договора , на мой взгляд, вполне сможет.    

Обработка подключается как внешняя печатная форма для справочника "Сотрудники организации" в ЗУП ред. 2.5.

С чего начать?

1. Скачиваем обработку и подключаем (стандартный механизм ВПФ)

2. Открываем любой элемент справочника "Сотрудники организации"

3. По кнопке Печать находим подключенную форму (я назвал ВПФ "Выбрать печатную форму").

4. После выбора из списка "Выбрать печатную форму" открывается форма выбора шаблонов Word (список, конечно, будет пуст, и его нужно заполнять)

5. Готовим шаблон в Word. Инструкция по подготовке шаблона вызывается по кнопке "Помощь" в верхней части формы (еще раз ее здесь дублировать нет смысла). Она достаточно понятна и проиллюстрирована.

6. Шаблон подготовили? Теперь загружаем...

7. После того как шаблон сохранен в базе, необходимо настроить заполнение его параметров (ФИО, паспортные данные и т.д.). Источником данных могут являться данные, которые используются при заполнении типовой печатной формы "Трудовой договор" 

  

 Для этого просто не отмечать флажок "Алгоритм". Об остальных способах подготовки данных для заполнения шаблона будет рассказано чуть позже.

8. Переходим к настройке заполнения параметров. Для этого вызываем контекстное меню (правая кнопка мыши) на шаблоне. Выбираем пункт "Настроить печатную форму"

 

Настройка заполнения сводится к сопоставлению имени параметра и имени колонки источника данных.

 Если параметр необходимо заполнить произвольным текстом или отформатировать (ну, скажем, дату), то в колонке "Параметр заполнения" выбираем "Строка пользователя". После выбора "строки пользователя", колонка "Пользовательское поле" становится доступно для редактирования.

 

 На скриншоте приведен пример того, как можно объединить значение колонки источника данных с произвольным текстом.

При необходимости, ФИО или должность можно просклонять. Для этого отмечаем флажок в колонке "Просклонять" и ниже указываем падеж, в котором хотим просклонять.

Если на компьютере есть интернет, то склонение производится через сервис morpher.ru. Этот сервис, на мой взгляд, намного корректнее склоняет, чем типовое склонение, особенно должности, которые состоят из нескольких слов.

Если же интернет отсутствует или по каким-то причинам произойдет ошика на web сервисе, то склонение пройдет с помощью типового алгоритма.

 

После того, как все настроено, закрываем форму настройки и двойным кликом выбираем шаблон для вывода на печать.

 

Как редактировать шаблон? 

Если шаблон Word уже загружен и работает, но есть необходимость в изменении текста, то... (смотрим скрин ниже) 

Жмем кнопку "Сохранить" для выгрузки шаблона на локальный компьютер. Далее, открываем файл и вносим необходимые изменения.

После корректировки, загружаем отредактированный шаблон обратно. Для этого жмем изменить, в появившемся диалоге об изменении данных отвечаем положительно и выбираем измененный файл.

Если при редактировании был изменен не только текст, а также были добавлены новые параметры, то после загрузки измененного шаблона необходимо настроить заполнение этих параметров по описанному выше сценарию.

 

Что делать, если недостаточно данных, полученных из типового алгоритма "Трудовой договор"?

Эта часть, будет больше интересна продвинутому пользователю или программисту.

В обработке предусмотрена возможность формировать свой источник данных для заполнения шаблона Word.

Механизм активируется с помощью установки флажка "Алгоритм". 

Расширенный механизм состоит из 2 частей:

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

 

 

Вторая часть - это тоже некая консоль, но для выполнения кода на встроенном языке. Из этой консоли можно обратиться к запросу (к первой части), выполнить его, полученный результат можно обработать, ну, скажем, в цикле, и так же увидеть результат.

 

На скриншоте наглядно показано, как получить текст и параметры запроса. Так же видно, как выполняется запрос и обрабатывается его результат.

Если что-то не понятно по этой части (произвольный алгоритм), то всегда можно получить ответ из кнопки с вопросительным знаком (она видна на скрине).

Скачать файлы

Наименование Файл Версия Размер
Конструктор документов Word в режиме предприятия 39
.epf 2,52Mb
18.01.16
39
.epf 1 2,52Mb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Иван Иванов (Рэйв) 25.04.16 06:17
>>Чтобы пользователь сам мог отредактировать текст или добавить новую печатную форму без помощи программиста (или с минимальной помощью программиста), был написан этот инструмент

Чем чаще обращаются - тем больше у нас работы, востребованности на рынке труда и выше зарплата. Так что пусть лучше обращаются!
Незачем им привыкать к мысли, что можно обойтись без программиста:-)
2. vovan_victory vovan_victory (vovan_victory) 25.04.16 08:20
(1) Рэйв,
Чем чаще обращаются - тем больше у нас работы

это не мой принцип работы. Если пользователи будут толпами ходить по каждой мелочи, то на другие(серьезные) проекты просто не останется времени. В итоге, развития НОЛЬ. И есть все условия остаться простым "обновляльщиком" и создателем ВПФ.
А в общем, каждый решает сам для себя, чего он хочет достичь и в какие сроки...
3. Алексей Колычев (akolychev) 28.06.16 13:22
Создание шаблона очень замороченное. Идея хорошая конечно, но сколько же времени такие шаблоны ваять?
4. vovan_victory vovan_victory (vovan_victory) 28.06.16 14:07
(3) akolychev,
Создание шаблона очень замороченное

Создание шаблона описанным способом - это стандартный механизм WORD. Чего то нового я не рассказал.

но сколько же времени такие шаблоны ваять?

Не дольше чем делать ВПФ под каждую задачу, а потом всякий раз ее переделывать. Или Вы знаете способ как заполнить параметры шаблона не создав этих параметров?
5. Алексей Колычев (akolychev) 30.06.16 12:44
(4) vovan_victory,

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


Если эта внешняя печатная форма сделана для простых пользователей, то вставлять каждый раз такое поле проблематично, тем более что документы могут таких полей содержать очень много. Гораздо проще было бы, если бы вместо этих замороченных закладок достаточно было вставить к примеру %ФИОРаботника%. Не знаю, понятно ли объяснил, я все таки не программист, а кадровик. Собственно все внешние печатные формы, с которыми мне приходилось работать, функционируют именно по такому принципу - ищут в файле ворд слова выделенные % или &, и заменяют их на нужные значения.
6. vovan_victory vovan_victory (vovan_victory) 30.06.16 13:27
(5) akolychev,
Если эта внешняя печатная форма сделана для простых пользователей, то вставлять каждый раз такое поле проблематично, тем более что документы могут таких полей содержать очень много.

А какая разница что вставлять? Ваше "%" или тоже самое ,но по другой методике? Делать все равно нужно. Только по вашей методике, на проставление "%" уйдет времени гораздо больше.По тому , как в моем варианте, идет выделение мышкой и работа с горячими клавишами. Далее.. после того, как Вы проставите все нужные Вам "%", нужно будет написать такое же количество поисков/замен этих параметров. Так же, если есть новый шаблон(не изменение текста, а новый),то придется вообще делать новую печатную форму с "нуля", а в моем варианте, достаточно настроить параметры в файле, загрузить этот файл и указать соответствие значений этим параметрам. Одним словом, "программирование мышкой".

я все таки не программист, а кадровик.

Понятно. Объясняю.
Для настройки соответствия Параметр = Значение(в пользовательском режиме),сначала, нужно получить список имен всех параметров в файле-шаблоне. Как в Вашем варианте найти эти имена? Если вы будите иска по "%", то на сколько я помню, метод поиска(предлагаемый Вами) прекращает поиск после первого совпадения. Нашли, остановились, дальше запустили поиск. И что дальше? Как определить имя? Вычислять количество символов между вхождениями? Неее. Это не для меня.
В моей же обработке, для выявления всех существующих в файле параметров, используется другой подход(дабы не выполнять один и тот же метод неопределенное количество раз). Это сделано именно для того, чтобы список параметров можно было получить одним обращением к файлу.
Не буду далее описывать работу кода, а лишь скажу: мой принцип - решить задачу минимальным количеством кода. Так оно получается и стабильнее в работе и понятнее программерам, которые захотят посмотреть что я там навоял.

P/S
А вообще, я лишь предоставил свой вариант решения такого рода задачи. Каждый решает для себя сам какие методы применять.
7. Kostya Zhurov (It-developer) 01.08.16 10:45