Обновление типовых конфигураций, таких как Управление торговлей версии 11.5, часто сопровождается масштабным рефакторингом кода. В процессе такой оптимизации фирма «1С» нередко удаляет или перемещает процедуры и функции, которые ранее были доступны для использования в отчетах или внешних обработках. Рассмотрим, как действовать, если вы столкнулись с ошибкой «Метод не обнаружен» при вызове процедур, которые ранее работали корректно.
Первым делом проанализируем ситуацию. Если при компиляции отчета или в процессе его выполнения возникает ошибка, связанная с тем, что система не находит процедуру (например, СтруктураЗаголовковВалютСквознаяСебестоимость), это означает, что разработчики изменили структуру общих модулей. Поскольку такие процедуры часто не входят в официальный программный интерфейс (API), их изменение или удаление является стандартной практикой при обновлении.
Самый правильный и «чистый» способ решения проблемы — это поиск того, как аналогичная задача реализована в текущем релизе конфигурации. Давайте разберем этот процесс по шагам:
КомпоновщикНастроек или иные объекты КомпоновкаДанныхСервер.Если задача требует срочного решения, а глубокая переработка отчета невозможна, можно пойти по пути «изоляции». Мы можем временно перенести необходимую процедуру непосредственно в модуль вашего отчета. Рассмотрим, как это сделать:
Экспортной.Пример структуры кода, который может быть размещен в модуле отчета для локальной поддержки функционала:
// Локальная копия процедуры для обеспечения работоспособности отчета
Функция СтруктураЗаголовковВалютСквознаяСебестоимость(КомпоновщикНастроек) Экспорт
// Здесь размещается логика, скопированная из старой версии
// общего модуля, с адаптацией вызовов под текущие реалии
Результат = Новый Структура;
// ... логика инициализации заголовков ...
Возврат Результат;
КонецФункции
Рассмотрим риски, связанные с «копипастом» кода из старых версий:
В качестве итога рекомендуем всегда отдавать предпочтение поиску типовой замены. Если процедура была удалена, это почти всегда означает, что в Управление торговлей появился более эффективный способ достижения того же результата. Используйте инструменты сравнения конфигураций, чтобы проследить путь изменений и адаптировать отчет к новым стандартам разработки 1С.