Библиотека интеграции с 1С:Документооборотом
Подробнее описание библиотеки интеграции с 1С:Документооборотом можно посмотреть подробнее на диске ИТС https://its.1c.ru/db/biddoc#content:304:hdoc
Для ознакомления с набором функций и инструментов библиотеки я использую демонстрационную конфигурацию «Библиотека интеграции с 1С:Документооборотом», редакция 1.1 (1.1.12.2). Ее можно скачать из сайта https://users.v8.1c.ru/ и не является законченным (с предметной точки зрения) прикладным решением.
Форма Документооборот (из обработки Панель администрирования интеграции с 1С:Документооборотом) служит для установки значений констант, необходимых для работы «Библиотеки», и определения состава необходимого пользователям функционала.
Константа АдресВебСервиса1СДокументооборот определяет расположение веб-сервиса. В этом примере используется имя публикации DocumentOborotCorp веб-сервиса конфигурации Документооборот 8 КОРП, редакция 2.1 (2.1.12.2).
1 . Правила интеграции с «1С:Документооборотом»
Справочник Правила интеграции с 1С:Документооборотом задает соответствия между типами объектов интегрируемой конфигурации и типами объектов 1С:Документооборота. Кроме этого, справочник задает правила заполнения реквизитов при создании объектов 1С:Документооборота на основании объектов интегрируемой конфигурации и наоборот.
Доступно для соответствия только по реквизитам 4-х объектов конфигурации 1С:Документооборота: ( табличные части объектов не участвуют)
- Справочник “Входящие документы”
- Справочник “Исходящие документы”
- Справочник “Внутренние документы”
- Справочник “Контрагенты”
Со стороны конфигурации БИД доступны все объекты, которые входят в состав определяемого типа данных ИнтеграцияС1СДокументооборотИнтегрируемыеОбъекты :
- «Демо: Контрагенты»,
- «Демо: Договоры контрагентов»,
- «Демо: Счета на оплату покупателям»,
- «Демо: Заказ покупателя»,
- «Демо: Реализации товаров».
Подробнее о настройке правил интеграции можно посмотреть в документации. Отметим, что возможно установить условие применимости правила при загрузке в 1С:Документооборот , а также условие применимости правила при загрузке из 1С:Документооборота.
Эти условия представляю собой выражение на встроенном языке 1С:Предприятия, определяющие правила при создании объекта 1С:Документооборота на основании объекта этой конфигурации .
Для работы работы с выражением используется переменная Параметры типа структуры. Результат вычисления должен присваиваться свойству Результат. Истина означает применимость правила, Ложь – неприменимость. К реквизитам объекта этой конфигурации можно обращаться через свойство Источник
В данном примере для контрагента, я создал правила для выгрузки контрагента с признаком Юридические Лицо
Следующая функция глобального модуля возвращает массив подходящих правил.
МассивПодходящихПравил = ИнтеграцияС1СДокументооборотВызовСервера.ПодходящиеПравила(ОбъектИС);
Функция используется при создании объекта 1С:Документооборота. Если массив подходящих правил равно нулю, то заращивает у пользователя какой ответ 1С:Документооборота создать. Это на мой взгляд не корректно. Мне кажется, что если подходящих правил нет, то программа не должна позволять пользователю создать объект. В этом примере, функция не нашла подходящее правило, потому, что контрагент является физическим лицом
В случае контрагента вида юридического лица, правило находится создается объект 1С:Документооборота
Связи между объектами конфигурации и объектами 1С:Документооборота хранится в специальном служебном регистре Объекты, интегрированные с 1С:Документооборотом
В плане обмена 1С:Документооборот регистрируются измененные объекты для обмена
Изменения выгружаются при выполнении обмена
2. Переопределяемые общие модули библиотеки БИД
Особого внимания требуют процедуры и функции переопределяемых модулей:
- ИнтеграцияС1СДокументооборотПереопределяемый
- ИнтеграцияС1СДокументооборотКлиентПереопределяемый
Назначение этих функций и процедур описывается в комментариях к ним. Их программные коды могут поставляться по умолчанию уже настроенными для работы с другими объектами БИД без программного кода . В этом случае необходимо оставить свой программный код в теле процедур и функций, которые относятся к функционалу.
Рассмотрим некоторые примеры функций и процедур модуля ИнтеграцияС1СДокументооборотПереопределяемый
2.1 Процедура ЗаполнитьРеквизитыИзПотребителя
Содержит код, заполняющий вторичные ссылочные объекты на основании объектов интегрируемой конфигурации. По умолчанию заполняется только наименование и идентификатор. Для справочников, соответствующих справочникам Контрагенты и Организации, рекомендуется реализовать заполнение свойств inn и kpp, чтобы обеспечить поиск соответствия по этим реквизитам.
// Пример реализации: Если ИнтеграцияС1СДокументооборот.ПроверитьТип(Прокси, ОбъектXDTO, "DMCorrespondent") и ТипЗнч(СсылкаНаПотребитель) = Тип("СправочникСсылка._ДемоКонтрагенты") Тогда ОбъектXDTO.inn = СсылкаНаПотребитель.ИНН; ОбъектXDTO.kpp = СсылкаНаПотребитель.КПП; ИначеЕсли ИнтеграцияС1СДокументооборот.ПроверитьТип(Прокси, ОбъектXDTO, "DMOrganization") и ТипЗнч(СсылкаНаПотребитель) = Тип("СправочникСсылка.Организации") Тогда ОбъектXDTO.inn = СсылкаНаПотребитель.ИНН; ОбъектXDTO.kpp = СсылкаНаПотребитель.КПП; Иначе //... КонецЕсли;
Продолжение следует ……….
Здравствуйте! В разе фразе “которые входят в состав определенного типа ИнтеграцияС1СДокументооборотИнтегрируемыеОбъекты” неточность: не “определенного”, а “определеяемого”.
Спосибо! Текст испрвлен
Добрый день.
Настраиваю интеграцию с ДО – выясняю неожиданные подробности. Оказывается условия применимости – есть не только для выгрузки – но и для загрузки объектов.
При этом, при загрузке – не используется функция “ПодходящиеПравила” – получается, что выгрузится документ может по одним правилам, а загрузиться по каким попадется, можете прокомментировать функцию общего модуля?
ИнтеграцияС1СДокументооборотОбмен.ПолучитьДанные()