При работе с конфигурациями на платформе 1С:Предприятие 8.3, такими как «1С:Комплексная автоматизация 2.4» или «1С:ERP», пользователи часто сталкиваются с ситуацией, когда настройки ведения учета характеристик ведут себя непредсказуемо. Одной из наиболее раздражающих проблем является автоматический сброс параметра «Использование характеристик» в значение «Не используются» непосредственно в момент записи карточки номенклатуры. Рассмотрим подробно, почему это происходит и как решить данную проблему.
Для начала разберем, как устроена система работы с характеристиками в современных типовых решениях. В отличие от старых версий, в 2.4 ключевую роль играет Вид номенклатуры. Именно в этом объекте задаются глобальные правила игры для всех товаров, которые к нему относятся.
Выясним основные варианты настройки в «Виде номенклатуры»:
Проанализируем ситуацию: если в Виде номенклатуры установлено значение «Не используются», то любые попытки программно или вручную изменить этот реквизит в конкретной Номенклатуре будут пресекаться системой при записи. Срабатывает механизм проверки целостности данных, который откатывает значение к настройкам родительского объекта.
Как показывает практика и обсуждения специалистов, в релизе 2.4.10.62 (и некоторых соседних сборках этой ветки) присутствовала критическая ошибка в программном коде. Проблема заключалась в том, что в модуле менеджера или в процедурах перед записью объекта Справочник.Номенклатура происходила некорректная очистка реквизита использования характеристик, даже если все настройки в виде номенклатуры были выполнены верно.
В коде это могло выглядеть примерно так (упрощенная логика):
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
// Ошибочная логика проверки в багнутом релизе
Если ЭтоНовый() ИЛИ НЕ ЗначениеЗаполнено(ВидНоменклатуры) Тогда
ИспользованиеХарактеристик = Перечисления.ВариантыИспользованияХарактеристик.НеИспользовать;
КонецЕсли;
// Система не учитывала уже установленные настройки вида в некоторых сценариях
КонецПроцедуры
Разберем, как это лечится системно и какие есть обходные пути.
Самым правильным и надежным способом является обновление системы. Ошибка со сбросом характеристик была официально признана и исправлена разработчиками 1С. Исправления вошли в состав релизов, начиная с 2.4.10.75 и более поздних (например, в ветке 2.4.11 и выше). Если ваша версия ниже указанной, рекомендуется выполнить плановое обновление. Это устранит корень проблемы в процедуре ПередЗаписью и нормализует работу экранных форм.
Если обновление в данный момент невозможно, проверим технические нюансы самой формы. В конфигурациях ERP и КА реализован механизм защиты ключевых реквизитов. Если по номенклатуре уже были движения или она была записана ранее, изменение характеристик блокируется программно.
Посмотрим на алгоритм действий:
Важно: Если кнопка «Разрешить редактирование реквизитов» не нажималась, форма может визуально позволить изменить значение, но при записи вернет старое из базы данных без выдачи предупреждения.
Рассмотрим ситуацию, когда ошибка интерфейса мешает записи через форму элемента. В 1С есть мощный инструмент — «Групповое изменение реквизитов» (НСИ и Администрирование — Обслуживание — Корректировка данных). Этот инструмент позволяет записывать данные напрямую в объект, минуя некоторые проверки экранных форм.
Выполним следующие шаги:
Использование характеристик.Часто такой метод помогает «протолкнуть» настройку в базу данных, после чего она перестает сбрасываться.
Выясним, нет ли логической ошибки в настройке самого вида. Рассмотрим правильный порядок действий для настройки учета с нуля:
Подведем итоги нашего анализа. Если вы столкнулись с проблемой в релизе 2.4.10.62, то в 90% случаев это программная ошибка релиза. Проанализировав ситуацию, мы рекомендуем:
1. В первую очередь обновиться до версии 2.4.10.75 или актуальной 2.4.11/2.5.
2. Если обновление откладывается, использовать Групповое изменение реквизитов для принудительной установки признака использования характеристик.
3. Всегда проверять статус кнопки «Разрешить редактирование реквизитов» в карточке товара, так как без этого действия запись многих ключевых полей в 1С:КА 2.4 просто игнорируется.
Совместное выполнение этих инструкций поможет вам восстановить корректный учет характеристик и избежать досадных ошибок при заполнении нормативно-справочной информации.