Бесшовная интеграция 1С:ERP и 1С:Документооборот

Как настроить бесшовную интеграцию между 1С:ERP и 1С:Документооборот?

В учетных системах (1С:Бухгалтерия, 1С:Управление торговлей, 1С:Зарплата и управление персоналом или 1С:ERP) может возникнуть необходимость отправить учетный документ на обработку в 1С:Документообороте. Для решения этой задачи необходимо в учетной системе настроить бесшовную интеграцию с 1С:Документооборотом.



Настройки обменов и бесшовная интеграция в 1С:Документооборот подробно рассмотрены в видео-курсе, заказать который можно по ссылке http://video.doc-lvv.ru/

Перед настройкой бесшовной интеграции желательно предварительно настроить синхронизацию данных НСИ. Как это сделать, написано в статье "Обмен НСИ с 1С:ERP в 1С:Документооборот".
В статье "Публикация на веб-сервере базы 1С:Документооборот" описано, как опубликовать веб-сервис DMService на веб-сервере. Проверим работу веб-сервиса документооборота – наберем в браузере: http://localhost:8080/doc/ws/dm.1cws?wsdl.
Заходим в программу 1С:ERP.
В 1С:ERP под Администратором открываем раздел «Администрирование», панель навигации «Интеграция - 1С:Документооборот». Заполняем параметры интеграции.
Войдем теперь в 1С:ERP под пользователем, который также есть в 1С:Документообороте (в нашем примере это пользователь Козлов).
Для того, чтобы Козлов смог увидеть свои задачи 1С:Документооборота из 1С:ERP ему нужно указать настройки авторизации.
Теперь доступны задачи и другие функции 1С:Документооборота из интерфейса 1С:ERP.
Продолжим настройку интеграции под Администратором.
Нажимаем на ссылку «Правила интеграции с 1С:Документооборотом».

Обмен контрагентами

Создаем правило для обмена контрагентами. Хотя у нас контрагенты обмениваются через правила обмена, все равно будет полезно их интегрировать через бесшовную интеграцию, чтобы можно было запускать на основании контрагентов процессы.
Откроем теперь справочник «Контрагенты» (будьте внимательны, именно Контрагенты, а не Партнеры).
И отправим поставщика «Транспортная компания» на согласование другому сотруднику (например, Волкову).
У Волкова в 1С:ERP придет задача.
Также данная задача будет видна у Волкова и в 1С:Документооборот.

Обмен договорами

Перед заполнением правила перейдем в 1С:Документооборот и создадим новую папку «Договоры».
И создадим новые виды внутренних документов «Договор с поставщиком», «Договор с клиентом» и «Договор прочий». Настройки у всех видов договор будут одинаковыми.

В 1С:ERP создадим новое правило интеграции для договоров. Заполним правила заполнения реквизитов 1С:Документооборота.
Значение папки указываем из значений списка папок внутренних документов 1С:Документооборот. Реквизит не обновляемый.
Для заполнения вида документа воспользуемся выражением на встроенном языке.
Поле ответственный в 1С:Документообороте заполним значением Менеджер из 1С:ERP. Поскольку у нас справочник «Пользователи» синхронизирован, то можно не беспокоиться, что в 1С:Документообороте окажется данный пользователь, который есть в 1С:ERP.
Проверим работу нашего правила из 1С:ERP в 1С:Документооборот.
Создаем новый договор в 1С:ERP.
В панели навигации Договора переходим в Документооборот и нажимаем ссылку «Создать внутренний документ».
Дозаполняем поля «Вариант продления» и нажимаем кнопку «Записать и закрыть».
Теперь можем с данным внутренним документом работать как с обычной карточкой 1С:Документооборот: прикладывать файлы, запускать процессы, учитывать трудозатраты, вести переписку.
В правилах заполнения часть реквизитов обновляемые. За обновление реквизитов связанных объектов отвечают два регламентных задания:

  • «Интеграция с 1С:Документооборотом – Выполнить обмен данными» на стороне 1С:ERP;
  • «Формирование сообщений обмена для интегрированных систем» на стороне 1С:Документооборота.

Откроем эти регламентные задания, зададим им расписание и укажем пользователя, под кем они должны исполняться.
Проверим обновляемость реквизитов. В 1С:ERP в договоре поменяем менеджера: вместо Волкова поставим Козлова. В наших правилах поле «Подготовил» указано как не обновляемое, а поле «Ответственный» - обновляемое.
Заполним правила заполнения реквизитов 1С:ERP. Зеркально заполним поля обратного заполнения из 1С:Документооборот в 1С:ERP.
Поле «Статус» заполним выражением на встроенном языке.

Обмен заявками на расходование денежных средств

Перед заполнением правила перейдем в 1С:Документооборот и создадим новую папку «Заявки». Дадим на нее права всем пользователям только на чтение и изменение (пользователи в ДО должны иметь права только на добавление файлов счетов к заявкам). Как настроить права на разные реквизиты в зависимости от состояния документа познакомимся в теме права доступа.
Создадим новый вид внутреннего документа «Заявка на расходование ДС».
Создаем новое правило интеграции для заявок на расходование ДС. Заполняем закладку «Передача в 1С:Документооборот».
На закладке «Передача из 1С:Документооборот» заполняем только поле «Статус».
В 1С:ERP создаем на основании договора заявку на расходование ДС.
Создадим внутренний документ по данной заявке.
Видим, что все настроенные данные мигрировали в карточку документа.
Теперь согласуем и утвердим данную карточку в 1С:Документообороте. В самой заявке на расходование средств в 1С:ERP состояние должно установиться в значение «К оплате».


Настройки обменов и бесшовная интеграция в 1С:Документооборот подробно рассмотрены в видео-курсе, заказать который можно по ссылке http://video.doc-lvv.ru/

33 комментария:

  1. Доброго времени суток!
    Есть 1С:ERP Управление предприятием 2 (2.1.3.82) и Документооборот 8 КОРП, редакция 2.0 (2.0.15.6).
    Настраиваю бесшовную интеграцию.
    В правилах обмена при указании "Вида документа" не могу выбрать пункт "Из выражения на встроенном языке".
    Не подскажите в чем может быть дело?
    С уважением, Сергей.

    ОтветитьУдалить
  2. Разобрался.
    Через условия применимости все сделал как хотел.

    ОтветитьУдалить
  3. Владимир, добрый день!
    А возможна обратная интеграция, когда документ создается в 1С:ДО и мигрирует в учетную систему? А если к одной базе ДО подключено несколько учетных систем?
    С уважением, Александр.

    ОтветитьУдалить
  4. Здравствуйте, а можно рассказать об интеграции с 1С БП КОРП? Спасибо.
    Проблема в том, что не удается правило создать. Список объектов БП Корп программно ограничен.

    ОтветитьУдалить
  5. Добрый день Владимир!
    Работаю с заявками на расход ДС.
    Воссоздала полностью весь описанный путь. Заявки в ДО создаются, согласование и утверждение заявок проходит нормально.
    Но обратно в ЕРП данные не попадают. Статус документа Заявка (в ЕРП) не меняется. В чем собака зарыта? Не нужно ли опубликовывать на веб сервере и базу ЕРП в том числе?

    ОтветитьУдалить
    Ответы
    1. Здравствуйте.
      У меня такая же проблема. После согласования в ДО статус заявки в ERP не меняется. Пробовал самые разные варианты настроек, в том числе те, что в данной статье.

      Вам удалось решить проблему?

      Удалить
    2. Пробовали указать логин и пароль в ERP пользователя ДО?

      Удалить
    3. Если вы про константы "Имя пользователя для обмена с 1С:Документооборотом" и "Пароль пользователя для обмена с 1С:Документооборотом", то да - все установлено. Ошибок в журнале регистрации при выполнении регламентного задания нет.

      Удалить
  6. Пример моего правила:
    Если Источник.Установлено("statusConfirmation") И Источник.statusConfirmation.name = "Утвержден" И
    Источник.Установлено("statusApproval") И Источник.statusApproval.name = "Согласован" И
    Источник.Установлено("statusPerformance") И Источник.statusPerformance.name = "Исполнен" Тогда
    Результат = Перечисления.мс_СтатусыЗаявкиНаСпеццвет.Выполнен;
    ИначеЕсли Источник.Установлено("statusConfirmation") И Источник.statusConfirmation.name = "Утвержден" И
    Источник.Установлено("statusApproval") И Источник.statusApproval.name = "Согласован" Тогда
    Результат = Перечисления.мс_СтатусыЗаявкиНаСпеццвет.ВРаботеЛить;
    ИначеЕсли Источник.Установлено("statusConfirmation") И Источник.statusConfirmation.name = "Утвержден" И
    Источник.Установлено("statusApproval") И Источник.statusApproval.name = "Не согласован" Тогда
    Результат = Перечисления.мс_СтатусыЗаявкиНаСпеццвет.Аннулирован;
    ИначеЕсли Источник.Установлено("statusConfirmation") И Источник.statusConfirmation.name = "Не утвержден" Тогда
    Результат = Перечисления.мс_СтатусыЗаявкиНаСпеццвет.Аннулирован;
    ИначеЕсли Источник.Установлено("statusConfirmation") И Источник.statusConfirmation.name = "Утвержден" Тогда
    Результат = Перечисления.мс_СтатусыЗаявкиНаСпеццвет.УтвержденоОфисом;
    КонецЕсли;
    Работает

    ОтветитьУдалить
  7. К сожалению, типовые правила у меня так и не заработали. Решил проблему следующим способом:

    В общий модуль "ИнтеграцияС1СДокументооборотПереопределяемый" в пустую процедуру "ПриИзмененииСостоянияСогласования" добавил код:

    Если ТипЗнч(ПредметСогласования) = Тип("ДокументСсылка.ЗаявкаНаРасходованиеДенежныхСредств") Тогда

    Объект = ПредметСогласования.ПолучитьОбъект();
    Если Состояние = Перечисления.СостоянияСогласованияВДокументообороте.НаСогласовании Тогда
    Объект.Статус = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.НЗ_ОтправленаНаСогласование;
    ИначеЕсли Состояние = Перечисления.СостоянияСогласованияВДокументообороте.НеСогласован Тогда
    Объект.Статус = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.Отклонена;
    ИначеЕсли Состояние = Перечисления.СостоянияСогласованияВДокументообороте.Согласован Тогда
    Объект.Статус = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.КОплате;
    КонецЕсли;
    Если Объект.Модифицированность() Тогда
    Объект.Записать(РежимЗаписиДокумента.Запись);
    КонецЕсли;
    КонецЕсли;

    ОтветитьУдалить
  8. Доброго дня. Про изменение статуса и типовые правила. Если серверный вариант работы 1С, тогда как на стороне 1С ERP или УТ или БУХ, так и на стороне 1С ДО необходимо в справочник пользователей добавить пользователя, от имени которого стартует сам сервис 1С. Тогда отрабатывают нормально регламентные задания, при этом в самих заданиях не прописывается имя пользователя. Теперь про типовые правила, при настройки утверждения планов закупок, отправлял документ на утверждение, статусы в ДО отличны от статусов в ERP, совпадал только УТВЕРЖДЕН, написав правило, оно не отрабатывало, хотя указав что статус брать просто из внутреннего документа 1С ДО, все отрабатывало. Спасибо "Виталий Онянов" за подсказку как сделать в предопределяемом модуле прописать код и не мучить одно место. Просто на самом деле не совсем удачный механизм, с написанием правил в настройках интеграции, т.к. отладки 0, и понять что происходит нельзя, или я не нашел.

    ОтветитьУдалить
  9. Добрый день!
    Настроены правила обмена из заказа на внутреннее потребления ERP во внутренний документ ДО. С некоторых пор начала выпадать ошибка.
    Пользователь переходит на вкладку документооборот в заказе на внутреннее потребление, нажимает создать, заполняет документ. При попытке записать связанный документ ДО выходит окно с ошибкой:
    {ОбщийМодуль.ОбработкаЗапросовXDTOДокументы.Модуль(2874)}: Ошибка при вызове метода контекста (Заблокировать)
    ОбъектДО.Заблокировать();
    по причине:
    Не удалось заблокировать запись. Действие (изменение, удаление или блокировка записи) не выполнено.
    Ошибка блокировки объекта. Объект уже заблокирован:
    пользователь: obmen, сеанс: 186, начат: 22.03.2017 в 9:42:39, приложение: WS-соединение
    Из-за чего это может быть?

    ОтветитьУдалить
  10. Не даёт записать внутренний документ в ДО из ERP (при создании связанного документа) с ошибкой "Ошибка работы с интернет. Превышено время ожидания"
    Где можно увеличить это время ожидания?

    ОтветитьУдалить
  11. Здравствуйте!
    У нас из ERP в Документооборот настроена связь. Можно создавать документы ДО на основании документов ERP.
    Возможна ли обратная связь, чтобы из внутреннего документа ДО можно было создавать элемент справочника (например, договор)?

    ОтветитьУдалить
    Ответы
    1. Такой возможности сейчас есть, но в будущем возможно такое появится.

      Удалить
    2. А в правилах обмена можно подобное настроить?

      Удалить
    3. Да, можно.
      Но это уже доработка.

      Удалить
    4. Подскажите, правила обмена есть в базах ERP и ДО.
      В каких правилах нужно настраивать обмен внутренний документ ДО -> договор ERP, в правилах Документооборота или в правилах корреспондента ERP?

      Удалить
  12. Анонимный13 июня 2017 г., 13:45

    Здравствуйте, подскажите, как работает автозаполнение файлов при интеграции?

    ОтветитьУдалить
  13. Анонимный13 июня 2017 г., 13:50

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

    ОтветитьУдалить
  14. Здравствуйте, настроили интеграцию, прописали правила, документы создаются в документообороте в ЕРП, всё работает, но тоже почему-то не подтягивается шаблон файла, хотя в видах документов настроен. В чем может быть причина?

    ОтветитьУдалить
  15. Анонимный22 июня 2017 г., 16:32

    Добрый день!

    Подскажите, пожалуйста - поддерживает ли "бесшовную интеграцию" 1С:Документооборот ПРОФ?

    ОтветитьУдалить
    Ответы
    1. Анонимный22 июня 2017 г., 17:42

      Спасибо!
      В продолжении темы - возможна ли в 1С:ДО ПРОФ публикация через веб-сервис?

      Удалить
    2. В версии ПРОФ есть бесшовная интеграция.
      В ДО ПРОФ можно опуюликовать веб-сервисы.
      Подробное сравнение версий можно почитать вот здесь: http://v8.1c.ru/doc8/versions.htm

      Удалить
  16. Анонимный11 июля 2017 г., 18:53

    Добрый день! Подскажите после обновления пришлось с нуля заполнять все справочники, в результате все элементы перерегистрировались (около 14000 шт.) и обмен проходит по 2 часа, при этом завершается ошибкой (правила дорабатывались сторонней компанией, и после обновления их надо менять)
    Однако вопрос не в этом. Можно ли убрать регистрацию со всех объектов, чтобы система не пыталась их обменять? Это не повредит системе?

    ОтветитьУдалить
    Ответы
    1. После обновления правила возможно тоже надо обновлять, если изменилась структура метаданных.
      Чтобы убрать регистрацию с объектов откройте Все функции, Обработки, Регистрация изменения для обмена данными, указываете узел обмена и нажимаете у объекта правой кнопкой мышкой команду Отменить регистрацию объекта.

      Удалить
  17. Возможно ли в типовом 1С:ДО 2.1 через веб-сервис DMService находить объект по значению доп. реквизита?

    ОтветитьУдалить
  18. Этот комментарий был удален автором.

    ОтветитьУдалить
  19. Добрый день! При синхронизации структуры предприятия два подразделения в ERP связались с одним в ДО.
    Можно ли каким-то образом разорвать одну из связей?
    При попытке переименования одного из подразделений в ERP, связь просто перескакивает

    ОтветитьУдалить
  20. Здравствуйте! У нас 8.3.10.2561, ERP 2.4.1.215, ДО КОРП 2.1.11.5. Недавно начали внедрять. По поводу интеграции франчи говорят, что стандартная интеграция ДО и ERP не работает, тк 1С не умеет проходить аутентификацию Windows (с формулировкой могу ошибаться, я не спец, но это, в общем-то не так важно. главное то, что стандартная не работает, и они предлагают написать свою). Это правда, что стандартная интеграция не работает? У нас Windows 10.

    ОтветитьУдалить
    Ответы
    1. тк 1С не умеет проходить аутентификацию Windows......
      Вероятней всего имеется ввиду что пользователю при первом входе в ЕРП будет предложено ввести пароль от ДО (Вводится 1 раз и запоминается).

      В остальном интеграция работает

      Удалить