2009-04-17 82 views
0

我现在有一个查询,看起来像这样:使用MDX参数Report Builder 2.0中

SELECT
NON EMPTY ([Measures].[TOTAL]) ON 0,
NON EMPTY (([ENROLL DATE].[CALENDAR].[YEAR].["+ Parameters!EnrollDate.Value +"] * [DIM ENROLLMENT].[ENROLLMENT].[ENROLLMENT PROG].ALLMEMBERS)) ON 1

FROM (SELECT (([DIM ENROLLMENT].[ENROLLMENT].[TERMINATION REASON].[Still Enrolled])) ON 0 FROM [NapaCHI]);

大胆部抵从参数se我在那里手动指定参数Label = 2006 and Value = 2006。我已经尝试过几乎所有可接受的语法,并阅读了关于此的每篇文章,无论是自己定义值还是使用单独的MDX语句为聚合选择不同的非空年份和(NULL),似乎无法使其工作。

请帮助,它让我疯了! 谢谢。

回答

0

你的表情看起来不完整,你需要用=和sign来启动它,并引用它的属性。像下面

="SELECT 
NON EMPTY ([Measures].[TOTAL]) ON 0, 
NON EMPTY (([ENROLL DATE].[CALENDAR].[YEAR].[" + Parameters!EnrollDate.Value + "] * [DIM ENROLLMENT].[ENROLLMENT].[ENROLLMENT PROG].ALLMEMBERS)) ON 1 

FROM (SELECT (([DIM ENROLLMENT].[ENROLLMENT].[TERMINATION REASON].[Still Enrolled])) ON 0 FROM [NapaCHI]);" 

东西,你也可能有问题与数据类型,您可能希望用参数的.Label财产或明确的值转换为字符串。如果这些都不起作用,那么知道你得到的是什么错误会有帮助。

+0

我其实没有得到任何错误,查询只是不返回任何东西。我想你可能会在数据类型的正确轨道上,但我不知道它会在那里期待什么。 – ajdams 2009-04-27 16:04:20

0

我觉得这是MDX要求:

NON EMPTY (([ENROLL DATE].[CALENDAR].[YEAR].[Calendar " + Parameters!EnrollDate.Value + "] 

或者你可以像你这样的实际MDX语言:

[ENROLL DATE].[CALENDAR].[YEAR].&[" + Parameters!EnrollDate.Value + "-01-01T00:00:00] 

无论是那些应该工作。