Содержание:
1. 1С и модуль Диадок. Постановка задачи
2. Доработка конфигурации 1С. Решение задачи
1. 1С и модуль "Контур.Диадок" Постановка задачи
Интеграция 1С 8.3 с системой электронного документооборота "Контур.Диадок" производится путем подключения модуля "ДиадокПро". О том, как это сделать, подробно описано в документации к этому модулю.
Для типового документооборота в той части, которую поддерживает Диадок, проблем нет. В процессе настройки вам лишь нужно сопоставить виды документов 1С 8.3 и Диадок.
Сложности возникают, если в вашей компании используются документы, которые отсутствуют в перечне допустимых документов Диадок.
(Далее в примере рассматривается конфигурация на базе «1С:Управление холдингом 3.0», в которую добавлены некоторые нетиповые документы.)
Например, на основании полученного документа Диадок нужно создать не привычный типовой документ «Поступление (акты, накладные)», а некий нетиповой документ согласования «ДЗЗ». А уже по результатам согласования в рамках внутренних бизнес-процессов может быть создан (а может и не быть) типовой документ «Поступление (акты, накладные)».
Каким образом научить модуль Диадок создавать нужный нам вид документа?
2. Доработка конфигурации 1С. Решение задачи
Инструмент сопоставления документов 1С 8.3 и Диадок нам не поможет. Просто добавить «свой» документ в этот перечень не имеет смысла, т.к. нужно указать его «ID». А раз Диадок о нем не знает, то и никакого «ID» нам предложить не может. И внутри себя «наш» документ обрабатывать не будет.
Остался вариант: доработать 1С.
Здесь необходимо учесть вот что:
· модуль «ДиадокПро» поставляется в качестве внешней обработки, плюс несколько добавляемых в конфигурацию объектов;
· этот модуль время от времени обновляется разработчиками Диадок;
· функционал создания в 1С импортированных документов сосредоточен во внешней обработке.
Чтобы не изменять модуль Диадок и не получить осложнений с дальнейшими его обновлениями, можно использовать подключаемый модуль. Его активация производится на закладке «Подключаемый модуль» меню «Настройки».
Необходимо вызвать обработчик события «ПолучитьЗаполненныйОбъектДокумента1С».
Текст обработчика:
Обработчик «ПолучитьЗаполненныйОбъектДокумента1С» вызывается два раза:
1) «До» выполнения типовой обработки события. Тогда в качестве Параметров на вход обработчика будут переданы:
· ДокументДД – описание документа Диадок;
· Контент – прикрепленные двоичные данные;
· ПакетДД – описание пакета, в котором находится документ Диадок.
2) «После» выполнения типовой обработки события. Тогда к параметрам добавляется еще свойство
· Результат_ИМ – в нем сохраняется результат типовой обработки. В частности, в свойстве ОсновнойОбъект будет находится созданный типовой документ.
Использовать можно любой вызов. Если достаточно исходных данных только из документа Диадок, то используйте первый вызов. Если дополнительно потребуются данные из создаваемого типового документа – тогда из второго.
Собственно создание документа нужного вида здесь производится в функции кдл_ДиадокСервер.СоздатьСопоставитьДЗЗ_ИзДиадок(), которая может быть произвольной и располагаться в удобном для вас модуле.
Исходными данными для заполнения создаваемого документа могут выступать свойства документа Диадок, которые выглядят следующим образом:
Созданный документ помещается в свойство ОсновнойОбъект параметров обработчика:
Параметры.Вставить(«ОсновнойОбъект», ОбъектДЗЗ);
Задача решена. При получении документов Диадок будет формироваться необходимый нам нетиповой документ.
Способ решения пригоден для любой конфигурации 1С, в которую может интегрироваться модуль
Диадок.Основной.
Специалист компании ООО «Кодерлайн»
Игорь Борисенко.