Текущее время: Вт, авг 26 2025, 17:09

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Некумулятивный показатель на дате
СообщениеДобавлено: Пт, янв 24 2014, 09:46 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Рассмотрим упрощенно такой пример. Происходит поступление/выбытие материала:

Д/К Дата_проводки Кол-во(кумулятив)
S 01.01.2010 5
S 01.01.2011 5
H 01.01.2012 -5

Если построить отчет на некумулятивном показателе, выводящем остаток на 01.01.2013, то получим

Кол-во(некумулятив)
5

Теперь появляется дополнительное требование - вывести в отчете дату последнего поступления (на самом деле в реальности все, разумеется, существенно сложнее, но для ясности пусть будет пока так)

В отчете, приведенном выше, некумулятив используется, чтобы максимально быстро получить результат, и ограничение в фильтре задано как "=01.01.2013". Новый отчет при этом должен выглядеть так

Кол-во(некумулятив) Дата_последнего_поступления
5 01.01.2011

при этом дата последнего поступления 01.01.2011 не должна искаться по условию "<=01.01.2013", то есть нет такой роскоши, как просмотр и анализ всех записей вплоть до 01.01.2013. Поэтому возникла идея как-то извернуться и попробовать создать еще и некумулятивный показатель для даты последнего поступления, чтобы оставить ограничение "=01.01.2013" и при этом получить

Кол-во(некумулятив) Дата_последнего_поступления(некумулятив)
5 01.01.2011

Но при создании некумулятивных показателей они могут иметь агрегацию только "SUM", а нужен, по идее, "MAX". Может есть у кого идеи, как выйти из неприятного положения?!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Некумулятивный показатель на дате
СообщениеДобавлено: Пт, янв 24 2014, 10:16 
Почетный гуру
Почетный гуру

Зарегистрирован:
Чт, фев 03 2005, 10:18
Сообщения: 503
murmur написал:
Но при создании некумулятивных показателей они могут иметь агрегацию только "SUM", а нужен, по идее, "MAX". Может есть у кого идеи, как выйти из неприятного положения?!

А если создать кумулятивный показатель с агрегацией "MAX", а в отчете дополнительно его ограничить по Д/К ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Некумулятивный показатель на дате
СообщениеДобавлено: Пт, янв 24 2014, 10:29 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Так и было сделано изначально, но данных очень много (плюс еще идет спецагрегация по партиям) и решение на кумулятивных показателях не справляется. Агрегатами тоже проблему пока не получается решить, т.к. от дневной детализации не удается избавиться. Очень не хотелось бы создавать куб с остатками, т.к. это потребует существенной переработки

К тому же, если еще добавить реалистичности, то требуется также рассчитать срок хранения (в днях или месяцах) с момента последнего поступления, то есть

Кол-во Дата_последнего_поступления Срок_хранения
5 01.01.2011 ...сколько-то там дней (месяцев)

Есть еще одна особенность, которая вносит дополнительную сложность в оптимизаию - это сторнирование. Если материал поступил 01.01.2011, затем еще было поступление 01.03.2011, а затем второе поступление было сторнировано 01.06.2011, то датой последнего поступления считается 01.01.2011.

С кумулятивными показателями все работает и считается, но чем дальше уходим по времени вправо, тем печальнее... Возможно, у кого-то подобная задача была. Интересуют любые идеи и способы выхода из ситуации (кроме самых радикальных) :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Некумулятивный показатель на дате
СообщениеДобавлено: Пн, янв 27 2014, 05:34 
Специалист
Специалист

Зарегистрирован:
Вт, июн 10 2008, 07:22
Сообщения: 163
Откуда: Ektb
Пол: Мужской
Приветствую!

Быть может посмотреть в сторону использования некумулятива только для данных остатков, а для дат использовать другой провайдер (DSO, куб)? Тем самым логику со сторно (для дат) можно обрабатывать на этапе загрузки, и количество показателей в некумулятивном кубе подсократить.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Некумулятивный показатель на дате
СообщениеДобавлено: Пн, янв 27 2014, 07:52 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
А можно поконкретнее по поводу другого провайдера: какой должна быть логика обработки сторно, при которой бы не пришлось просматривать все данные?!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Некумулятивный показатель на дате
СообщениеДобавлено: Ср, янв 29 2014, 11:23 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Чтобы не создавать отдельную тему задам вопрос здесь (так как все в рамках одной задачи)...

Как известно, при сжатии некумулятивного куба, в область 0recordtp = 1 E-таблицы попадают записи с остатками на дату 31.12.9999. Вопрос - почему в этой области не удаляются записи со всеми нулевыми показателями (кумулятивными и некумулятивными)?

Пример куба до сжатия (F-таблица):
0recordtp kf_in kf_out
0 10 0
0 0 10

Пример куба после сжатия (E-таблица) с удаление строк с нулевыми показателями:
0recordtp kf_in kf_out
0 10 10
1 0 0

То есть строки с нулевыми показателями для 0recordtp=1 не удаляются. Это баг и надо искать ноту (пока не нашел) или нулевые остатки для некумулятивов должны всегда храниться? Но такое хранение приводит к тому, что область 0recordtp=1 распухает, особенно, если остатки приходится хранить на достаточно детальном уровне


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB