|
|
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
Всем доброго времени суток. Есть таблица фактов в которой хранится информация по применяемым скидкам в заказах покупателя. Причем на один товар могут одновременно применяться несколько скидок. Например, в заказе №12: на товар1 в кол-ве 50 шт применяются скидки: Скидка1 - 5%, Скидка2 - 8% и Скидка3 - 2% на товар2 в кол-ве 80 шт применяются скидки: Скидка1 - 5%, Скидка2 - 8% OrderID Item Qty BasePrice TotalSum DiscountType Discount_% Discount_Sum 12 Товар1 50 1000 50000 Скидка1 5 2500 12 Товар1 50 1000 50000 Скидка2 8 4000 12 Товар1 50 1000 50000 Скидка3 2 1000 12 Товар2 80 1000 80000 Скидка1 5 4000 12 Товар2 80 1000 80000 Скидка2 8 6400 Если построить куб, то мера Qty просуммируется и получим результат на уровне товара1 - 150шт, на уровне Товар2 - 160шт, а на уровне заказа по всем товарам получим 310шт, хотя по факту в заказе было всего 130шт. Посоветуйте как лучше реализовать задачу, с учетом того, что в конечном итоге необходимо определить стоимость товара с учетом всех скидок. Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2017, 09:19 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
Kopilogus, прочитайте про м2м у учебной базе есть хороший пример для понимания ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2017, 12:21 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
Kopilogus, считайте в хранилище ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2017, 12:56 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
StarikNavyпрочитайте про м2м о чем читать? тут не m2m, тут 2 факта с разной гранулярностью. либо бить на 2 группы мер (это предпочительнее, т.к. есть несколько мер), либо расшивать факты типа: OrderIDItemTrnTypeQtyBasePriceSumDiscount_%12Товар1Продажа50100050000012Товар1Скидка100-2500512Товар1Скидка200-4000812Товар1Скидка300-1000212Товар2Продажа80100080000012Товар2Скидка100-4000512Товар2Скидка200-64008 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2017, 13:15 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
Kopilogus, переделайте таблицу, если возможно, так: OrderID Item Qty BasePrice TotalSum Discount_%_1 Discount_Sum_1 Discount_%_2 Discount_Sum_2 Discount_%_3 Discount_Sum_3 Если невозможно, то используйте Scope и вычисляемые меры как максимальное значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2017, 15:29 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
Сделать два представления 1. OrderID Item Qty BasePrice TotalSum 12 Товар1 50 1000 50000 12 Товар2 80 1000 80000 2. OrderID Item DiscountType Discount_% Discount_Sum 12 Товар1 Скидка1 5 2500 12 Товар1 Скидка2 8 4000 12 Товар1 Скидка3 2 1000 12 Товар2 Скидка1 5 4000 12 Товар2 Скидка2 8 6400 По первому представления будет мера Сумма ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2017, 17:32 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
По второму Скидка Сумму с учетом скидки сделать как вычисляемую меру Сумма - Скидка. Если нужно анализировать суммы продаж в разрезе типов скидок, то настраиваем м2м через представление скидок к представлению продаж. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2017, 17:34 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
bideveloper... то настраиваем м2м через представление скидок к представлению продаж. покажите где здесь m2m. По Вашему между Товаром и Датой тогда тоже m2m!!! Конкретный Заказ имеет несколько Продаж товаров - да Конкретная Продажа товара имеет несколько Заказов - нет Конкретный Заказ имеет несколько Скидок на товар - да Конкретная Скидка на товар имеет несколько Заказов - нет ну и транзитивность Конкретная Продажа товара имеет несколько Скидок на товар - да Конкретная Скидка на товар имеет несколько Продаж товара - НЕТ Вот если бы была скидка не только на позицию в заказе но и на заказ в целом.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2017, 12:51 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
ShIgor, Тип скидки относится к нескольким строкам заказов и одна строка заказа может относится к нескольким типам скидок. Например, нужен отчет по продажам и скидкам в разрезе типов скидок Скидка1 и Скидка3 Если делать без настройки связи многие ко многим (с таблицей фактов, как в исходном примере, то будет так) DiscountType Qty TotalSum Discount_Sum Скидка 1 130 130000 6500 Скидка 3 50 50000 1000 Итог 180 180000 7500 Если сделать, как я предложил, то будет так DiscountType Qty TotalSum Discount_Sum Скидка 1 130 130000 6500 Скидка 3 50 50000 1000 Итог 130 130000 7500 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2017, 14:38 |
|
||
|
Расчет CM в зависимости от выбранного измерения
|
|||
|---|---|---|---|
|
#18+
Еще поясню для полной ясности ) Строка заказа != строка в таблице фактов у автора Строка 1 заказа у автора представлена 3-мя строками в таблице фактов и относится к 3-м типам скидок. Строка 2 заказа представлена 2-мя строками в таблице фактов и относится к 2-м типам скидок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2017, 14:46 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=39474061&tid=1858212]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
156ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 15ms |
| total: | 270ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...