powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Вопрос по применению count() в Calculated members
2 сообщений из 2, страница 1 из 1
Вопрос по применению count() в Calculated members
    #32113948
Ser. Shishov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.

Нужна помощь !

Имеется маленький кубик :
Измерения:
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. Может есть другие варианты для решение проблемы с "искажением" итогов ?


Заранее благодарю всех тех, кто отзовется.
...
Рейтинг: 0 / 0
Вопрос по применению count() в Calculated members
    #32114029
Дядя Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблица фактов:

сумма счета
сумма платежа
счет// причем в виде Имя счета+' ('+Сумма счета+')' - чиста для красоты
платежки
заказчик
дата

запись при внесении счета:

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 рублей (так и есть!)
И сумма по оплачеваемому счету тоже видна.

.........
Блин, длинно получилось... %)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Вопрос по применению count() в Calculated members
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]