Не надеемся на признак копии базы в БСП

Часто на проектах, использующих интеграции между информационными базами на платформе 1С, наблюдается одна и та же проблема в работе: случайные влияния баз тестового контура предприятия на рабочий контур. Так, если в тестовом контуре разворачивается копия рабочей базы и в ней по каким-то причинам забывают проставить признак копии при первом запуске базы после развертывания, база включается в обмен, тестовые данные начинают уходить в рабочие экземпляры смежных систем, а данные смежных систем, предназначенные для рабочей базы, попадают в тестовую базу вместо рабочей. Результаты подобных ситуаций негативны: потеря согласованности данных в системах предприятия, дополнительная нагрузка на ИТ-службу для нахождения проблемы, недовольство пользователей, а иногда и прямые финансовые потери.

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

Один из наиболее простых и в то же время действенных способов исключения подобных проблем — реализация дополнительной проверки соответствия строки подключения информационной базы и строки подключения продуктивного экземпляра системы, установленной в константах системы. Эту проверку необходимо выполнять перед запуском регламентных заданий обмена.

В конфигурациях на базе БСП типовая проверка признака копии базы выглядит так:

Если ПараметрыСеанса.РаботаСВнешнимиРесурсамиЗаблокирована Тогда
	Возврат;
КонецЕсли; 

Дополнительный код проверки строки подключения информационной базы:

Если НЕ ВРег(СтрокаСоединенияИнформационнойБазы()) = ВРег(Константы.СтрокаПодключенияПромышленногоЭкземпляра.Получить()) Тогда
Возврат;
КонецЕсли;

Для собственных механизмов обмена эту проверку стоит включить в часть инициализации обмена.

Этот несложный прием улучшит тестирование интеграций и исключит неприятные ошибки в рабочем контуре предприятия.