Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Filter MDX查询过滤器_Filter_Ssas_Mdx_Where Clause - Fatal编程技术网

Filter MDX查询过滤器

Filter MDX查询过滤器,filter,ssas,mdx,where-clause,Filter,Ssas,Mdx,Where Clause,我需要根据列(DatetimeA)进行筛选。DatetimeA中的值的格式为19990101(yyyyMMdd)。我需要过滤我的数据,只显示过去60天 Mdx查询: SELECT NON EMPTY {Measures].[DateA] } ON COLUMNS ,NON EMPTY { [Date].[DatetimeA].[DatetimeA].ALLMEMBERS ) }DIMENSION PROPERTIES MEMBER_CAPTION ,MEMBER

我需要根据列(DatetimeA)进行筛选。DatetimeA中的值的格式为19990101(yyyyMMdd)。我需要过滤我的数据,只显示过去60天

Mdx查询:

    SELECT NON EMPTY {Measures].[DateA] } ON COLUMNS
    ,NON EMPTY { [Date].[DatetimeA].[DatetimeA].ALLMEMBERS ) 
    }DIMENSION PROPERTIES MEMBER_CAPTION
    ,MEMBER_UNIQUE_NAME ON ROWS
    FROM (
    SELECT ([Date].[DatetimeA].& [20170118] : [Date].[DatetimeA].[20170318]) 
    ON COLUMNS
    FROM [TABMODEL]
    ) CELL PROPERTIES VALUE
    ,BACK COLOR
    ,FORE COLOR
    ,FORMATTED_VALUE
    ,FORMAT_STRING
    ,FONT_NAME
    ,FONT_SIZE
    ,FONT_FLAGS
我们如何筛选DatetimeA列以仅显示最近60天?我需要的不是硬编码的值,而是基于日期的变化。在ssrs中,这类似于DatetimeA,介于(格式(dateadd(“d”)、-60,today())、“yyyyymmdd”)和(格式(dateadd(“d”,0,today())、“yyyyymmdd”)之间。
请在上面的查询中包含更改。谢谢!

下面的代码必须在SSAS端生成一个动态集:

{
    StrToMember('[Date].[DatetimeA].[DatetimeA].&[' + Format(Now(),'yyyyMMdd') + ']')
    :
    StrToMember('[Date].[DatetimeA].[DatetimeA].&[' + Format(Now(),'yyyyMMdd') + ']').Lag(59)
}
另外,您还可以添加一个SSRS参数来获取当前日期,并将其StrToMember到MDX代码中