Спорное - т.к. отчет будет давать разный результат при указании единственной группировки, скажем Номенклатура.Артикул и при указании этой же группировки с детализацией, скажем Номенклатура.Артикул - Номенклатура.Родитель, т.к. в первом случае в запросе будут получены и соответствующим образом отсортированы свернутые данные с группировкой по Номенклатура.Артикул, а во втором по Номенклатура.Артикул, Номенклатура.Родитель, что дает разный уровень детализации и как следствие - разные значения сумм или коэффициентов, по которым строка таблицы отностися к той или иной группе. Можете поэкспериментировать. Еще раз отмечу - не уверен что подобный подход (ABC анализ - по "пересекающимся" реквизитам) - вообще верен.
Отчет написан на основании [УТ11] ABC анализ номенклатуры, клиентов, как в ТиС 7.7
Про спорность решения подробнее: На рисунке (заранее извиняюсь за размер), приведено 2 варианта построения отчета за один и тот же пириод по одной и той же базе.
1. С группировкой по Партнер.Родитель.
2. С группировкой по Партнер.Родитель а затем по Партнер.
Видно, что результат существенно различается:
Сравните Суммы 1.1 и 2.1, 1.2 и 2.2, 1.3 и 2.3, и количество входящих в класс элементов.
Разберемся почему это происходит:
В первом случае по регистру строится запрос с колонками ПартнерРодитель, Выручка, в результате получаем таблицу свернутую по ПартнерРодитель с суммированием по Выручка, далее происходит сортировка по убыванию Выручки, и распределение по соответствующим классам A, B, C. Так работает "классический" ABC-анализ.
Во втором случае по регистру строится запрос с колонками ПартнерРодитель, Партнер, Выручка, в результате получаем таблицу свернутую по ПартнерРодитель, Партнер с суммированием по Выручка (т.е. с бОльшей детализацией чем в первом случае), далее происходит сортировка по убыванию Выручки (таблицы с бОльшей детализацией), и распределение по соответствующим классам A, B, C...
Т.е. если имеем например такую таблицу:
Партнер.Родитель | Партнер | Выручка, % |
Калиниградская область | Партнер К1 | 40 |
Калиниградская область | Партнер К2 | 25 |
Калиниградская область | Партнер К3 | 14 |
Калиниградская область | Партенр К4 | 1 |
Пензенская область | Партнер П1 | 15 |
Пензенская область | Партнер П2 | 3 |
Пензенская область | Партенр П3 | 1 |
Пензенская область | Партнер П4 | 1 |
Итого | 100 |
По первому варианту (группировка по Партнер.Родитель) она примет вид:
Партнер.Родитель | Выручка, % | Класс |
Калиниградская область | 40+25+14+1 = 80 | А |
Пензенская область | 15+3+1+1 = 20 | |
Итого | 100 |
И мы получим, что к классу A относится только Калиниградская область.
По второму варианту (группировка по Партнер.Родитель, Партнер) она примет вид (тут просто произойдет сортировка):
Партнер.Родитель | Партнер | Выручка, % | Класс |
Калиниградская область | Партнер К1 | 40 |
40+25+15 = 80 Класс А |
Калиниградская область | Партнер К2 | 25 | |
Пензенская область | Партнер П1 | 15 | |
Калиниградская область | Партнер К3 | 14 | |
Пензенская область | Партнер П2 | 3 | |
Калиниградская область | Партенр К4 | 1 | |
Пензенская область | Партенр П3 | 1 | |
Пензенская область | Партнер П4 | 1 | |
Итого | 100 |
Т.е. видно, что Пензенская область одним своим партнером "втесалась" в класс А, а также обратите внимание, что в общем случае может измениться и процент класса А.
Жду Ваших соображений в комментариях.
PS: А началось все с того, что клиент захотел увидеть - а кто же конкретно из Калиниградской области больше всего покупает? И нате - суммы "поплыли".