Перейти до змісту

Формули цін

Коли ціни рахуються з чогось — «роздріб мінус десять відсотків», «собівартість плюс націнка» — їх не обов'язково вести руками. Правило записують формулою, вписують формулу в прейскурант, і обслуговування «Порахувати ціни товарів» саме заповнює реєстр «Ціни» — хоч на п'ять товарів, хоч на п'ять тисяч.

Де шукати: Модулі → Ціни → Регістри → Формули цін

Реєстр живе в модулі Ціни.

Розбір на прикладі

Картка формули RRP-10

Формула RRP-10 з демо-бази будує оптові ціни з роздрібних. Читається картка так: взяти базове значення, помножити на «% коригування», додати «Дод. суму 1», округлити до знаків з «Округлення» і додати «Дод. суму 2». Саме в такому порядку: перша сума потрапляє під округлення, друга додається після нього.

  • «Основувати значення на» — звідки береться база: «собівартості», «відпускній ціні» чи «ціні останньої покупки» з картки товару, або «з прейскуранта» — тоді поруч вказують, з якого. Тут база — прейскурант RRP.
  • «% коригування» — скільки відсотків від бази становитиме результат: 90 — мінус десять відсотків, 110 — плюс десять, 100 — без зміни.
  • «Округлення» — кількість знаків після коми: 2 — до копійок, 0 — до цілих, а від'ємне число округлює вліво: −1 — до десятків, −2 — до сотень. Рівна половина завжди йде вгору: 31,5 → 32, 45 → 50 при −1.

Свердло по плитці коштує в RRP 78,00. Формула RRP-10: 90 % → 70,20, округлення до цілих → 70, «Дод. суму 2» −0,01 → 69,99. Так одним правилом виходять «психологічні» цінники: у оптовому прейскуранті демо-бази всі ціни оснастки закінчуються на ,99.

Права колонка — «Якщо ціну по прейскуранту не знайдено» — потрібна лише базі «з прейскуранта»: що робити з товаром, якого в базовому прейскуранті немає. Три виходи: «Не додавати ціну», «Додав. ціну з нул. знач.» або «Викор. альт. формулу». У RRP-10 обрано третій: дюбелів немає в RRP, тож їхню оптову ціну добудовує запасна формула COST+25 — собівартість плюс чверть: 28,00 → 35,00.

Список формул

Де формула працює

Сама по собі формула нічого не рахує — її вписують у матрицю прейскуранта:

Оптовий прейскурант із правилами

Кожен рядок матриці — правило «кому яка формула»: цінова група (рядок 1: вся оснастка за RRP-10), конкретний товар (рядок 2: дриль за COST+25) або порожній рядок з самою лише формулою — тоді правило поширюється на всі товари. Правило для конкретного товару сильніше за групове: спершу розраховуються групи, потім точкові рядки перекривають їх.

Перетворює правила на числа обслуговування «Порахувати ціни товарів» у модулі «Ціни». Його можна звузити параметрами — один прейскурант, одна цінова група чи один товар. Результат лягає в «Ціни»: наявні рядки оновлюються, відсутні створюються. Ціни, які формулам не підпорядковані, перерахунок не чіпає. Якщо прейскурант у валюті, базу перерахунок переводить у його валюту за курсом на сьогодні (собівартість і відпускну ціну — з базової валюти, ціну останньої покупки — з валюти покупки, ціну іншого прейскуранта — з його валюти); курсу немає — база лишається без перерахунку.

Порядок роботи

1. Створити формулу

Код, коментар, база, відсоток. Для бази «з прейскуранта» — ще й поведінка «якщо ціну не знайдено».

Базу обирайте обов'язково: картку без вибраного «Основувати значення на» система збереже, але перерахунок за такою формулою нічого не порахує — товарам без ціни вона не зʼявиться, а наявні ціни лишаться такими, як були. Те саме — для бази «з прейскуранта» без вибраного варіанта в «Якщо ціну по прейскуранту не знайдено»: товарам, яких немає в базовому прейскуранті, ціна не зʼявиться.

2. Вписати правила в прейскурант

У матриці прейскуранта: рядок на цінову групу, на товар або один порожній рядок «на всіх» — і код формули в кожному.

3. Запустити перерахунок

Обслуговування «Порахувати ціни товарів», за потреби — з обмеженням по прейскуранту. Перевірити результат у реєстрі «Ціни».

Часті ситуації

Написав у «% коригування» 10, чекав мінус десять відсотків — а ціни впали в десять разів. Поле означає не знижку, а частку бази в результаті: мінус десять відсотків — це 90.

Навіщо дві додаткові суми? «Дод. суму 1» додається до округлення, «Дод. суму 2» — після. Цінник 69,99 будують саме другою: округлити до цілих і відняти копійку.

Запустив перерахунок — нічого не змінилось. Перевірте рядок матриці: чи існує формула з таким кодом і чи стоять товари в цій ціновій групі. І базу: якщо вона «з прейскуранта», а товару там немає при виборі «Не додавати ціну» — рядок ціни й не з'явиться.

Чи можна округлити до гривні чи до десятків? Так: «Округлення» 0 — до цілих, −1 — до десятків. Від'ємні значення округлюють ліворуч від коми.

Формула не видаляється: «Запис реєстру «Формули цін» використовується в: Прейскуранти!» Запис можна видалити, лише поки його код не стоїть у жодному рядку матриці прейскуранта і жодна інша формула не бере його альтернативною (тоді відмова закінчується «Формули цін!»). Видалена, формула лишила б у прейскуранті код, що ні до чого не веде: прейскурант уже не зберегти, а перерахунок такий рядок мовчки пропустить — ціна лишиться старою. Спершу приберіть код із рядків прейскуранта або впишіть туди іншу формулу. Формула, вказана альтернативною сама собі, тримає себе: перемкніть «Викор. альт. формулу» на інший варіант і приберіть код поруч — тоді вона видалиться.

Довідник полів

Поле Опис
Код, Коментар Ім'я формули; кодом вона вписується в матрицю прейскуранта
% коригування Скільки відсотків від бази становитиме результат (90 = мінус 10 %)
Дод. суму 1 Додається до бази перед округленням
Округлення Кількість знаків після коми; від'ємне — до десятків, сотень
Дод. суму 2 Додається після округлення (типовий вжиток — −0,01 для цін на ,99)
Основувати значення на База: собівартість, відпускна ціна, ціна останньої покупки або інший прейскурант
Поле біля «з прейскуранта» Код базового прейскуранта
Якщо ціну по прейскуранту не знайдено Не додавати ціну / додати нульову / використати альтернативну формулу
Поле біля «Викор. альт. формулу» Код запасної формули для товарів, яких немає в базовому прейскуранті