В моем кубе SSAS возникла непростая для меня проблема с дизайном. Вопрос относится к общей практике бухгалтерского учета, у меня есть таблица фактов, содержащая финансовые транзакции (то есть бухгалтерская книга), и каждая из этих транзакций помечена датой транзакции и периодом. Период НЕ связан напрямую с днем или серией дней. Пользователи могут закрыть период в середине дня, если на это время они закончили свою месячную работу.
Мне нужно иметь возможность отчитываться о дебиторской задолженности (AR) по дате и периоду. Я не использую Enterprise Edition SSAS, поэтому полуаддитивные параметры интеллектуального анализа данных мне недоступны, и даже если бы они были, они позволили бы только одному временному измерению использовать нестандартную агрегацию, и я считаю, что в этом случае мне нужны два, которые разрешите это.
Дебиторская задолженность - это промежуточная сумма, она должна быть суммой последнего выбранного элемента бухгалтерской книги и всего, что было до него. Я знаю, как выполнить этот расчет в многомерных выражениях для одного измерения времени, но как я могу позволить этому работать с двумя измерениями времени, датой транзакции и закрытием периода? Считается ли в этом случае близкий период вообще "временным" измерением? У него есть временной аспект, и мне нужны суммы за все периоды до текущего.
Я не понимаю, как связать два измерения времени с единой таблицей фактов и использовать разные агрегаты для каждого. Возможно, лучшее решение здесь - иметь две периодические таблицы моментальных снимков (вместо попытки агрегировать эту информацию из таблицы FactLedger), одна агрегированная по дате транзакции и одна по периоду, что является решением, к которому я сейчас склоняюсь, но мне бы хотелось второй мнение.