Результаты форматирования MDX - PullRequest
0 голосов
/ 15 апреля 2019

Я новичок в запросах MDX. У меня возникают проблемы с изменением формата вывода MDX. Я сделал аналогичный пример, используя «Модель интернет-продаж Adventure Works». Смотрите ниже:

WITH 
  MEMBER [Measures].[Calculate YTD] AS 
    Sum
    (
      periodstodate([Date].[Calendar].[Year],[Date].[Calendar].CurrentMember)
     ,[Measures].[Internet Total Sales]
    ) 
SELECT 
  {[Measures].[Internet Total Sales]

   ,[Measures].[Calculate YTD]

  } ON COLUMNS,
  [Date].[Calendar].[Month] ON ROWS

FROM [Adventure Works Internet Sales Model]

WHERE ([Date].[Date].&[2012-01-01T00:00:00]:[Date].[Date].&[2018-01-01T00:00:00])WHERE ([Date].[Date].&[2012-01-01T00:00:00]:[Date].[Date].&[2018-01-01T00:00:00])

результаты выглядят так:

Результаты MDX

Я хотел бы видеть, что строка «[Дата]. [Календарь]. [Месяц]» будет отображаться как дата конца месяца (например, 31 марта 2019 года)

1 Ответ

0 голосов
/ 15 апреля 2019

Добро пожаловать в ТАК!

Вы можете добавить в дополнительный столбец, показывающий последний день каждого месяца:

WITH 
  MEMBER [Measures].[Last Day of Month] AS 
    [Date].[Calendar].CurrentMember.LastChild.MEMBER_CAPTION
  MEMBER [Measures].[Last Day of Month v2] AS 
    TAIL(EXISTING [Date].[Date].[Date].MEMBERS).ITEM(0).ITEM(0).MEMBER_CAPTION
MEMBER [Measures].[Calculate YTD] AS 
    Sum
    (
      periodstodate(
        [Date].[Calendar].[Year],[Date].[Calendar].CurrentMember
      )
     ,[Measures].[Internet Total Sales]
    ) 
SELECT 
  { 
   [Measures].[Last Day of Month]
  , [Measures].[Last Day of Month v2]
   ,[Measures].[Internet Total Sales]
   ,[Measures].[Calculate YTD]
  } ON COLUMNS,
  [Date].[Calendar].[Month] 
  ON ROWS
FROM [Adventure Works Internet Sales Model]
WHERE 
(
 [Date].[Date].&[2012-01-01T00:00:00]:
 [Date].[Date].&[2018-01-01T00:00:00]
);

выход

...