При обновлении конфигурации Рарус Общепит 3.0.41.ХХХ на 3.0.70.41 во время выполнения процедур обновления ИБ возникала следующая ошибка:
{ОбщийМодуль.ОбновлениеИнформационнойБазыБП.Модуль(14944)}: Ошибка при вызове метода контекста (Выполнить)
Выборка = Запрос.Выполнить().Выбрать();
по причине:
{(3, 19)}: Поле не найдено "ТТНВходящаяЕГАИС.УдалитьВозврат"
ТТНВходящаяЕГАИС.<<?>>УдалитьВозврат
Я проверил конфигурацию, действительно в документе ТТНВходящаяЕГАИС отсутствует реквизит УдалитьВозврат.
Я так понял, что реквизит когда-то был, потом был удалён. Возможно, если бы я обновлял базу постепенно ошибки бы не возникло.
Дальнейшее исследование конфигурации выявило, что обновление документов ТТНВходящаяЕГАИС происходит при переходе на релиз 3.0.43.195
// +Общепит
Обработчик = Обработчики.Добавить();
Обработчик.Версия = "3.0.43.195";
Обработчик.Процедура = "ОбновлениеИнформационнойБазыБП.ЗаполнитьРеквизитВидОперацииВТТН";
Обработчик.НачальноеЗаполнение = Ложь;
// -Общепит
При возникновении ошибки во время выполнения процедур обновления во время запуска базы, в окне сообщения об ошибке есть возможность запустить внешнюю обработку.
Я решил воспользоваться этой возможностью для изменения номера релиза базы на следующий после 3.0.43.195, на 3.0.43.205 для того, чтобы программа не выполняла ошибочную процедуру при переходе на 3.0.43.195 релиз.
После ручного изменения номера релиза обновление завершилось успехом.
Конечно, это "косяк" разработчиков.
Прилагаю обработку.