В процессе эксплуатации конфигурации «1С:Управление торговлей» версии 11.5.12.64 и аналогичных релизов (ERP 2.5.12, КА 2.5.12) многие администраторы и разработчики столкнулись с неприятной ситуацией: журнал регистрации заполняется сообщениями об ошибках «Интеграция с 1С:Документооборотом: Сервис недоступен» и «Не указан адрес веб-сервиса 1С:Документооборота». Примечательно, что эта ошибка возникает даже в тех базах, где интеграция с 1С:ДО никогда не настраивалась и флаг использования функционала снят.
В рамках этой статьи мы подробно разберем, почему возникает этот «фантомный» вызов, как проанализировать причины его появления через программный код и какие существуют способы окончательного решения проблемы.
Проанализируем ситуацию: почему система пытается соединиться с сервисом, который отключен? В релизах линейки 11.5.12.х произошли значительные изменения в подсистеме интеграции, связанные с поддержкой новой версии «1С:Документооборот 3.0». Разберем основные причины сбоя:
ОбновлениеЗадачИсполнителя, в данных релизах содержит программные вызовы к функционалу 1С:ДО без предварительной проверки константы ИспользоватьИнтеграциюС1СДокументооборот.ИспользоватьИнтеграциюС1СДокументооборот3. Логика системы может ошибочно полагать, что если одна из версий интеграции теоретически доступна, нужно проверить адрес веб-сервиса.Рассмотрим подробнее, как именно это выглядит в журнале регистрации. При каждом входе пользователя система фиксирует событие с уровнем «Ошибка», что не только затрудняет анализ реальных проблем, но и неоправданно увеличивает размер файла журнала регистрации. Для наглядного анализа сбоев и их всплесков во времени можно применить инструмент для отображения ошибок журнала регистрации на графике.
Самое простое решение, которое помогает в ряде случаев, — это «встряхнуть» функциональную опцию. Посмотрим на алгоритм действий:
Этот метод позволяет платформе корректно перезаписать значения связанных констант и очистить кэш функциональных опций. Если же флаг в интерфейсе отсутствует (как отмечают опытные пользователи в обсуждении), это может означать, что форма настроек была изменена в новых версиях БСП, и доступ к ней стоит искать через «Функции технического специалиста».
Если визуальный метод не помог, разберем по шагам, как найти «виновника» вызова через конфигуратор. Это необходимо для понимания того, какой именно объект инициирует обращение к пустому адресу.
Выполним следующие действия в конфигураторе:
ИнтеграцияС1СДокументооборотБазовый (или аналогичном, отвечающем за проверку соединения) в процедуре, которая генерирует запись в журнал регистрации.Чаще всего цепочка вызовов приводит к процедурам инициализации параметров сеанса или к обработчикам обновления интерфейса. Например, код может выглядеть так:
Процедура ПриНачалеРаботыСистемы()
// В проблемных релизах вызов может происходить здесь
ИнтеграцияС1СДокументооборотКлиент.ПроверитьНастройкиИнтеграции();
КонецПроцедуры
Если вы обнаружили, что вызов идет из расширения или доработанного модуля, необходимо добавить условие проверки:
Если ПолучитьФункциональнуюОпцию("ИспользоватьИнтеграциюС1СДокументооборот") Тогда
// Только здесь выполняем обращение к сервису
КонецЕсли;
Поскольку проблема носит массовый характер для релизов 11.5.12.64, разработчики 1С выпустили официальное решение. Проанализируем варианты исправления:
ИнтеграцияС1СДокументооборот. Обычно это патчи вида EF_00_XXXXXX.После установки патча или обновления крайне важно выполнить очистку серверного кэша. Для этого необходимо остановить службу сервера 1С:Предприятия и удалить содержимое папок srvinfo\reg_1541\snacc... (названия временных папок могут отличаться).
Если по каким-то причинам вы не можете обновить систему прямо сейчас, а журнал регистрации переполнен, рассмотрим вариант настройки самого журнала. Внимание: это временная мера, устраняющая симптом, а не причину. Для оперативного уменьшения размера файла ЖР пригодится обработка для регламентного сокращения журнала регистрации.
ПриЗаписиЖурналаРегистрации, однако это требует внесения изменений в конфигурацию.Выясним причину окончательно: проблема в 11.5.12.64 является следствием «сырого» кода проверки новых констант для 1С:ДО 3.0 в составе БСП. Чтобы ваша база работала стабильно и журнал регистрации оставался чистым, придерживайтесь следующего плана:
Таким образом, мы совместно разобрали технические аспекты некорректного поведения системы и нашли пути решения, позволяющие избавиться от назойливых сообщений в журнале регистрации.