SAPфорум.RU https://sapboard.ru/forum/ |
|
Exceptional Aggregation или модель данных https://sapboard.ru/forum/viewtopic.php?f=12&t=95998 |
Страница 1 из 1 |
Автор: | fedo [ Пн, янв 29 2018, 13:50 ] |
Заголовок сообщения: | Exceptional Aggregation или модель данных |
Привет всем, Надеюсь форум скоро снова проснется, а то всего несколько сообщений за январь. Даны следующие исходные данные по материалу: Code: 0Material ¦ Movement ¦ 0Fiscper ¦ Value AAA ¦ Beginning Inventory ¦ 03.2016 ¦ 100 AAA ¦ Receipt ¦ 03.2016 ¦ 200 AAA ¦ Ending Inventory ¦ 03.2016 ¦ 300 AAA ¦ Beginning Inventory ¦ 04.2016 ¦ 300 AAA ¦ Ending Inventory ¦ 04.2016 ¦ 300 AAA ¦ Beginning Inventory ¦ 05.2016 ¦ 300 AAA ¦ Consumption ¦ 05.2016 ¦ 250 AAA ¦ Ending Inventory ¦ 05.2016 ¦ 50 Если пользователь запрашивает период, а не конкретный месяц, то в строках Beginning/Ending Inventory должно быть значение именно на начало и конец периода (определяем через Customer-Exit), а в остальных строках сумма за период. Вроде решение простое, определить структуру с Типом движения и в ячейках ограничить показатель 0Fiscper для Beginning/Ending Inventory началом и концом периода, выглядит не плохо: Code: 0FISCPER = 03.2016-05.2016 0Material ¦ Movement ¦ Value AAA ¦ Beginning Inventory ¦ 100 / на 03.2016 AAA ¦ Receipt ¦ 200 / за период AAA ¦ Consumption ¦ 250 / за период AAA ¦ Ending Inventory ¦ 50 / на 05.2016 если изменить фильтр, то все еще ок: Code: 0FISCPER = 01.2016-12.2016 0Material ¦ Movement ¦ Value AAA ¦ Beginning Inventory ¦ 0 / на 01.2016 AAA ¦ Receipt ¦ 200 / за период AAA ¦ Consumption ¦ 250 / за период AAA ¦ Ending Inventory ¦ 0 / на 12.2016 Но все плывет, если пользователь хочет посмотреть развертку по 0FISCPER, ведь получается, что для Beginning/Ending Inventory они ограничены переменной: Code: 0Material ¦ Movement ¦ 0Fiscper ¦ Value AAA ¦ Beginning Inventory ¦ 01.2016 ¦ AAA ¦ Beginning Inventory ¦ 02.2016 ¦ AAA ¦ Beginning Inventory ¦ 03.2016 ¦ 100 AAA ¦ Beginning Inventory ¦ 04.2016 ¦ 0 – Ошибка, значение существует AAA ¦ Beginning Inventory ¦ 05.2016 ¦ 0 – Ошибка, значение существует Использовать exceptional aggregation (First Value для Beginning Inventory и Last Value для Ending Inventory) в таком построении не удается, потому что при фильтре 01.2016-12.2016, First/Last Value будут взяты из транзакционных данных, то есть данные за 03.2016 и 05.2016, соответственно, а не из 01 и 12, как хотелось бы. Создал формулу и заполнил нулями если пусто, в надежде использовать для показателя, но агрегация происходит до калькуляции (раньше была такая опция, в 7.4 уже нету). Пока как временное решение, пробую дополнительную генерацию строк в ДСО и кубе для месяцев, где нет данных, заполнить их 0, но это увеличивает нагрузку на систему и раздувает куб/дсо до четырех раз, зато отчет работает нормально Code: 0Material ¦ Movement ¦ 0Fiscper ¦ Value AAA ¦ Beginning Inventory ¦ 01.2016 ¦ 0 - Новое значение AAA ¦ Beginning Inventory ¦ 02.2016 ¦ 0 - Новое значение AAA ¦ Beginning Inventory ¦ 03.2016 ¦ 100 AAA ¦ Beginning Inventory ¦ 04.2016 ¦ 0 - Новое значение AAA ¦ Beginning Inventory ¦ 05.2016 ¦ 0 - Новое значение ... и так для всех типов движений Как обхитрить систему? |
Автор: | murmur [ Вт, янв 30 2018, 17:07 ] |
Заголовок сообщения: | Re: Exceptional Aggregation или модель данных |
Некуммулятивные показатели пробуйте. Не зря ведь они были придуманы и в стандарте используются |
Автор: | fedo [ Пт, фев 02 2018, 12:12 ] |
Заголовок сообщения: | Re: Exceptional Aggregation или модель данных |
Я думал об этом, но правильное определение дельты-показателя или вход/выход мне не ясны. Ведь получается, что показатель всегда содержит уже новое значение. Можно, конечно, создать фейковый дельта показатель. |
Автор: | bwbams [ Пт, фев 09 2018, 17:57 ] |
Заголовок сообщения: | Re: Exceptional Aggregation или модель данных |
если пользователь может менять развертку, то это уже аналитический гибкий отчет. это не очень хорошая идея давать пользователю менять развертку в первом отчете. делайте лучше 2 отчета. имхо, потратите много времени с сомнительной перспективой. по поводу того, что нет расчета до агрегации - это Вы придумали, всё есть. и еще момент один - где четко задано, в каком порядке выводяться проводки в первом отчете? где-то же есть у вас ID- проводки с автоинкрементом ? |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |