// Процедура присваивания обрабатывает года, чтобы исключить All, если он присутствует.
  ( [Date].[Fiscal Date Calculations].[Year to Date],
    [Date].[Fiscal Year].[Fiscal Year].Members ) =

  Aggregate(
            { [Date].[Fiscal Date Calculations].DefaultMember } *
            PeriodsToDate(
                          [Date].[Fiscal].[Fiscal Year],
                          [Date].[Fiscal].CurrentMember
            )
  ) ;


  // Присваивание для годов от 2 до последнего.
  ( [Date].[Fiscal Date Calculations].[Year Over Year Growth],   
   [Date].[Fiscal Year].[Fiscal Year].Members ( 1 ) : Null ) =     

  ( [Date].[Fiscal Date Calculations].DefaultMember ) -
  ( [Date].[Fiscal Date Calculations].DefaultMember,
    ParallelPeriod(
                   [Date].[Fiscal].[Fiscal Year],
                   1,
                   [Date].[Fiscal].CurrentMember
    )
  ) ;


  // Присваивание для обработки года 1, где сравнение невозможно.
  ( [Date].[Fiscal Date Calculations].[Year Over Year Growth],   
    [Date].[Fiscal Year].[Fiscal Year].Members ( 0 )
  ) = Null ;


    // Присваивание обрабатывает годы, исключая All, если данный член присутствует.
  ( [Date].[Fiscal Date Calculations].[Twelve Month Moving Average],
    [Date].[Month Name].[Month Name].Members ) =

  Avg(
      {
       ParallelPeriod(
                      [Date].[Fiscal].[Month],
                      11,
                      [Date].[Fiscal].CurrentMember
       ) : [Date].[Fiscal].CurrentMember
      },
      [Date].[Fiscal Date Calculations].DefaultMember
  ) ;

Поделитесь материалом с коллегами и друзьями