У меня запрос MDX
, целью которого является чтение моего куба, чтобы сообщать мне некоторые данные за раз, скажем, Year
, Month
и Starting Day
и Ending Day
в качестве интервала.
Этот запрос (упрощенный):
WITH
MEMBER [Measures].[N Tiendas AA] AS ( STRTOMEMBER( @pPrevAno, CONSTRAINED ) , [Measures].[N Tiendas] )
SELECT NON EMPTY {
[Measures].[N Tiendas],
[Measures].[N Tiendas AA]} ON COLUMNS,
NON EMPTY { [Tiempo].[Meses].[Mes] }
ON ROWS FROM ( ... )
ON COLUMNS FROM ( SELECT ( STRTOSET(@pEjercicio, CONSTRAINED) )
ON COLUMNS FROM ( SELECT ( STRTOSET(@pMes, CONSTRAINED) )
ON COLUMNS FROM ( SELECT STRTOMEMBER(@pDiaInicio, CONSTRAINED):STRTOMEMBER(@pDiaFin, CONSTRAINED)
ON COLUMNS FROM [Transacciones]))))
Как видите, я фильтрую в конце между pDiaInicio
и pDiaFin
мои дни начала и окончания в течениемесяц.
Кажется, все в порядке.Но проблема в том, что, как вы можете видеть в заявленных членах в начале, я пытаюсь переместить это, чтобы также фильтровать те же дни и месяцы, что и в предыдущем году.
Для этого я в основномсозданные члены, использующие предыдущий год @pPrevAno
для запроса той же меры.
Так что дело в том, что я не уверен, правильно ли это перемотка , которую я пытаюсь выполнить,Числа кажутся вполне приемлемыми, какими они должны быть, но мне не хватает опыта или технических знаний, чтобы быть уверенным.
Просто чтобы прояснить мой вопрос:
Будет [Меры].[N Tiendas AA] имеют значение за период времени, переоцененный до pPrevAno
года?Если нет, то как этого достичь?
PS.Я тоже пробовал с PARALLELPERIOD
, но цифры сошли с ума.Это было что-то вроде:
MEMBER [Measures].[N Tiendas AA 2] AS ( PARALLELPERIOD( [Tiempo].[Periodos].[Ano] , 1 , STRTOMEMBER( @pPrevAno, CONSTRAINED ) ),[Measures].[N Tiendas] )