Сначала немного предыстории: у меня есть типичное измерение «Дата» (подобное тому, что есть в кубе Adventure Works) и измерение «Счет». В моей таблице фактов указаны ежедневные суммы транзакций для счетов.
Мне нужно рассчитать совокупные суммы транзакций для разных счетов за разные периоды времени. Загвоздка в том, что первый период, показанный в итоговом отчете, должен получать сумму транзакции как есть из таблицы фактов, а все последующие периоды в отчете должны иметь кумулятивные суммы.
Например, у меня может быть одна учетная запись для строк и столбцов, которые я мог бы иметь [Дата]. [Календарь]. [Календарный год]. [& 2005]: [Дата]. [Календарь]. [Календарный год]. [& 2010] . Сумма транзакции за 2005 год должна соответствовать сумме сумм транзакции, имевшей место в 2005 году для этого конкретного счета. В следующем 2006 году сумма транзакции должна быть TransactionAmountsIn2005 + TransactionAmountsIn2006. То же самое и в оставшиеся годы.
Моя проблема в том, что я действительно не знаю, как указать такой вычисляемый элемент в кубе, потому что конечный пользователь, ответственный за написание фактических запросов многомерных выражений, которые создают отчеты, может использовать любой диапазон периодов на любом уровне иерархии измерение "Дата".
Надеюсь, это имело какой-то смысл.