При работе в 1С:Управление торговлей 11.4 (и более поздних версиях) пользователи часто сталкиваются с ситуацией: создается документ Установка цен номенклатуры на основании Приобретения товаров и услуг, но табличная часть с товарами остается пустой. Виды цен подтягиваются, а список номенклатуры — нет. Рассмотрим причины этого поведения и разберем по шагам, как восстановить работоспособность механизма.
Проанализируем самую частую причину: в программе реализован жесткий контроль того, какие виды цен могут вводиться на основании документов поставки. Если соответствующий флаг не установлен, система просто проигнорирует этот вид цены при заполнении из основания.
Выясним, как проверить и исправить эту настройку:
Важный нюанс: часто реквизиты вида цены заблокированы для редактирования. Чтобы внести изменения, нажмем кнопку Ещё — Разрешить редактирование реквизитов. Только после этого программа позволит изменить настройки использования.
Если галочка установлена, но номенклатура все равно не переносится, проанализируем способ расчета цены. В 1С:УТ 11 механизм «умного» заполнения анализирует, откуда берется базовая цена. Если в виде цены указан неверный способ задания, алгоритм может «зачищать» таблицу, так как не находит данных для расчета.
Рассмотрим правильную настройку для закупочных цен:
Если установлена сложная формула, которая ссылается на другие виды цен, убедимся, что по тем видам цен уже есть актуальные данные в регистре, иначе расчетная база будет равна нулю, и строка может быть исключена из документа.
Иногда корень проблемы кроется не в документах, а в настройках самой номенклатуры. Проанализируем настройки ценообразования в карточке Вид номенклатуры. Посмотрим на критически важный параметр:
В настройках вида номенклатуры должен быть корректно определен порядок ведения цен: По позициям номенклатуры или По характеристикам. Также проверим настройки использования упаковок. Если в «Приобретении» товар указан в упаковках, а в виде номенклатуры настройки ценообразования конфликтуют с этим (например, не указано, как рассчитывать цену при наличии упаковок), 1С может пропустить такие позиции при заполнении установки цен.
Разберем еще один технический момент. Документ Установка цен номенклатуры при вводе на основании часто ищет данные не в самом документе Приобретение товаров и услуг, а в регистре сведений Цены номенклатуры поставщиков.
Убедимся, что в исходном документе приобретения на вкладке Дополнительно установлен флаг Регистрировать цены поставщика по документу. Если эта галочка не стоит, данные поставщика не попадают в базу, и механизму установки внутренних цен «не за что зацепиться» при расчете от цен поступления.
В некоторых релизах (особенно при переходах с 11.4.1 на более новые) встречается программная ошибка, связанная с изменением имен метаданных. Например, старое название объекта ПоступлениеТоваровУслуг было заменено на ПриобретениеТоваровУслуг. Рассмотрим пример ошибки из логов синхронизации:
ОписаниеОшибки = Тип не определен (ДокументСсылка.ПоступлениеТоваровУслуг)
ПозицияМодуля = (1) КСообщенияОбОшибках = 56
Если вы столкнулись с такой ошибкой при проведении документа, это означает, что правила обмена или программный код обработки заполнения обращаются к несуществующему типу объекта. В этом случае потребуется вмешательство программиста для обновления правил конвертации или исправления обращения к метаданным в коде модуля Обработка.КонвертацияОбъектовИнформационныхБаз.
Проанализируем ситуацию, когда заполняется только часть номенклатуры (например, 1 строка из 10). В настройках Вида цены существует параметр Порог срабатывания.
Если этот порог установлен, например, в 5%, а цена в новом поступлении изменилась всего на 2% относительно старой установленной цены, система посчитает, что обновлять цену не нужно. В результате такая строка не попадет в новый документ установки цен. Чтобы увидеть все позиции, попробуйте временно отключить контроль порога срабатывания в настройках вида цены.
Соблюдение этих шагов поможет корректно настроить автоматизацию ценообразования и избежать ручного ввода данных при каждом поступлении товара.