Настройка интеграции «1С:Управление торговлей 8 Редакция 11» и «1С:Документооборот». Интеграция бизнес-процессов.
Моя первая статья, насколько я могу судить по отзывам пользователей, оказалась достаточно полезной. В данной статье я хочу описать настройку интеграции бизнес-процессов в программе ДО и УТ.
В качестве примера для настройки я использовал описание на официальном сайте фирмы 1С http://v8.1c.ru/doc8/integrate.htm#integration.
В примере достаточно просто описана последовательность бизнес-процессов.
Пример.
Рассмотрим пример, когда в качестве одного из исполнителей бизнес-процесса «Исполнение» в «1С:Документообороте 8» указан не конкретный сотрудник, а внешняя роль «Менеджер по продажам». В этом случае произойдет следующее:
«1С:Документооборот 8» |
«1С:Управление торговлей», ред. 11 |
Для роли «Менеджер по продажам» будет сформирована задача «Исполнить» |
|
Создается и стартует специальный бизнес-процесс «Поручение», в котором эта задача будет указана как задача-источник. Дополнительно к этому поручению будут приложены:
|
|
Происходит обмен внешними бизнес-процессами между «1С:Документооборотом 8» и УТ11 |
|
|
В результате обмена в УТ11 появляется и стартует бизнес-процесс «Задание», в точности повторяющий бизнес-процесс «Поручение» из «1С:Документооборота 8». Он также содержит присоединенные файлы и включает в себя содержание документа из «1С:Документооборота 8» в формате HTML. В результате старта задания появляется задача, назначенная роли «Менеджер по продажам». |
|
Сотрудник, исполняющий в УТ11 роль «Менеджер по продажам», знакомится с этой задачей, приложенным к ней HTML содержанием документа и его файлами и отмечает ее как выполненную. Это приводит к завершению бизнес-процесса «Задание» |
Происходит обмен внешними бизнес-процессами между «1С:Документооборотом 8» и УТ11 |
|
Ранее созданный бизнес-процесс «Поручение» завершается и автоматически помечает свою задачу-источник из бизнес-процесса «Исполнение» как выполненную. Таким образом, бизнес-процесс «Исполнение» продвигается дальше по маршруту |
|
Для примера использованы последние на текущий момент версии конфигураций:
«1С:Управление торговлей 8 Редакция 11», версия 11.0.8.13
«1С:Документооборот ПРОФ», версия 1.2.3.8
Платформа 8.2.15.318
Все настройки необходимо выполнять под учетной записью пользователя с полными правами, правами администрирования.
Настройки, которые необходимо выполнить в базе ДО для того, чтобы стали доступны настройки обмена данными бизнес-процессами:
- На панели Настройка и администрирование, в группе Сервис необходимо открыть пункт Настройки программы.
- В настройках программы необходимо открыть вкладку Обмен данными, установить флаг Использовать обмен данными. Данную настройку необходимо включить для того, чтобы стал доступна настройка Использовать внешние задачи на вкладке Процессы.
- В настройках программы необходимо открыть вкладку Процессы и установить флаги Использовать процессы и Использовать внешние задачи.
После того, как необходимые настройки установлены, следует настроить обмен данными внешними заданиями. Для этого необходимо перейти на панель Настройка и администрирование, слева, в панели навигации следует выбрать пункт Обмен данными.
В открывшемся списке необходимо добавить новый обмен данными Обмен внешними поручениями, нажав кнопку Создать.
В открывшемся окне следует выбрать опцию Шаг 1. Создать новый обмен данными и нажать кнопку Далее.
На следующем этапе настройки обмена данными следует выбрать опцию Нет возможности подключиться ко второй информационной базе напрямую.
Примечание! На данном этапе следует выбирать ту опцию, которая соответствует вашим предпочтениям и возможности подключения ко второй информационной базе. В примере продемонстрирована настройка обмена без возможности подключения ко второй информационной базе.
На следующем этапе следует установить флаг Настроить обмен данными через локальный или сетевой каталог.
Примечание! На данном этапе следует выбирать ту опцию, которая соответствует вашим предпочтениям и возможности организации обмена данными. В примере продемонстрирована настройка обмена для подключения через локальный или сетевой каталог. Также существует настроить возможность обмена данными через FTP или электронную почту. Данные настройки будут доступны на последующих этапах настройки обмена данными.
Если не предполагается обмен данными через FTP, тогда пропустите следующий этап, нажав кнопку Далее. Флаг Настроить обмен данными через FTP-ресурс оставьте не установленным.
Если не предполагается обмен данными через электронную почту, тогда пропустите следующий этап, нажав кнопку Далее. Флаг Настроить обмен данными по электронной почте оставьте не установленным.
На следующем этапе Настройка параметров обмена данными следует указать параметры:
- Наименование второй информационной базы – Управление торговлей 8 Редакция 11
- Префикс второй информационной базы – УТ
Нажать кнопку Далее.
На следующем этапе необходимо проверить правильность настроек для создания нового обмена данными и нажать кнопку Далее.
На следующем (завершающем) этапе будет указан файл настройки для второй информационной базы, его можно сохранить в произвольном месте, нажав кнопку Сохранить. По умолчанию файл настроек будет сохранен по указанному пути.
Следует установить флаг Выполнить выгрузку данных сейчас (рекомендуется) и нажать кнопку Готово.
В результате, в папке обмена будет создано два файла:
- Message_ДО_УТ.zip
- Настройки обмена внешними заданиями.xml
Далее следует настроить роли исполнителей бизнес-процессов. Предварительно, следует убедиться, что использование бизнес-процессов установлено в настройках программы.
Для настройки ролей исполнителей необходимо перейти на панель Управление процессами, слева, в панели навигации следует выбрать пункт Роли исполнителей.
В списке ролей исполнителей необходимо добавить новую роль, нажав кнопку Создать.
В открывшемся окне следует указать Наименование Менеджер по продажам, установить флаг Внешняя роль. В поле Исполнители роли определены в информационной базе следует выбрать узел плана обмена, который был настроен ранее. Нажмите кнопку выбора, в открывшемся окне выберите узел Управление торговлей 8 Редакция 11 плана обмена Обмен внешними заданиями с 1С:Документооборот и нажмите кнопку Выбрать.
Роль исполнителя Менеджер по проджам:
Настройки в программе УТ
На панели Администрирование, слева, на панели навигации следует выбрать пункт Органайзер и документооборот. В настройках справа следует установить флаг Использовать интеграцию с 1С:Документооборот.
На панели Администрирование, слева, на панели навигации следует выбрать пункт Обмен данными. В настройках справа следует установить флаг Обмен данными, указать в поле Префикс узла распределенной информационной базы значение УТ и нажать гиперссылку Обмены данными.
В открывшемся окне следует нажать кнопку Создать и выбрать из списка Создать обмен внешними заданиями с 1С:Документооборот.
В открывшемся окне следует выбрать опцию Шаг 2. Продолжить создание обмена данными, указать путь к файлу настроек, который был создан во время настройки обмена данными в ДО (в примере путь к файлу -D:\!DB\BASES\V82\ExampleTrade11DocMng\BP\Exchange\Настройки обмена внешними заданиями.xml) и нажать кнопку Далее.
В случае, если все настройки корректны будет открыто окно с настройками каталога обмена данными. Настройки будут загружены из файла и следует лишь проверить их и нажать кнопку Далее.
На последующих двух этапах – настройка FTP и электронной почты можно нажать кнопку Далее.
На следующем этапе необходимо проверить правильность настроек для создания нового обмена данными и нажать кнопку Готово.
После создания обмена данными будет открыто окно помощника интерактивного обмена данными. В окне следует нажать кнопку Далее.
После загрузки данных из файла обмена будет открыто окно сопоставления объектов. В данном окне можно нажать кнопку Автоматическое сопоставление (по умолчанию), в случае, если какие-либо объекты будут отображены в списке и нажать кнопку Далее.
Будет выполнена выгрузка данных в файл обмена и откроется окно с информацией о произведенных действиях (выгрузкой/загрузкой). Если есть необходимость, то можно выполнить настройку расписания обмена данными, для этого следует установить флаг Открыть форму настройки расписания и нажать кнопку Готово.
В результате будет добавлен новый обмен данными:
Далее необходимо настроить роли исполнителей в программе УТ. Убедитесь, что настройка Внешние задачи включена.
Для того, чтобы роль исполнителя Менеджер по продажам попала в УТ необходимо выполнить обмен данными в ДО. Для этого следует перейти на панель Настройка и администрирование, слева, в панели навигации выбрать пункт Обмен данными, выбрать настройку обмена данными.
Нажать кнопку Выполнение обмена данными
В открывшемся окне следует нажать кнопку Выполнить обмен.
Далее необходимо выполнить обмен данными в УТ. Выполнение обмена выполняется аналогично как и в ДО.
После выполнения обмена данными в УТ появится новая внешняя роль исполнителя – Менеджер по продажам.
Для настройки внешней роли Менеджер по продажам следует перейти на панель Администрирование, слева, в панели навигации выбрать пункт Органайзер и документооборот, в настройках справа нажать гиперссылку Роли и исполнители бизнес-процессов.
В открывшемся окне появится новая роль исполнителя – Менеджер по продажам. Наименование роли будет выделено темно-красным цветом. Данную роль необходимо будет настроить.
На данном этапе возникает крайне неприятная ситуация. Дело в том, что в релизе 11.0.7.21, например, настройка ролей исполнителей была доступна в панели Администрирование, слева, в панели навигации был расположен пункт Роли и исполнители бизнес-процессов. По нажатии на данный пункт открывалась форма списка регистра сведений, в которой была доступна кнопка Назначить исполнителей.
В релизе 11.0.8.13 такой команды открытия формы списка регистра сведений найти не удалось. Есть команда Роли и исполнители бизнес-процессов на панели Администрирование, в разделе Органайзер и документооборот. Но данная команда вызывает лишь форму списка справочника Роли исполнителей.
Назначить исполнителей для роли Менеджер по продажам из данной формы нельзя.
Надеюсь, что данную неприятную ошибку исправят в последующих релизах.
Способы обхода данной проблемы:
Способ №1.
Можно либо в конфигураторе назначить глобальную команду РегистрСведений.ИсполнителиЗадач.Команда.НастройкаРолевойАдресации
Тогда при нажатии на гиперссылку Роли и исполнители бизнес-процессов будет открываться форма, в которой можно назначить исполнителей для роли Менеджер по продажам.
В открывшемся окне следует выбрать в списке роль Менеджер по продажам и нажать кнопку Назначить исполнителей.
В открывшемся окне следует указать тех исполнителей, которые будут назначены для роли Менеджер по продажам (в примере добавлен пользователь Котеночкин Виктор Иванович) и нажать кнопку Записать и закрыть.
Способ №2.
Открыть Меню -> Все функции…
Выбрать в списке регистров сведений регистр Исполнители задач и нажать кнопку Открыть.
В открывшемся окне нажать кнопку Создать.
В отрывшемся окне нажать указать в поле Исполнитель – Котеночкин Виктор Иванович, в поле Выполняет роль – Менеджер по продажам, нажать кнопку Записать и закрыть.
Все необходимые настройки для исполнения бизнес-процессов между информационными базами УТ и ДО выполнены.
Согласно примеру в базе ДО необходимо сформировать бизнес-процесс Поручение. Для того, чтобы создать данный бизнес-процесс следует перейти на панель Совместная работа, слева, в панели навигации нажать пункт Процессы. В открывшейся справа форме списка выбрать вид процесса Поручение и нажать кнопку Создать.
В открывшемся окне следует выбрать процесс Поручение и нажать кнопку Создать процесс.
В открывшемся окне следует указать:
- Поручение, например - Ознакомиться с файлом "Каталог Стальные конструкции"
- Описание, например - Просьба ознакомиться с файлом Каталог Стальные конструкции
- Предмет, например Файл, и выбрать данный файл из библиотеки файлов
- Кому – роль Менеджер по продажам
- Срок
Далее необходимо нажать кнопку Стартовать и закрыть.
Бизнес-процесс будет запущен. Далее необходимо выполнить обмен данными в ДО, а затем в УТ.
ЗАМЕЧАНИЕ. Автоматический старт бизнес-процесса в программе УТ после обмена будет выполнен, но задача не будет сформирована для пользователей, у которых назначена роль Менеджер по продажам. Для того, чтобы задача отобразилась в списке задач исполнителя (в нашем примере это Котеночкин Виктор Иванович), задачи в УТ необходимо еще раз записать. Это достаточно неудобно, так как задача уже создана, зачем ее еще раз записывать? Проблема в том, что при обмене данными задача создается без необходимых реквизитов, а потому корректно не отрабатывает и не возникает у исполнителя.
Для решения данной проблемы можно выполнить следующее:
Способ №1.
Необходимо исправить правила обмена в ДО, для этого понадобится конфигурация Конвертация данных. В правилах обмена ДО необходимо для правила конвертации объекта ЗадачаИсполнителя в обработчике события ПослеЗагрузки добавить следующий код:
Объект.ГруппаИсполнителейЗадач = БизнесПроцессыИЗадачиВызовСервера.ГруппаИсполнителейЗадач(Объект.РольИсполнителя,
Объект.ОсновнойОбъектАдресации, Объект.ДополнительныйОбъектАдресации);
Если НЕ ЗначениеЗаполнено(Объект.СостояниеБизнесПроцесса) Тогда
Объект.СостояниеБизнесПроцесса = Перечисления.СостоянияБизнесПроцессов.Активен;
КонецЕсли;
Затем правила можно загрузить в обмен данными ДО. Для этого необходимо в настройке обмена данными нажать кнопку Параметры обмена данными, из открывшегося списка выбрать Открыть правила конвертации объектов.
В открывшемся окне выбрать опцию Правила из файла (только для целей отладки), нажать кнопку Загрузить правила, выбрать файл с правилами и нажать кнопку Открыть. После успешной загрузки правил конвертации объектов нажать кнопку Записать и закрыть.
Правила конвертации объектов прилагаются к данной статье .
Способ №2.
Перезаписать все задачи в УТ после обмена.
Теперь, если открыть базу УТ под пользователем Котеночкин Виктор Иванович, то в списке его задач можно видеть поручение, сформированное в ДО.
В форме задачи можно открыть прикрепленный файл Каталог Стальные конструкции. Для завершения задачи необходимо указать дату и время выполнения и нажать кнопку Выполнено.
Далее следует выполнить обмен данными УТ и ДО.
Для проверки завершения бизнес-процесса можно открыть список бизнес-процессов, на панели Совместная работа, слева, в панели навигации нажать пункт Процессы, установить флаг Показать завершенные.
ПРИМЕЧАНИЕ. В ранних релизах 1С:Документооборот 8 ПРОФ, редакция 1.2 (1.2.2.11) наблюдалась следующая ошибка при старте бизнес-процесса:
Ошибка в модуле ВнешниеЗадачиВызовСервераПереопределяемый
Ошибка при выполнении обработчика - 'ВыполнитьПередСозданиемЗадач'
по причине:
{ОбщийМодуль.ВнешниеЗадачиВызовСервераПереопределяемый.Модуль(6)}: Слишком много фактических параметров
РаботаСФайламиВызовСервера.ПолучитьПрикрепленныеФайлыКОбъекту(Объект, МассивФайлов);
Исправить ее можно только в конфигураторе, внесением изменений в процедуру ПолучитьСписокФайлов общего модуля ВнешниеЗадачиВызовСервераПереопределяемый.
Процедура ПолучитьСписокФайлов(Объект, МассивФайлов) Экспорт
// РаботаСФайлами
//<< ReSY
//РаботаСФайламиВызовСервера.ПолучитьПрикрепленныеФайлыКОбъекту(Объект, МассивФайлов);
МассивФайлов = РаботаСФайламиВызовСервера.ПолучитьПрикрепленныеФайлыКОбъекту(Объект);
//>> ReSY
// Конец РаботаСФайлами
КонецПроцедуры