|
возраст запасов
|
|||
---|---|---|---|
#18+
приветствую! посчитал запасы по схеме из топика https://www.sql.ru/forum/1337898/ostatki-po-tovaram-na-datu остатки построил на основании таблицы оборотов по этой формуле Код: sql 1. 2.
как теперь посчитать возраст запасов? в таблице движений есть поле PurchDate. создал ещё одну группу мер в который содержаться. DateKey - дата календарная, взял все даты текущего календаря. допустим 2021 год. PurchDate - все даты из таблицы движения. AgeDays - разница дат. правильно ли я понимаю, что теперь нужно на уровне листьев посчитать Веса(остаток*AgeDays ) ? попытался повторить то, что описано по ссылке https://blog.crossjoin.co.uk/2013/05/29/aggregating-the-result-of-an-mdx-calculation-using-scoped-assignments/ но результата не получил Код: vbnet 1. 2. 3. 4. 5. 6. 7.
и второй вопрос как при этой схеме сделать измерение с диапазонами возраста? а точнее как это измерение связать с Остатками... хелп пожалуйста. заранее спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 12:16 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
montoya., Честно говоря понятие "возраст остатков" выглядит странно. В декабре привезли 100 шт до марта продали 50 шт в марте привезли 200 штук до мая продали 150 (может из первой партии может из второй) . Каков возраст остатков в мае? Мы считали "оборачиваемость", то есть за какое время (дней) при текущей скорости продаж и текущем заполнении склада все будет продано. (либо исторически при заполнении склада на рассматриваемую дату). ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 18:16 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
a_voronin montoya., Честно говоря понятие "возраст остатков" выглядит странно. В декабре привезли 100 шт до марта продали 50 шт в марте привезли 200 штук до мая продали 150 (может из первой партии может из второй) . Каков возраст остатков в мае? Мы считали "оборачиваемость", то есть за какое время (дней) при текущей скорости продаж и текущем заполнении склада все будет продано. (либо исторически при заполнении склада на рассматриваемую дату). оборачиваемость - это оборачиваемость, без неё никуда. согласен нужно смотреть что у тебя товара допустим на 100 дней, а если ещё видеть что его на 100 дней и при этом он уже 300 дней лежит на складе....то волосы дыбом становятся) в общем возраст - тоже нужный показатель, что бы мониторить залежавшийся товар. сейчас я перестраиваю таблицу фактов со срезов на каждый день на "движение", что бы место сэкономить и скорости добавить. так что приведу пример на таблице "срезов". на Дату 2021/08/01 Товар 1 - Остаток 100 у.е. - Партия(дата прихода) 2021/07/01 -> Веса = 100 у.е * 31день => 3100 Товар 1 - Остаток 100 у.е. - Партия(дата прихода) 2021/06/01 -> Веса = 100 у.е * 61день => 6100 Возраст средне взвешенный = (3100 + 6100)/(100у.е.+100у.е) = 46 дней. в общем я на таблице "движений" уже возраст победил, получилось. теперь бьюсь над измерением диапазонов возраста.... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 18:39 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
a_voronin, А если скорость продаж равна нулю то получаем что? (Ситуаций полно - неликвид, загрузка склада до начала официальных продаж) Возраст товара величина разумная если принять утверждение "первыми отгружаются самые старые товары". Это обычно регулируется правилами отгрузки склада и вполне разумно из соображений периодического "просмотра". ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 18:46 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
a_voronin Честно говоря понятие "возраст остатков" выглядит странно. да учет по партиям автору нужен ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 20:11 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
Критик a_voronin Честно говоря понятие "возраст остатков" выглядит странно. да учет по партиям автору нужен мне совет нужен) сам возраст как меру уже сделал. работает как нужно. сделал как 1. есть таблица движения по ней скрутил остатки на дату как описано выше. 2. создал вторую таблицу фактов Дата-ДатаПрихода-Возраст Дней. 3. по схеме выше посчитал возраст как теперь сделать измерение групп возраста...? на таблице остатков "срезы на каждый день" всё было просто в таблице фактов было поле "возраст дней" и таблица измерения с группами, никаких заморочек. как в кейсе "движений" завязаться на измерение возраста? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 21:00 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
montoya. Критик пропущено... да учет по партиям автору нужен мне совет нужен) сам возраст как меру уже сделал. работает как нужно. сделал как 1. есть таблица движения по ней скрутил остатки на дату как описано выше. 2. создал вторую таблицу фактов Дата-ДатаПрихода-Возраст Дней. 3. по схеме выше посчитал возраст как теперь сделать измерение групп возраста...? на таблице остатков "срезы на каждый день" всё было просто в таблице фактов было поле "возраст дней" и таблица измерения с группами, никаких заморочек. как в кейсе "движений" завязаться на измерение возраста? Дайте точную математическую формулировку того, что вы хотите получить. В программирование нужно начинать с этого. В вайлдберриз я делал что-то подобное и у меня были три группы мер (по факту три разные группировки от остатков -- не группированная, по поставщикам и по партиям). Между ними переключались через SCOPE. Если выбраны конкретные партии -- показывалось одно, если поставщики, то другое, если ничего не выбрано, то третье. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.08.2021, 13:40 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
a_voronin montoya. пропущено... мне совет нужен) сам возраст как меру уже сделал. работает как нужно. сделал как 1. есть таблица движения по ней скрутил остатки на дату как описано выше. 2. создал вторую таблицу фактов Дата-ДатаПрихода-Возраст Дней. 3. по схеме выше посчитал возраст как теперь сделать измерение групп возраста...? на таблице остатков "срезы на каждый день" всё было просто в таблице фактов было поле "возраст дней" и таблица измерения с группами, никаких заморочек. как в кейсе "движений" завязаться на измерение возраста? Дайте точную математическую формулировку того, что вы хотите получить. В программирование нужно начинать с этого. В вайлдберриз я делал что-то подобное и у меня были три группы мер (по факту три разные группировки от остатков -- не группированная, по поставщикам и по партиям). Между ними переключались через SCOPE. Если выбраны конкретные партии -- показывалось одно, если поставщики, то другое, если ничего не выбрано, то третье. сам возраст как меру уже сделал, всё ок. - этот вопрос закрыт.(решение :"формулла Моши + решение Крисса") сейчас застрял на "измерении" возарста. хочу допустим вывести все остатки с возрастом от 30 до 60 дней(группа 30-60). итого что есть для каждой партии товара есть посчитанный возраст. возьмём одну конкретную строку. по ней например возраст 50 дней. и теперь хочу сделать измерение основанное на этой посчитанной мере что бы я мог вывести сумму остатков с возрастом 50 дней и т.д.(группы) т.е. суть задачи поидее сводиться к "привязать к расчётной мере измерение" или возможно есть другой путь... ещё раз что хочу видеть на выходу на любую выбранную дату в фильтре выводить сумму остатоков по группам возраста. например: фильтр: 2021/08/25 строки: категория/группа возраст 0-30;30-60;60-90;90-120;>120 мера: сумма остатка. нашёл вот такое http://tomislav.piasevoli.com/2009/08/24/implementing-buckets-in-olap/ ковыряю. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.08.2021, 10:22 |
|
возраст запасов
|
|||
---|---|---|---|
#18+
ShIgor спасибо! похоже что подход тот же что и в этом детально описанном посте http://tomislav.piasevoli.com/2009/08/24/implementing-buckets-in-olap/ создать не привязонное ни к чему измерение и далее скопами вязать к нему данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.08.2021, 20:55 |
|
|
start [/forum/topic.php?fid=49&fpage=3&tid=1857101]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
9ms |
check topic access: |
9ms |
track hit: |
152ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 7ms |
total: | 267ms |
0 / 0 |