Почему нельзя просто переименовать регистр с префиксом «Удалить» в 1С:Управление торговлей 11.5?

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

В процессе обновления 1С:Управление торговлей до редакции 11.5 многие специалисты сталкиваются с тем, что привычные объекты метаданных, такие как РегистрСведений.ТМЦВЭксплуатации, помечаются разработчиками префиксом «Удалить». Возникает естественное желание просто убрать этот префикс, чтобы вернуть работоспособность старым бизнес-процессам. Однако, как показывает практика, это не только не решает проблему, но и создает дополнительные риски для целостности данных.

Разберемся, почему переименование регистра не восстанавливает движения документов

Важно понимать, что в современных версиях УТ 11.5 логика работы программы претерпела значительные архитектурные изменения. Когда разработчики 1С помечают объект префиксом «Удалить», это означает, что объект исключен из основных механизмов проведения. Если вы просто вернете имя регистра, движения по нему не появятся, потому что:

  1. Отсутствие вызовов в коде: В модулях объектов и менеджерах документов ВводВЭксплуатациюТМЦ и ВыводИзЭксплуатацииТМЦ были удалены обращения к старым регистрам. Процедуры проведения теперь ориентированы на новые подсистемы учета внеоборотных активов.
  2. Изменение подписок на события: Механизм проведения документов теперь опирается на общие модули и подписки на события, которые «не знают» о существовании старого регистра.
  3. Смена архитектурной модели: Учет ТМЦ в эксплуатации теперь интегрирован с механизмом финансового результата и планирования. Данные проходят сложную цепочку обработки, и попытка «вклиниться» в старый регистр нарушит эту логику.

Как правильно решить задачу: пошаговое руководство

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

Шаг 1: Анализ новых механизмов учета

В конфигураторе откройте подсистему ВнеоборотныеАктивы. Внимательно изучите новые РегистрыНакопления и РегистрыСведений, которые пришли на смену старым. Посмотрите, какие данные записывают в них типовые документы. Это даст понимание того, как 1С сейчас учитывает ТМЦ.

Шаг 2: Реализация через расширение конфигурации

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

В расширении вы можете:

Пример логики для подписки на событие в расширении:


Процедура МояПодпискаНаПроведение_ОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт
    Если Источник.Проведен Тогда
        // Проверяем данные документа и записываем в свой регистр
        НаборЗаписей = РегистрыСведений.МойРегистрСведений.СоздатьНаборЗаписей();
        НаборЗаписей.Отбор.Регистратор.Установить(Источник.Ссылка);
        
        // Заполнение записей из табличной части документа
        Для Каждого Стр Из Источник.ТМЦ Цикл
            НоваяЗапись = НаборЗаписей.Добавить();
            НоваяЗапись.Период = Источник.Дата;
            НоваяЗапись.ТМЦ = Стр.Номенклатура;
            // ... дополнительные поля аналитики
        КонецЦикла;
        
        НаборЗаписей.Записать();
    КонецЕсли;
КонецПроцедуры

Почему стоит избегать использования «Удалить»-регистров

Использование устаревших объектов влечет за собой следующие проблемы:

В завершение подчеркнем: самым надежным методом будет перенос необходимых данных из старого регистра в новую структуру (свертка остатков) и доработка системы через расширения для ведения учета в актуальных объектах метаданных. Это позволит вашей системе оставаться стабильной и легко обновляемой в будущем.

← На главную