Как вывести только ценники с изменившимися оптовыми ценами в 1С:Управление торговлей 11.4?

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

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

Итак, ситуация следующая: менеджер оформил поступление товара и ввел новые цены. При этом изменились как закупочные, так и оптовые цены. Розничные магазины пытаются распечатать ценники, используя стандартные отборы в обработке «Печать этикеток и ценников»: «Дата последнего изменения цены» (больше или равно текущей даты), «Только с остатками на складе» и «Только с ценами». Однако в печать попадают все товары, у которых изменился любой вид цены, даже если оптовая цена осталась прежней, а закупочная поменялась лишь на копейки. Это приводит к распечатке ненужных ценников и лишним трудозатратам. Выясним, почему так происходит и как с этим бороться.

Почему стандартный отбор по дате изменения цены не работает так, как мы ожидаем?

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

Однако существуют эффективные способы решения этой проблемы. Рассмотрим их подробнее.

Решение 1: Заполнение по документу «Установка цен номенклатуры» – самый простой способ для пользователя

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

  1. Создаем документ «Установка цен номенклатуры» корректно. Убедитесь, что ваш менеджер или ответственное лицо создает документ Установка цен номенклатуры, в котором фиксируются изменения только тех видов цен, которые требуется обновить (в нашем случае – только оптовые цены). Важно, чтобы в этом документе не присутствовали позиции, чьи оптовые цены не менялись, или чтобы для них была установлена та же оптовая цена, что и раньше.
  2. Открываем обработку «Печать этикеток и ценников». Перейдите в раздел «Продажи» или «Склад и доставка» (в зависимости от настроек интерфейса) и найдите пункт «Печать этикеток и ценников».
  3. Используем кнопку «Заполнить по документу». В открывшейся обработке вместо установки многочисленных отборов найдите и нажмите кнопку «Заполнить» или «Выбрать из документов» (название может незначительно отличаться в разных релизах, часто это выпадающее меню рядом с кнопкой «Заполнить»).
  4. Выбираем нужный документ. В появившемся окне выбора документов укажите именно тот документ Установка цен номенклатуры, который был создан для изменения оптовых цен.
  5. Проверяем результат и печатаем. После выбора документа в список для печати попадут только те номенклатурные позиции, которые были указаны в выбранном документе Установка цен номенклатуры, и система будет работать именно с теми видами цен, которые в нем зафиксированы. Это гарантирует, что вы распечатаете ценники только для актуальных изменений.

Преимущество этого метода: он полностью соответствует типовому функционалу, не требует никаких доработок и максимально прост для конечного пользователя, если процесс установки цен правильно организован.

Решение 2: Использование отчета «Цены номенклатуры» как посредника – обходной путь для пользователя

Если по какой-то причине вы не можете использовать предыдущий метод (например, документ Установка цен номенклатуры содержит много лишних позиций или видов цен), или вам нужен более гибкий отбор, можно пойти обходным путем, используя стандартный отчет Цены номенклатуры или Прайс-лист как промежуточное звено. Этот способ требует больше шагов, но позволяет добиться нужного результата в режиме пользователя.

  1. Открываем отчет «Цены номенклатуры». Перейдите в раздел «Продажи», «Склад и доставка» или «CRM и маркетинг» (в зависимости от настроек) и найдите отчет «Цены номенклатуры» (или «Прайс-лист»).
  2. Настраиваем отбор в отчете. В настройках отчета (обычно кнопка «Настройки») переходим на вкладку «Отборы». Здесь мы можем задать гораздо более детальные условия:
    • Добавляем отбор по полю «Вид цены» и указываем наш «ОПТ» (или любой другой нужный вид цены).
    • Добавляем отбор по полю «Дата изменения» (или аналогичному, если есть в отчете) и устанавливаем период, в который происходило изменение цены (например, «больше или равно» сегодняшней даты).

    Нас интересуют именно те позиции, для которых изменилась оптовая цена.

  3. Формируем отчет. Нажмите «Сформировать». Отчет покажет список товаров, у которых оптовая цена была изменена в указанный период.
  4. Копируем список номенклатуры в обработку печати ценников.
    • В сформированном отчете выделите все необходимые позиции номенклатуры. Для этого обычно можно использовать сочетание клавиш Ctrl+A для выделения всех строк или Ctrl+Клик / Shift+Клик для выборочного выделения.
    • Скопируйте выделенные позиции (Ctrl+C).
    • Вернитесь в обработку «Печать этикеток и ценников».
    • Найдите кнопку «Заполнить» и в выпадающем меню выберите пункт «Добавить из буфера обмена» или «Заполнить по списку номенклатуры» (после чего можно вставить данные из буфера обмена). В некоторых случаях может потребоваться сначала создать новую строку и вставить данные в колонку Номенклатура.
  5. Печатаем ценники. Теперь в обработке должны быть только те позиции, которые прошли наш строгий отбор в отчете.

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

Решение 3: Расширенное редактирование схемы компоновки данных – для продвинутых пользователей и администраторов

Хотя пользователь указал, что он не программист, в 1С существует возможность так называемого «Режима технического специалиста», который открывает доступ к более тонким настройкам, включая схемы компоновки данных (СКД). Этот метод находится на грани пользовательских возможностей и требует понимания логики работы таблиц 1С, но может быть реализован без прямого изменения кода конфигурации.

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

    Концептуально, вам нужно будет найти место, где система соединяется с регистром Цены номенклатуры, и добавить в условие соединения или отбора строку, которая будет проверять ВидЦены = &ВидЦеныОПТ, а затем вывести этот параметр в настройки отчета.

Важно: Этот метод рекомендуется только тем, кто имеет опыт работы с СКД или под присмотром специалиста. Неправильные действия могут привести к неработоспособности обработки.

Решение 4: Готовые расширения конфигурации (1С:Store/Marketplace)

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

  1. Поиск расширения. Поищите на специализированных платформах 1С (например, 1С:Store, Инфостарт) расширения для 1С:УТ 11.4, которые добавляют возможность отбора ценников по конкретному виду цен или по дате изменения конкретного вида цены. Такие расширения могут добавлять в обработку печати отдельную колонку «Вид цены» или более сложный механизм фильтрации.
  2. Установка расширения. Установка расширения обычно выполняется администратором или IT-специалистом за несколько минут через раздел «Администрирование» -> «Печатные формы, отчеты и обработки» -> «Расширения».
  3. Использование нового функционала. После установки расширения в обработке «Печать этикеток и ценников» появятся новые поля или опции отбора, которые позволят вам фильтровать ценники по виду цены.

Преимущество этого метода: это наиболее оптимальное решение, если стандартный функционал не подходит, а собственные доработки нежелательны. Расширения сохраняют конфигурацию на поддержке и могут быть установлены относительно быстро.

Решение 5: Настройка порога срабатывания в видах цен – превентивная мера

Иногда проблема заключается не столько в отборе, сколько в том, что система регистрирует изменения цен, которые фактически не являются значимыми для бизнеса (например, изменение закупочной цены на копейку из-за округления или курсовых разниц). В 1С:УТ 11 можно настроить «Порог срабатывания» для видов цен. Это превентивный способ решения проблемы на уровне настроек ценообразования.

  1. Переходим к настройкам видов цен. Откройте «CRM и маркетинг» -> «Виды цен».
  2. Редактируем нужный вид цен (например, «Закупка»). Откройте элемент списка «Закупка».
  3. Устанавливаем «Порог срабатывания». На вкладке «Настройки расчета» или аналогичной найдите поле «Порог срабатывания» (или «Допустимое отклонение при изменении цен»). Введите здесь минимальное значение, на которое цена должна измениться, чтобы система зарегистрировала это изменение и обновила дату последнего изменения цены. Например, если вы установите 1,00 рубль, то изменение цены на 0,50 рублей не будет зафиксировано как новое изменение, и дата обновления цены для товара не изменится.

Преимущество этого метода: позволяет игнорировать незначительные изменения цен, которые не требуют перепечатки ценников. Это уменьшает объем данных в регистре цен и сокращает количество «ложных» обновлений.

В заключение, проблема с выводом изменившихся ценников в 1С:УТ 11.4, когда требуется фильтрация по конкретному виду цен, является общей для многих пользователей. Хотя типовой функционал в режиме «пользователь» имеет свои ограничения в части детализированного отбора по дате изменения конкретного вида цены, мы видим, что существуют различные подходы к решению этой задачи. Выбирайте тот, который наилучшим образом соответствует вашим рабочим процессам и уровню доступа к настройкам системы.

← На главную