При работе с классической конфигурацией «1С:Управление производственным предприятием» (УПП) многие разработчики и администраторы сталкиваются с желанием использовать современные технологические возможности платформы 1С:Предприятие 8.3. Одной из наиболее привлекательных функций, появившихся в версии 8.3.11, является механизм История данных. Этот инструмент позволяет автоматически отслеживать изменения объектов на уровне платформы, что значительно эффективнее старых методов. В данной статье мы проанализируем, стоит ли ждать официального обновления УПП с поддержкой этой фишки, и какие альтернативы существуют на сегодняшний день.
Для начала разберем текущий статус конфигурации. Разработчики из фирмы «1С» уже давно перевели УПП в режим ограниченной поддержки. Основное внимание уделяется поддержанию актуальности регламентированной отчетности и критическим изменениям законодательства. Проанализируем ключевые факты, которые дают ответ на вопрос о внедрении Истории данных:
8.2.13. Это осознанный шаг разработчиков, позволяющий сохранять работоспособность огромного массива кода, написанного под старые стандарты.История данных, полноценно реализован в 1С:ERP Управление предприятием. Фирма «1С» стимулирует пользователей переходить на современное решение, а не модифицировать старое.Вывод: Официального обновления УПП, требующего версию платформы 8.3.11 и выше без режима совместимости, не будет. Вероятность внедрения механизма История данных в типовую версию равна нулю.
Если нам необходимо отслеживать историю изменений документов или справочников в УПП, не обязательно ждать обновлений платформы. Рассмотрим штатный механизм, который уже присутствует в конфигурации. В УПП реализована подсистема «Версионирование объектов». Хотя она работает медленнее платформенной истории данных, она полностью совместима с текущей архитектурой.
Разберем, как включить и использовать этот функционал:
Для просмотра истории изменений в формах документов обычно присутствует кнопка или пункт меню История изменений объектов. Этот механизм записывает состояние объекта в формате XML в специальный регистр сведений. Проанализируем ситуацию: использование этого метода позволяет решить задачу контроля данных без риска «сломать» конфигурацию обновлением платформы.
Некоторые специалисты рассматривают вариант самостоятельного изменения режима совместимости на копии базы. Рассмотрим подробнее, с какими трудностями мы столкнемся при попытке установить режим 8.3.11 или Не использовать в УПП:
1. Ошибки в коде запросов и функций. Платформа 8.2 прощала многие неточности, которые в 8.3 вызывают исключительные ситуации. Например, использование зарезервированных слов или специфическая работа с временными таблицами.
2. Модальные окна и синхронные вызовы. Весь интерфейс УПП построен на модальных окнах (команды типа Вопрос(), Предупреждение()). В новых режимах платформы они запрещены. Нам придется переписывать тысячи строк кода интерфейса, чтобы заменить их на асинхронные вызовы, что физически невозможно для одного разработчика.
3. Внешние компоненты. УПП часто использует старые ActiveX-компоненты для печати штрихкодов или работы с торговым оборудованием. При снятии совместимости они могут перестать функционировать.
Однако, как показывает опыт участников сообщества, иногда частичное повышение режима необходимо для конкретных задач (например, поддержка SSL для HTTP-запросов). Посмотрим на пример кода, который может потребоваться адаптировать при переходе на новые функции платформы, если вы все же решили рискнуть:
// Пример проверки версии платформы перед использованием новых фишек
ВерсияПлатформы = ИнформацияСистемы.ВерсияПриложения;
Если ВерсияПлатформы >= "8.3.11" Тогда
// Здесь мог бы быть код инициализации Истории Данных,
// если бы объект был включен в метаданных
Попытка
// Платформенный механизм требует включения свойства в метаданных
// ИсторияДанных.ЗаписатьИзменения(Ссылка);
Исключение
ЗаписьЖурналаРегистрации("Ошибка истории данных", УровеньЖурналаРегистрации.Ошибка);
КонецПопытки;
КонецЕсли;
Проанализировав все «за» и «против», выделим наиболее рациональную стратегию работы с версионированием в УПП на текущий момент:
Контрагенты, Номенклатура) и документов.Подводя итог, можно сказать: УПП останется в технологических рамках платформы 8.2 до своего «заката». Попытки внедрить в неё Историю данных через смену режима совместимости — это путь, сопряженный с огромными рисками для стабильности бизнес-процессов предприятия.