|
Вопрос по применению count() в Calculated members
|
|||
---|---|---|---|
#18+
Здравствуйте. Нужна помощь ! Имеется маленький кубик : Измерения: 1. Счет ( Документ "Счет на оплату") 2. Платежка (Докумнет "Платежное поручение") 3. СуммаСчета 4. СуммаПлатежа 5. Заказчик Если счет на оплату оплачивается несколькими платежками, то в итоговых данных Сумма счета удваивается, утраивается и т.д. в зависимости от количества платежек. Счет СуммаСчета Платежка Дата платежки Сумма платежки Сч1 100р Пл1 март,2002 30р Сч1 100р Пл2 апрель, 2002 30р Сч1 100р Пл3 май 2002 20р Сч1 100р Пл4 июнь 2002 20р Итого: 400р (должно быть 100) 100р Чтобы исправить это я решил изменить sql-запрос и разделить Сумму счета на колличество платежек: Счет СуммаСчета Платежка Дата платежки Сумма платежки Сч1 25р Пл1 март,2002 30р Сч1 25р Пл2 апрель, 2002 30р Сч1 25р Пл3 май 2002 20р Сч1 25р Пл4 июнь 2002 20р Итого: 100р 100р Все здорово, но когда делаешь выборку в OLAP по дате платежек, например за март месяц, то получится след картина: Счет СуммаСчета Платежка Дата платежки Сумма платежки Сч1 25р Пл1 март,2002 30р Итого: 25р (должно быть 100) 30р Вот, решил исправлять эту проблему с помощью Calculated Members, но пока не совсем получается. Пробывал разные формулы, в том чиле вот эту (она мне показалось самой подходящей) count((CrossJoin({[Счет]}, [Платежка].Members)),EXCLUDEEMPTY) но она выдает пустой результат. Вопрос: 1. Как найти количество платежек для каждого счета для заданного дипазона дат ? 2. Может есть другие варианты для решение проблемы с "искажением" итогов ? Заранее благодарю всех тех, кто отзовется. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2003, 21:02 |
|
Вопрос по применению count() в Calculated members
|
|||
---|---|---|---|
#18+
Таблица фактов: сумма счета сумма платежа счет// причем в виде Имя счета+' ('+Сумма счета+')' - чиста для красоты платежки заказчик дата запись при внесении счета: 100 0//лучше NULL Счет пусто Заказчик Дата//счета, видимо Запись при внесении платежа 0//опять же лучше NULL 25 Счет Платежка Заказчик Дата//платежа, само собой. На самом деле еще бы нормализацию типа сделать, но это ты как бы сам. Тогда итог будет такой: Счет СуммаСчета Платежка Дата платежки Сумма платежки Сч1(100р) 100р <> март,2002 0 р Сч1(100р) 0р Пл1 март,2002 30р Сч1(100р) 0р Пл2 апрель, 2002 30р Сч1(100р) 0р Пл3 май 2002 20р Сч1(100р) 0р Пл4 июнь 2002 20р и итог - типа правильный. и видно вроде все. Для второго случая: Сч1(100р) 0р Пл1 март,2002 30р видно, что оплачено 30 рублей, счетов выставлено на 0 рублей (так и есть!) И сумма по оплачеваемому счету тоже видна. ......... Блин, длинно получилось... %) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2003, 09:01 |
|
|
start [/forum/topic.php?fid=49&fpage=413&tid=1873518]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
39ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 128ms |
0 / 0 |