Почему в 1С:Розница в РМК не видны цены номенклатуры и как исправить пустой отчет по ценам

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

Запуск торговой точки на базе конфигурации 1С:Розница — процесс, требующий предельной внимательности к деталям. Часто начинающие пользователи сталкиваются с типовой проблемой: товар успешно занесен в базу, оформлено его поступление на склад, однако при открытии Рабочего места кассира (РМК) программа отказывается видеть цены номенклатуры, блокируя продажи. Параллельно с этим попытка сформировать отчет по ценам возвращает абсолютно пустой бланк, что окончательно заводит в тупик.

В этой статье мы подробно разберем, как устроена механика ценообразования в 1С, выясним корневые причины этих ошибок и по шагам настроим систему так, чтобы продажи в РМК заработали корректно, а отчеты всегда отражали актуальную информацию.

Часть 1. Разбираемся, почему РМК видит только один вид цены

Для начала проанализируем ситуацию, с которой столкнулся автор темы на форуме. Было создано четыре различных вида цен (например, с наценками х2, х3, х4 и ручная цена). Однако при попытке продать товар касса видела только один определенный вид цены — «Розница 2». Почему так происходит?

Логика работы кассового модуля в 1С построена на жестком контроле действий кассира. Чтобы исключить злоупотребления и ошибки персонала, программа не позволяет кассиру самостоятельно выбирать, по какому прайс-листу продавать товар в РМК (если это не предусмотрено специальными правами). Процесс выбора цены автоматизирован через жесткую связку объектов.

Рассмотрим эту цепочку связей подробнее:

  1. Каждому магазину (или складу торгового зала) в системе соответствует строго одно Правило ценообразования.
  2. Внутри этого правила ценообразования указывается конкретный Вид цены (например, «Розничная»), который будет считаться основным для данного магазина.
  3. Когда кассир сканирует штрихкод в РМК, программа обращается к правилу ценообразования текущего магазина, определяет закрепленный за ним вид цены и подтягивает именно его значение.

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

Как настроить разные цены для разных товаров без ручной перезаписи

Что делать, если на разные группы товаров у вас установлена разная наценка? Переписывать все цены вручную под один вид цены не нужно. Для решения этой задачи в 1С:Розница реализован встроенный механизм ценовых групп. Разберем по шагам, как его настроить:

  1. Создаем ценовые группы: Перейдем в раздел Маркетинг, найдем справочник Ценовые группы и создадим необходимые элементы (например: «Группа Х2», «Группа Х3», «Группа Х4»).
  2. Привязываем товары к группам: В карточке каждой номенклатуры в поле Ценовая группа укажем соответствующее значение. Это позволит системе классифицировать товары по правилам их продажи.
  3. Настраиваем Правило ценообразования: Откроем наше действующее правило ценообразования (раздел Маркетинг — Правила ценообразования). В верхней части документа по-прежнему будет указан основной вид цены по умолчанию. Но в табличной части ниже мы можем настроить исключения!
  4. Добавим строки в таблицу: для «Группы Х2» укажем вид цены «Розница 2», для «Группы Х3» — «Розница 3» и так далее.

После проведения такого правила система при сканировании в РМК будет анализировать, к какой ценовой группе относится товар, и автоматически подставлять правильную цену. Это исключает необходимость ручного ведения единого прайс-листа.

Часть 2. Как правильно вводить и активировать цены в системе

Если цены вообще не отображаются в РМК, то проблема кроется в нарушении последовательности документооборота. Давайте проанализируем правильный алгоритм ввода информации при начале работы:

  1. Ввод номенклатуры: Создаем карточки товаров в справочнике.
  2. Оприходование или Поступление товаров: Фиксируем закупку товаров, заполняя закупочные цены и количество.
  3. Установка цен номенклатуры: Переходим в раздел Маркетинг — Цены номенклатуры, создаем документ Установка цен номенклатуры. Выбираем нужные виды цен, рассчитываем их на основе закупочных или вводим вручную, после чего проводим документ.
  4. Применение цен номенклатуры (Критически важный шаг): Многие пользователи забывают, что документ Установка цен лишь рассчитывает цены («проект цен»), но не вводит их в действие для конкретных магазинов. Чтобы цены дошли до кассы, необходимо создать документ Применение цен номенклатуры (раздел Маркетинг — Применение цен) и провести его. Только после этого цены станут действующими.

Для технических специалистов полезно знать, как проверить, записались ли цены в базу данных на программном уровне. Мы можем обратиться с запросом к срезу последних регистра сведений ДействующиеЦеныНоменклатуры. Рассмотрим пример такого запроса:


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |	ДействующиеЦены.Номенклатура КАК Товар,
    |	ДействующиеЦены.Цена КАК Цена,
    |	ДействующиеЦены.ВидЦены КАК ВидЦены
    |ИЗ
    |	РегистрСведений.ДействующиеЦеныНоменклатуры.СрезПоследних(&Период, ОбъектЦенообразования = &Магазин) КАК ДействующиеЦены";

Запрос.УстановитьПараметр("Период", Новый Граница(ТекущаяДата(), ВидГраницы.Включая));
Запрос.УстановитьПараметр("Магазин", Справочники.Магазины.НайтиПоНаименованию("Магазин №1"));

РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
    Сообщить("Внимание: цены в регистре сведений на текущую дату отсутствуют!");
КонецЕсли;

Если данный запрос не возвращает записей, это сигнализирует о том, что документ Применение цен номенклатуры не был создан или проведен на нужную дату.

Часть 3. Почему отчет «Розничные цены номенклатуры» формируется пустым

Перейдем ко второй проблеме, озвученной в обсуждении: почему отчет по ценам не выводит данные, даже если пользователь утверждает, что «все почистил»? Здесь мы сталкиваемся с неочевидным поведением интерфейса платформы 1С.

Коварная логика интерфейсных отборов

Когда пользователь заходит в настройки отчета и видит в шапке поля фильтров (например, «Магазин» или «Номенклатура»), его естественная реакция при желании сформировать отчет по всей базе — стереть текст в поле ввода с помощью клавиши Backspace или кнопки очистки (крестика).

Однако в этот момент происходит следующая системная ошибка:

Решение проблемы: Чтобы отключить отбор по конкретному полю, необходимо не просто стереть текст в поле ввода, а полностью снять галочку активности отбора слева от названия этого поля. Только тогда условие фильтрации будет полностью исключено из SQL-запроса к базе данных.

Проблема даты и времени проведения документов

Еще одна частая причина пустых отчетов — несовпадение временной точки. Предположим, вы провели документ установки и применения цен сегодня в 15:00. При формировании отчета за сегодняшний день программа по умолчанию может подставить время 00:00:00 (начало дня) или текущее время компьютера, которое по какой-то причине сбито.

Если отчет формируется на точку времени, предшествующую проведению документа применения цен, система покажет пустой результат. Чтобы исключить эту проблему, всегда проверяйте дату и время документов. Попробуйте сформировать отчет на дату «Завтра» — если данные появятся, значит, дело было именно во времени проведения.

Скрытые настройки компоновки данных (СКД)

Если простые манипуляции с галочками не помогают, необходимо проверить глубокие настройки отчета:

  1. Нажмите кнопку Настройки... в шапке отчета.
  2. Переключите вид отображения настроек на Расрасширенный (в нижней части окна).
  3. Перейдите на вкладку Отборы.
  4. Внимательно проанализируйте весь список условий. Там могут скрываться неактивные на первый взгляд, но действующие системные отборы (например, отбор по помеченным на удаление элементам или отбор по конкретному складу, который уже не используется).
  5. При необходимости нажмите кнопку Еще — Стандартные настройки, чтобы сбросить структуру отчета к первоначальному заводскому виду, разработанному программистами 1С.

Применяя эти несложные правила контроля за связкой «Вид цены — Правило ценообразования» и внимательно работая с флагами отборов в отчетах, вы сможете быстро и безболезненно навести порядок в ценообразовании конфигурации 1С:Розница.

← На главную