Как устранить ошибку интеграции с 1С:Документооборотом «Сервис недоступен» в 1С:УТ 11.5

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей IT и автоматизация бизнеса
← На главную

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

В рамках этой статьи мы подробно разберем, почему возникает этот «фантомный» вызов, как проанализировать причины его появления через программный код и какие существуют способы окончательного решения проблемы.

Выясняем причину возникновения ошибки

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

  1. Некорректная проверка констант: В программном коде некоторых общих модулей проверка состояния интеграции начала выполняться без учета того, включена ли вообще эта функциональная опция. Система инициализирует параметры подключения «на всякий случай» при старте сеанса.
  2. Фоновые задания: Ряд регламентных заданий, таких как ОбновлениеЗадачИсполнителя, в данных релизах содержит программные вызовы к функционалу 1С:ДО без предварительной проверки константы ИспользоватьИнтеграциюС1СДокументооборот.
  3. Коллизия версий: Появилась новая константа ИспользоватьИнтеграциюС1СДокументооборот3. Логика системы может ошибочно полагать, что если одна из версий интеграции теоретически доступна, нужно проверить адрес веб-сервиса.

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

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

Самое простое решение, которое помогает в ряде случаев, — это «встряхнуть» функциональную опцию. Посмотрим на алгоритм действий:

  1. Перейдем в раздел НСИ и администрирование — Настройка параметров учета — Интеграция с 1С:Документооборотом.
  2. Если флаг «Интеграция с 1С:Документооборотом» снят, установим его.
  3. После установки флага система может потребовать записать изменения. Нажмем кнопку записи.
  4. Снимем флаг обратно и снова сохраним настройки.

Этот метод позволяет платформе корректно перезаписать значения связанных констант и очистить кэш функциональных опций. Если же флаг в интерфейсе отсутствует (как отмечают опытные пользователи в обсуждении), это может означать, что форма настроек была изменена в новых версиях БСП, и доступ к ней стоит искать через «Функции технического специалиста».

Способ 2: Технический анализ и отладка

Если визуальный метод не помог, разберем по шагам, как найти «виновника» вызова через конфигуратор. Это необходимо для понимания того, какой именно объект инициирует обращение к пустому адресу.

Выполним следующие действия в конфигураторе:

  1. Запустим сеанс в режиме отладки.
  2. Установим точку останова в общем модуле ИнтеграцияС1СДокументооборотБазовый (или аналогичном, отвечающем за проверку соединения) в процедуре, которая генерирует запись в журнал регистрации.
  3. Проанализируем Стек вызовов.

Чаще всего цепочка вызовов приводит к процедурам инициализации параметров сеанса или к обработчикам обновления интерфейса. Например, код может выглядеть так:


Процедура ПриНачалеРаботыСистемы()
    // В проблемных релизах вызов может происходить здесь
    ИнтеграцияС1СДокументооборотКлиент.ПроверитьНастройкиИнтеграции();
КонецПроцедуры

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


Если ПолучитьФункциональнуюОпцию("ИспользоватьИнтеграциюС1СДокументооборот") Тогда
    // Только здесь выполняем обращение к сервису
КонецЕсли;

Способ 3: Официальное исправление и патчи

Поскольку проблема носит массовый характер для релизов 11.5.12.64, разработчики 1С выпустили официальное решение. Проанализируем варианты исправления:

  1. Обновление конфигурации: В версии 11.5.12.87 и выше данная ошибка исправлена. Это наиболее рекомендуемый путь. Если требуется регулярно актуализировать несколько баз, этот процесс можно автоматизировать с помощью программы для резервного копирования и обновления конфигураций 1С.
  2. Установка патча: Если оперативное обновление невозможно, следует воспользоваться механизмом исправления ошибок (патчей). Найдите и установите патч с кодом, содержащим исправление для подсистемы ИнтеграцияС1СДокументооборот. Обычно это патчи вида EF_00_XXXXXX.

После установки патча или обновления крайне важно выполнить очистку серверного кэша. Для этого необходимо остановить службу сервера 1С:Предприятия и удалить содержимое папок srvinfo\reg_1541\snacc... (названия временных папок могут отличаться).

Способ 4: Радикальное отключение через журнал регистрации

Если по каким-то причинам вы не можете обновить систему прямо сейчас, а журнал регистрации переполнен, рассмотрим вариант настройки самого журнала. Внимание: это временная мера, устраняющая симптом, а не причину. Для оперативного уменьшения размера файла ЖР пригодится обработка для регламентного сокращения журнала регистрации.

  1. Зайдем в Администрирование — Настройка журнала регистрации.
  2. Изменим уровень детализации или настроим фильтрацию так, чтобы события с определенным текстом ошибки не фиксировались (если это позволяет текущая версия платформы).
  3. Как советуют коллеги в обсуждении, можно временно программно подавить запись конкретного события в модуле ПриЗаписиЖурналаРегистрации, однако это требует внесения изменений в конфигурацию.

Резюме и рекомендации

Выясним причину окончательно: проблема в 11.5.12.64 является следствием «сырого» кода проверки новых констант для 1С:ДО 3.0 в составе БСП. Чтобы ваша база работала стабильно и журнал регистрации оставался чистым, придерживайтесь следующего плана:

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

← На главную