首页 > 解决方案 > MDX 动态日期过滤器

问题描述

我正在尝试使用 MDX 语句通过 SSAS 将数据导入 PowerBI。

下面的脚本选择周结束日期 = 16-2 月的记录。

我需要修改它以返回 2 月 16 日和 2 月 9 日结束的一周。

我已使用 LASTCHILD.LAG(11) 返回 16-Feb,因此需要一种在我的“周”层次结构中返回 -11 和 -12 成员的方法。

请帮忙,谢谢!

SELECT 
        {[Measures].[Roster Actual Sum Hours Nett]} ON COLUMNS,
    NON EMPTY 
        {
                [Staff].[Display Name].[Display Name].ALLMEMBERS*
                [Staff].[StaffNumber].[StaffNumber].ALLMEMBERS*
                [Staff].[CubeCode].[CubeCode].ALLMEMBERS*
                [Site].[Site Name].[Site Name].ALLMEMBERS*
                [Site].[GeographyName].[GeographyName].ALLMEMBERS*
                [Roster Type].[Roster Type].[Roster Type].ALLMEMBERS*
                [Date].[Roster Week].LASTCHILD.LAG(11)
        }
    DIMENSION PROPERTIES 
        MEMBER_CAPTION,
        MEMBER_UNIQUE_NAME
     ON ROWS
FROM 
[Model]
CELL PROPERTIES 
    VALUE,
    BACK_COLOR,
    FORE_COLOR,
    FORMATTED_VALUE,
    FORMAT_STRING,
    FONT_NAME,
    FONT_SIZE,
    FONT_FLAGS;

标签: sasspowerbimdx

解决方案


解决了...

SELECT 
    {[Measures].[Roster Actual Sum Hours Nett]} ON COLUMNS,
    NON EMPTY 
        {
                [Staff].[Display Name].[Display Name].ALLMEMBERS*
                [Staff].[StaffNumber].[StaffNumber].ALLMEMBERS*
                [Staff].[CubeCode].[CubeCode].ALLMEMBERS*
                [Site].[Site Name].[Site Name].ALLMEMBERS*
                [Site].[GeographyName].[GeographyName].ALLMEMBERS*
                [Roster Type].[Roster Type].[Roster Type].ALLMEMBERS*
                [Date].[Roster Week].[Roster Week].ALLMEMBERS
        }
     ON ROWS
FROM 
(
    SELECT 
        {
            [Date].[Roster Week].LastChild.Lag(11),
            [Date].[Roster Week].LastChild.Lag(12)
        } ON COLUMNS
    FROM [Model]
)

推荐阅读