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

Головний прейскурант демонстраційної бази — RRP «Роздрібні ціни» (поруч із ним живе оптовий ОПТ, до нього дійдемо нижче). У шапці:
- «Код» і «Коментар» — ім'я, яким прейскурант вписують у картки клієнтів.
- «ПДВ»: Виключає / Включає — найважливіший перемикач. Він каже, що означає число в ціні: «Виключає» — ціни чисті, податок додасться зверху; «Включає» — податок уже всередині. У RRP ціни без ПДВ: дриль коштує 1 200,00, а в рахунку клієнт побачить 1 440,00 з податком.
- «Валюта» — валюта всіх цін прейскуранта. Порожньо — базова валюта фірми. В англійській демо-фірмі той самий RRP веде ціни у фунтах.
- «Замінює» і «Період» — механізм акційного прейскуранта, про нього нижче.
- «Продавець» — менеджер, за яким закріплено прейскурант. Поле лише зберігається й друкується: на ціни документів і на те, хто може брати прейскурант, воно не впливає.
Самі ціни — у реєстрі «Ціни»:

Як документ знаходить ціну
Коли в рядок замовлення чи рахунка вписують товар, система йде по черзі:
- Чи діє зараз акційний прейскурант? Якщо існує прейскурант, у якого в полі «Замінює» вказано наш і чия дата в «Періоді» покриває дату документа, а товар у ньому є, — ціна береться з нього. Товару в акції немає — далі як без акції.
- Ціна з «Цін» за парою «прейскурант документа + товар» — якщо дата документа в «Періоді» прейскуранта (порожній «Період» обмежень не ставить). Якщо прейскурант документа сам щось замінює, то й він діє як акція: лише у своєму «Періоді», а далі пошук тими самими кроками йде до прейскуранта, який він замінює.
- Товару в прейскуранті немає — береться базова ціна з картки товару.
На демонстраційних даних видно всі три долі товару: дриль у прейскуранті дешевша за картку (1 200 проти 1 600 базової), драбина — дорожча (900 проти 800), а каски в прейскуранті немає зовсім — вона піде за карткою (179). Тому в замовленні з трьох рядків ціни можуть мати три різні джерела — і всі три правильні.
Звідки береться сам прейскурант у документі: з картки клієнта, а якщо там порожньо — з його категорії, а якщо й там — з умови оплати. У демо обидві категорії клієнтів ведуть на RRP, тож він і підставляється скрізь. Ще один шлях — «Прейскурант за замовчуванням» у картці користувача: новий документ цієї людини бере його, лише коли клієнт документа ні карткою, ні категорією свого прейскуранта не дає; а коли в документі вибирають клієнта, у картці чи категорії якого є свій прейскурант (чи прейскурант є в його умові оплати), документ бере той.
Акційний прейскурант
Щоб на час розпродажу не переписувати ціни туди-сюди, заводять окремий прейскурант: у полі «Замінює» вказують основний, у «Періоді» — дати акції, а в «Цінах» — акційні числа. Поки період триває, документи самі беруть акційні ціни; закінчився — самі повертаються до основних. Основний прейскурант при цьому не змінюється взагалі.
В акційний прейскурант досить внести лише товари акції: решта товарів і під час акції бере ціни з основного. Якщо на дату документа діють дві акції одного прейскуранта і товар є в обох, перемагає та, у якої довший «Період», — довжину система міряє класом за різницею між кінцем і початком: одноденна акція (початок = кінець) — найкоротший клас, далі — різниця 1–6 днів, 7–30, 31–364, рік і більше. Тож одноденна акція програє тижневій, навіть якщо почалась раніше. В одному класі (скажімо, обидві акції тривають від тижня до місяця) перемагає та, що почалась раніше. Акція, у якій товару немає, у виборі не бере участі.
«Замінює» без «Періоду» система зберегти дозволяє, але такий прейскурант не діє ніколи: ні як акція, ні як прейскурант самого документа — документ із ним бере ціни прейскуранта, який він замінює. «Час» на вибір ціни не впливає: акцію судять лише за датами «Періоду».
Матриця внизу картки
Рядки «Код товару — Код цінової групи — Формула» — це правила для масового розрахунку цін. У RRP матриця порожня: його ціни ведуться руками прямо в «Цінах». А от оптовий прейскурант ОПТ демо-бази побудовано саме правилами: рядок матриці зв'язує цінову групу чи окремий товар із формулою, а обслуговування «Порахувати ціни товарів» перетворює правила на рядки в «Цінах». Розбір цього механізму — у статті «Формули цін».
Порядок роботи
1. Створити прейскурант
Код, коментар, перемикач ПДВ (вирішіть одразу — міняти його на живому прейскуранті означає, що всі числа почнуть значити інше), валюта за потреби.
2. Внести ціни
У реєстрі «Ціни»: рядок на товар — прейскурант, товар, ціна. Швидкий старт для схожого прейскуранта — «Дублікат» наявних цін.
3. Призначити
Впишіть прейскурант у картки клієнтів або одразу в категорію — тоді всі клієнти категорії отримають його автоматично.
Змінні друку
Значення, доступні в шаблонах друкованих форм цього документа. Як записати змінну в шаблоні — див. Друковані форми.
Поля заголовка:
| Змінна | Що підставляється |
|---|---|
| PrList_Code | Код |
| PrList_Repl | Код 2 |
| PrList_Comment | Коментар |
| PrList_StDate | Період |
| PrList_StTime | Час |
| CurCode_No | Валюта (код) |
| CurCode_Comment | Валюта (назва) |
| PrList_VAT | ПДВ |
| PrList_EndDate | Дата кінця |
| PrList_EndTime | Час закінч. |
| PrList_Sman | Продавець (логін) |
Поля рядків:
| Змінна | Що підставляється |
|---|---|
| PrList_MNo | Номер позиції рядка |
| PrList_MItCode | Код товару |
| PrList_MPrGrCode | Код цінової групи |
| PrList_MForm | Формула |
Записи, на які документ посилається полями форми (склад, клієнт, валюта…), дають у шаблон і решту своїх змінних — код і назва вже названі в таблицях вище, інше описано в статті довідника:
- Валюта — Валюти (
CurCode_*)
Часті ситуації
«Чому клієнтові порахувалась не та ціна?» Подивіться в документі вкладку «Прейскурант» — чий прайс підставився. Далі ланцюжок: картка клієнта → категорія → умова оплати. Потім — чи не діяла на дату документа акція, що замінює цей прейскурант. І пам'ятайте про третє джерело: якщо товару в прейскуранті немає, ціна прийшла з картки товару.
Товар новий, у прейскуранті його ще немає. Документи не зупиняться — візьмуть базову ціну з картки. Коли внесете рядок у «Ціни», підуть прейскурантні.
Ціни «поїхали» після зміни перемикача ПДВ. Число 1 200 з «Виключає» і з «Включає» — дві різні ціни. Перемикач задають при створенні і не чіпають.
Акція скінчилась, а ціни досі акційні. Перевірте «Період» акційного прейскуранта — поки кінцева дата не минула, він продовжує заміняти основний. Акцію документ судить за своєю датою, а не за сьогоднішньою: документ, датований днем акції, і далі отримує акційні ціни. А ціни, уже вписані в рядки, документ тримає і після кінця акції — сама зміна дати їх не перечитує.
Довідник полів
| Поле | Опис |
|---|---|
| Код, Коментар | Ім'я прейскуранта; ним він вписується в картки клієнтів і категорій |
| ПДВ: Виключає / Включає | Що означає число ціни: податок зверху чи вже всередині |
| Валюта | Валюта всіх цін; порожньо — базова валюта фірми |
| Замінює | Основний прейскурант, який цей заміняє на час «Періоду» (акція) |
| Період | Коли акційний прейскурант діє (за датою документа) |
| Час | Лише зберігається й друкується; на вибір ціни не впливає |
| Продавець | Менеджер, за яким закріплено прейскурант; лише зберігається й друкується |
| Матриця (Товар / Цінова група / Формула) | Правила масового розрахунку цін — див. «Формули цін»; при ручному веденні цін порожня |