Матрица скидок
Матрица скидок отвечает на вопрос «сколько процентов уступить ЭТОМУ клиенту на ЭТОТ товар». Прейскурант задаёт цену, а матрица скидок — персональный процент от неё: базовый на всё и более точные — на группы товаров, бренды или отдельные позиции.
Где искать: Модули → Цены → Регистры → Матрица скидок
Регистр живёт в модуле Цены.
Разбор на примере

Скидка ПОСТОЯННЫЙ «Скидка постоянного клиента» из демо-базы читается сверху вниз:
- «Скидка %» в шапке — базовый процент на весь ассортимент: 3 %.
- Строки матрицы уточняют: аккумуляторному инструменту (группа АКИ) — 5 %, а дрели 000003 отдельной строкой — 7 %.
Дрель входит и в группу АКИ, и в точечную строку — действует верхняя из совпавших строк. В этой карточке первой стоит строка группы АКИ, поэтому дрель получит её 5 %, а своя строка с 7 % не сработает. Именно поэтому точечные правила держат выше общих: поставьте строку дрели первой — и она получит свои 7 %.
Строку назначают либо товару («Код товара»), либо группе и бренду («Код группы», «Код бренда») — плюс процент. Товар в одной строке с группой или брендом не совместить. Группу с брендом — можно, но такая строка действует как «группа или бренд»: она сработает на каждом товаре этой группы и на каждом товаре этого бренда, а не только там, где совпало и то, и другое.
Как скидка попадает в документ
Код скидки вписывают в карточку клиента — поле «Матрица скидок» на вкладке «Финансы» (или сразу в категорию клиентов, тогда её получит вся категория). Дальше всё происходит само:
- В заказе после выбора клиента код подставляется на вкладку «Прейскурант», поле «Матрица скидок».
- Когда в строку вписывают товар, система находит его процент — точечная строка, группа, бренд или базовый — и ставит в колонку «%» строки. Сумма строки сразу считается со скидкой.
В демо это видно на клиенте «ТОВ "Будівельник"»: дрель и отвёртка (обе АКИ) получают 5 % группы — её строка в матрице стоит выше строки дрели, — а молоток, которого нет в матрице, — базовые 3 %. Переставьте строку дрели над строкой группы, и заказ покажет три разных процента: 7, 5 и 3.

Так же скидка работает в счетах-фактурах. В регистре «Контракты» код подставляется только из карточки клиента — матрицу категории контракт не подхватывает. В регистре «Таблицы работ» смена клиента в окне поле «Таблица скидок» не заполняет: впишите код вручную, и строки получат проценты по тому же правилу. Таблица работ, созданная из заказа на обслуживание, берёт код сама — из карточки клиента, а если там пусто, из категории.
Скидка на период
«От даты» и «До даты» ограничивают действие записи. Под одним кодом может жить несколько записей: бессрочная (даты пустые) — повседневная скидка, и датированная — акционная. На дату документа система сначала ищет запись, чей период покрывает эту дату, и только потом бессрочную. Кончилась акция — сами вернулись повседневные проценты.
Порядок работы
1. Создать таблицу
Код, комментарий, базовый процент в шапке. При необходимости — строки матрицы на группы, бренды, товары; точечные строки — выше общих.
2. Назначить клиентам
Поле «Матрица скидок» в карточке клиента (вкладка «Финансы») или в категории клиентов.
3. Проверить документом
Создайте тестовый заказ на такого клиента и впишите несколько товаров: в колонке «%» должны появиться ожидаемые проценты.
Переменные печати
Значения, доступные в шаблонах печатных форм этого документа. Как записать переменную в шаблоне — см. Печатные формы.
Поля заголовка:
| Переменная | Что подставляется |
|---|---|
| DiscTable_Code | Код |
| DiscTable_Comment | Комментарий |
| DiscTable_StDate | От даты |
| DiscTable_EndDate | До даты |
| DiscTable_Discount | Скидка |
Поля строк:
| Переменная | Что подставляется |
|---|---|
| DiscTable_MNo | Номер позиции строки |
| DiscTable_MatrItemCode | Код товара |
| DiscTable_MatrGroupCode | Код группы |
| DiscTable_MatrBrandCode | Код бренда |
| DiscTable_MatrDiscount | Скидка |
Частые ситуации
Точечная строка «не сработала». Посмотрите на порядок: из совпавших строк действует ВЕРХНЯЯ. Точечные правила — над общими, а не под ними.
Скидка нулевая, хотя таблица заполнена. Два подозреваемых: период записи не покрывает дату документа (а бессрочной записи нет) или в карточке клиента пустое поле «Матрица скидок».
Изменили матрицу, а в старом заказе по-старому. Правка самой матрицы уже созданных документов не касается. Процент в строку подставляется, когда туда вписывают товар, а ещё — когда в шапке документа меняется «Матрица скидок» (вручную или вместе со сменой клиента): тогда пересчитываются все товарные строки, а проценты, поправленные руками, затираются. Чтобы применить новые проценты к неутверждённому документу, сотрите код в поле «Матрица скидок» шапки и впишите его снова.
Нужна скидка «на всё». Это и есть «Скидка %» в шапке — матрицу можно оставить пустой. А в конкретной строке документа процент всегда можно поправить руками.
Хочу исключить товар из скидки. Добавьте строку этого товара с 0 % и поставьте её выше строк его группы и бренда: сработавшая строка с 0 % даёт ноль, и базовый процент шапки на товар не ляжет.
Матрица не удаляется: «Запись реестра «Матрица скидок» используется в: …». На её код ссылается категория клиента, карточка контакта, контракт или документ — а категорию и карточку с кодом несуществующей матрицы уже не сохранить. Уберите код из места, которое названо в отказе. Если названы документы, матрицу придётся оставить; чтобы она больше не действовала, закончите её «До даты». Запись, которая не последняя под своим кодом (скажем, акционная рядом с бессрочной), удаляется свободно: код живёт, пока остаётся хоть одна его запись.
Справочник полей
| Поле | Описание |
|---|---|
| Код, Комментарий | Имя скидки; кодом она вписывается в карточки клиентов и категорий |
| От даты, До даты | Период действия записи; пусто — бессрочно |
| Скидка % (шапка) | Базовый процент на весь ассортимент |
| Код товара / Код группы / Код бренда | Кому назначена строка матрицы: товару либо группе и бренду; группа с брендом в одной строке действуют через «или» |
| Скидка % (строка) | Процент для этого товара/группы/бренда; из совпавших строк действует верхняя; 0 % — товар без скидки |