Наценка или скидка на весь ассортимент: пересчитываем цены в 1С массово
Содержание
Изменить цену
в 1С на процент проще всего новым документом «Установка цен номенклатуры»: заполните его товарами с текущими ценами, выделите строки и примените к ним команду изменения цен на процент (например, +7 или −5), затем проведите документ. В 1С:Бухгалтерии 3.0 документ лежит в разделе Склад, в 1С:Управление торговлей 11 и 1С:Рознице — в разделе Продажи. Новые цены действуют с даты документа, старые остаются в истории.
Способов массового обновления цен три, и выбирают их по задаче. Документ с процентом подходит, когда наценка одна на всю группу. Расчётные виды цен в УТ 11 и Рознице — когда розница должна сама следовать за закупкой. Excel с загрузкой из файла — когда у разных позиций разный процент или прайс пришёл от поставщика.
Подготовка к массовому изменению цен на процент
Пересчёт затрагивает сотни строк, и ошибку потом приходится исправлять таким же массовым документом. Пять минут подготовки окупаются.
Что выяснить заранее:
- 🏷️ Какой вид (тип) цен меняете. В БП 3.0 это «Типы цен номенклатуры», в УТ 11 и Рознице — «Виды цен». Розничная, оптовая, закупочная — у каждой своя история значений.
- 💰 Включает ли цена НДС. Флажок стоит в карточке типа или вида цен. Процент применяется к той сумме, что хранится в регистре: если цена с НДС, вы поднимаете цену с НДС.
- 📅 С какой даты действуют новые цены. Дата документа — это дата начала действия. Документ «на завтра» не тронет сегодняшние продажи.
- 🔢 Правило округления. До рубля, до 10 рублей, «психологические» 99 копеек. Округление задают в виде цен или прямо в документе.
- 📦 Объём изменения. Вся номенклатура, одна группа, один поставщик или один бренд.
Перед переоценкой сформируйте прайс-лист по нужному виду цен и сохраните его в Excel. Это ваша «точка отката»: по нему легко сверить, что изменилось, и вернуть старые цены загрузкой.
Отдельно о процентах. Поднять на 10 %, а потом снизить на 10 % — не то же самое, что вернуть исходную цену. Товар за 1 000 ₽ после +10 % стоит 1 100 ₽, после −10 % — 990 ₽. Чтобы откатить наценку 10 %, нужно снижение примерно на 9,09 % (1 100 × 0,9091 ≈ 1 000) или загрузка старого прайса.
Изменение цен документом «Установка цен номенклатуры»
Это основной инструмент во всех трёх конфигурациях. Документ записывает новые значения в регистр цен, ничего не удаляя: старые цены остаются на прошлые даты.
| Конфигурация | Где создать документ | Справочник видов цен |
|---|---|---|
| 1С:Бухгалтерия 3.0 | Склад → Установка цен номенклатуры | Склад → Типы цен номенклатуры |
| 1С:Управление торговлей 11 | Продажи → Установка цен номенклатуры | Продажи → Виды цен |
| 1С:Розница 2 | Продажи → Установка цен номенклатуры | Продажи → Виды цен |
Термины не смешивайте: в БП справочник называется «Типы цен», в УТ и Рознице — «Виды цен». Логика документа при этом одна.
Пошагово: поднять цены группы на процент
- Создайте новый документ «Установка цен номенклатуры».
- Укажите дату начала действия новых цен.
- Выберите тип (вид) цен, который меняете. В УТ 11 и Рознице можно отметить несколько видов сразу: каждый станет колонкой таблицы.
- Заполните табличную часть. Команда заполнения добавляет товары с текущими ценами: всю номенклатуру, группу или отбор по условию. Для одной группы удобнее подбор.
- Выделите строки, которые надо пересчитать. Сочетание
Ctrl+Aвыделяет всю таблицу. - В командной панели таблицы найдите команду изменения цен. В открывшемся окне выберите изменение на процент и введите значение:
7для наценки,-5для скидки. - Если нужно, примените округление тем же окном или отдельной командой.
- Просмотрите колонку новых цен. Отсортируйте её по возрастанию: нули и подозрительно малые суммы сразу всплывут наверх.
- Нажмите
Провести и закрыть.
Проверка на числах. Цена 1 250 ₽, процент +7: 1 250 × 1,07 = 1 337,50 ₽. При округлении до рубля получится 1 338 ₽, до 10 рублей — 1 340 ₽. Снижение на 5 %: 1 250 × 0,95 = 1 187,50 ₽.
Не меняйте цены в уже проведённом документе прошлым числом. Новые значения задним числом подменят историю, и пересчёт себестоимости или повторное проведение старых реализаций может дать другие суммы. Для новой волны цен — новый документ.
Как проверить, что цены изменились
- 📊 Сформируйте прайс-лист по тому же виду цен на дату после документа.
- 🔍 Откройте карточку пары товаров: в ней видна текущая цена и история изменений.
- 🧾 Создайте пробный заказ или чек в тестовой базе — цена должна подставиться новая.
Сложная наценка: расчётные виды цен и ценовые группы
Документ с одним процентом не справится, если у бытовой химии наценка 25 %, у электроники 12 %, а у акционных товаров цена фиксированная. В УТ 11 и Рознице для этого есть расчётные виды цен. Отдельный «генератор цен» не нужен: формулу хранит сам вид цен.
Как это устроено:
- Есть базовый вид цен — например, «Закупочная». Его заполняют документами поступления или установкой цен.
- Розничный вид цен создаётся как рассчитываемый от базового. В его карточке задают формулу: базовая цена плюс процент наценки.
- Для разных товаров формулы различаются через ценовые группы. Ценовую группу указывают в карточке номенклатуры, а в виде цен для каждой группы прописывают свой процент.
- В документе «Установка цен номенклатуры» отмечают и базовый, и расчётный вид цен. Командой расчёта по формулам программа пересчитает розницу от закупки.
Изменить цену на процент при такой схеме можно двумя путями:
- 🔁 Поменять процент в формуле вида цен — и пересчитать розницу новым документом установки цен. Подходит, когда наценка меняется надолго.
- ✏️ Применить разовый процент в документе поверх рассчитанных цен. Подходит для временных акций.
Если розница привязана формулой к закупке, ручная правка розничной цены будет перезаписана при следующем расчёте. Для акций лучше завести отдельный вид цен или использовать скидки, а не ломать формулу.
Обновление цен через Excel и загрузку из файла
Excel выручает, когда процент у позиций разный или формулу проще написать в таблице. Схема из трёх шагов: выгрузили, посчитали, загрузили.
1. Выгрузите текущие цены
Сформируйте прайс-лист по нужному виду цен и сохраните его в формате .xlsx. В таблице должны быть артикул или код, наименование и цена. Артикул нужен для точного сопоставления: наименования часто дублируются.
2. Посчитайте новые цены
Добавьте колонку с формулой. Если цена в столбце C, процент наценки — в столбце D:
=ОКРУГЛ(C2*(1+D2/100);0)
Для округления до 10 рублей вместо 0 поставьте -1. Для «психологических» цен вида 1 339 ₽ подойдёт =ОКРУГЛВВЕРХ(C2*(1+D2/100);-1)-1. Проверка: 1 250 × 1,07 = 1 337,5, вверх до десятков — 1 340, минус 1 — 1 339.
3. Загрузите цены в документ
- Создайте документ «Установка цен номенклатуры», укажите дату и вид цен.
- В табличной части найдите команду загрузки из файла (в БП 3.0 и УТ 11 она открывается из меню
Ещёили кнопкой загрузки над таблицей). - Вставьте две колонки: артикул (или наименование) и новую цену.
- Сопоставьте колонки с реквизитами: колонку артикула — с номенклатурой, колонку цены — с ценой.
- Проверьте строки, которые программа не смогла сопоставить. Их подсвечивают отдельно: это новые позиции или опечатки в артикулах.
- Перенесите данные в документ, просмотрите и проведите.
Excel меняет разделитель дробной части. Если цены после загрузки стали в 100 раз больше или превратились в даты, проверьте, что в колонке цены числа, а не текст, и что разделитель — запятая.
Как изменить цены на процент в 1С:Бухгалтерии 3.0
В БП логика та же, но инструментов меньше: расчётных видов цен с формулами по ценовым группам там нет. Каждый тип цен заполняется документом «Установка цен номенклатуры» напрямую.
Порядок в БП 3.0:
- Проверьте тип цен в
Склад → Типы цен номенклатуры: включает ли он НДС и как округляется. - Создайте документ установки цен, выберите тип цен.
- Заполните таблицу товарами с текущими ценами.
- Выделите строки и примените изменение на процент.
- Проведите документ.
Если магазин ведёт учёт по продажным ценам
У розничных точек с учётом товаров по продажной стоимости изменение цены — это не только новая цифра на ценнике. Разница между старой и новой продажной ценой по остатку меняет стоимость товара на счёте 41.12 и сумму торговой наценки на 42.02. Для этого в БП есть документ «Переоценка товаров в рознице».
Пример. В магазине 40 единиц по 500 ₽, цену подняли на 8 %: 500 × 1,08 = 540 ₽. Остаток по продажной стоимости вырос на 40 × 40 = 1 600 ₽. На эту сумму увеличится и торговая наценка.
Если магазин ведёт учёт по стоимости приобретения (41.01), переоценка остатка не нужна: достаточно установить новые цены продажи.
После переоценки распечатайте новые ценники. Цена на ценнике и в чеке должна совпадать с первого же дня — расхождение вызывает претензии покупателей и проверяющих.
Программное изменение цен: внешние обработки и код
Когда процент зависит от остатков, оборачиваемости или пересчёт нужно повторять каждую неделю, руками неудобно. Тогда пишут внешнюю обработку или делают доработку в расширении конфигурации, чтобы не снимать типовую с поддержки.
Логика обработки всегда одна:
- Получить срез последних цен из регистра сведений цен на нужную дату.
- Рассчитать новую цену с процентом и округлением.
- Создать и провести документ «Установка цен номенклатуры» с новыми значениями.
Писать прямо в регистр, минуя документ, не стоит: пропадёт история изменений и возможность откатить переоценку отменой проведения.
Пример расчёта новой цены с округлением до рубля:
Функция НоваяЦена(СтараяЦена, Процент, Точность = 0)
Возврат Окр(СтараяЦена * (1 + Процент / 100), Точность);
КонецФункции
// НоваяЦена(1250, 7) = 1338
// НоваяЦена(1250, 7, -1) = 1340
// НоваяЦена(1250, -5) = 1188
Точность -1 в Окр() округляет до десятков. Имена регистра цен и реквизитов документа в БП, УТ и Рознице различаются, поэтому перед написанием запроса откройте их структуру в Конфигураторе.
Внешнюю обработку из интернета запускайте сначала на копии базы. Она работает с правами пользователя и может проводить документы задним числом.
Типичные ошибки при массовой переоценке
Ошибки здесь однотипные, и большинство видно ещё до проведения.