Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.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
Ssas 强制mdx查询返回列名_Ssas_Mdx_Powerpivot - Fatal编程技术网

Ssas 强制mdx查询返回列名

Ssas 强制mdx查询返回列名,ssas,mdx,powerpivot,Ssas,Mdx,Powerpivot,从powerpivot连接到SSAS时,我遇到了以下问题-如果出于某种原因mdx查询没有返回行,也没有返回列名,powerpivot会给出一个错误。在SSMS中执行此类查询时,如果mdx不返回任何内容,则得到0行;如果mdx返回1行(列名和行本身),则得到2行。那么-我可以强制SSA返回列名吗? 查询当前看起来有点像这样: SELECT NON EMPTY {[Measures].[Measure1]} ON COLUMNS, NON EMPTY {Filter([DimLocalDate].[

从powerpivot连接到SSAS时,我遇到了以下问题-如果出于某种原因mdx查询没有返回行,也没有返回列名,powerpivot会给出一个错误。在SSMS中执行此类查询时,如果mdx不返回任何内容,则得到0行;如果mdx返回1行(列名和行本身),则得到2行。那么-我可以强制SSA返回列名吗? 查询当前看起来有点像这样:

SELECT NON EMPTY {[Measures].[Measure1]} ON COLUMNS,
NON EMPTY {Filter([DimLocalDate].[Date].&[20110101]:[DimLocalDate].[Date].&[20120101],
[JobStatus].[JobStatus].&[1] } ON ROWS
FROM [TheCube]
在我的应用程序中,客户可以指定日期和状态值。如果没有找到结果,我希望结果集是空的,但我得到了一个错误。
谢谢。

在选择之前,我将检查您的NonEmpty子句是否将返回一个void集,在这种情况下,在行上放置一个虚拟集,该虚拟集将至少返回到powerpivot 1行。 比如:

WITH 
SET [mySet] as NON EMPTY ({Filter([DimLocalDate].[Date].&[20110101]:[DimLocalDate].[Date].&[20120101], [JobStatus].[JobStatus].&[1] })
SET [myRealSet] as IIF(COUNT([mySet]) > 0, [mySet], {[DummySet]}) 
SELECT NON EMPTY {[Measures].[Measure1]} ON COLUMNS,
[myRealSet] ON ROWS
FROM [TheCube]

会有帮助吗?

在选择之前,我将检查您的NonEmpty子句是否将返回一个void集,在这种情况下,在行上放置一个虚拟集,该虚拟集将至少返回到powerpivot 1行。 比如:

WITH 
SET [mySet] as NON EMPTY ({Filter([DimLocalDate].[Date].&[20110101]:[DimLocalDate].[Date].&[20120101], [JobStatus].[JobStatus].&[1] })
SET [myRealSet] as IIF(COUNT([mySet]) > 0, [mySet], {[DummySet]}) 
SELECT NON EMPTY {[Measures].[Measure1]} ON COLUMNS,
[myRealSet] ON ROWS
FROM [TheCube]

是否有帮助?

在数据源中找不到SSIS错误:[MEMBER\u CAPTION]

谢谢你的解决方案帮助了我。 我在使用SSIS、SSAS输出平面文件报告时遇到了同样的问题

我将发布一个扩展示例,以帮助其他人定义虚拟集。 请注意,日期是动态插入MDX脚本的

当日期不存在数据时,SSIS会引发异常,因此不会返回任何结果。 这会打乱列顺序

--create a blank set so that data is still returned when there are no results for that date
set [BlankRowSet] as 
([Activity Period].[Days].[Day].&[2014-02-02T00:00:00], [Well].[Location].[Location].&[])

--create the active set as the crossjoin between Days, Wells
set [ActiveSet] as 
nonempty([Activity Period].[Days].[Day].members * [Well].[Location].[Location].members )

SET [RealSet] as IIF(COUNT([ActiveSet]) > 0, [ActiveSet], {[BlankRowSet]}) 


select {[Measures].[Total boe]} ON COLUMNS 
,[RealSet] ON ROWS 
FROM 
(select {[Activity Period].[Days].[Day].&[2014-02-02T00:00:00]:[Activity Period].[Days].[Day].&    [2014-02-02T00:00:00]} on 0 from [Volumes] )

where 
[Scenario].[All Scenarios].[Category].&[PVR Sales Estimates] 

re SSIS错误:[在数据源中找不到成员标题]

谢谢你的解决方案帮助了我。 我在使用SSIS、SSAS输出平面文件报告时遇到了同样的问题

我将发布一个扩展示例,以帮助其他人定义虚拟集。 请注意,日期是动态插入MDX脚本的

当日期不存在数据时,SSIS会引发异常,因此不会返回任何结果。 这会打乱列顺序

--create a blank set so that data is still returned when there are no results for that date
set [BlankRowSet] as 
([Activity Period].[Days].[Day].&[2014-02-02T00:00:00], [Well].[Location].[Location].&[])

--create the active set as the crossjoin between Days, Wells
set [ActiveSet] as 
nonempty([Activity Period].[Days].[Day].members * [Well].[Location].[Location].members )

SET [RealSet] as IIF(COUNT([ActiveSet]) > 0, [ActiveSet], {[BlankRowSet]}) 


select {[Measures].[Total boe]} ON COLUMNS 
,[RealSet] ON ROWS 
FROM 
(select {[Activity Period].[Days].[Day].&[2014-02-02T00:00:00]:[Activity Period].[Days].[Day].&    [2014-02-02T00:00:00]} on 0 from [Volumes] )

where 
[Scenario].[All Scenarios].[Category].&[PVR Sales Estimates] 

是的,非常感谢,这确实有帮助。最后,我使用了COUNT(HEAD([MySet],1))而不是COUNT([MySeat]),这可能会更好,但我仍然需要进行性能比较。再次感谢您,Michele…是否可以返回类似于
call\u start\u time.[hour24].[hour24]这样的列。成员标题
?请看这个:是的,非常感谢,这确实有帮助。最后,我使用了COUNT(HEAD([MySet],1))而不是COUNT([MySeat]),这可能会更好,但我仍然需要进行性能比较。再次感谢您,Michele…是否可以返回类似于
call\u start\u time.[hour24].[hour24]这样的列。成员标题
?请看以下内容:如果我需要返回一个列,如
call\u start\u time.[hour24].[hour24]。MEMBER\u CAPTION
?我尝试了您的解决方案,但似乎无法很好地处理这些情况。如果我需要返回一列,如
call\u start\u time.[hour24].[hour24]。MEMBER\u CAPTION
?我尝试了你的解决方案,但似乎对这些案例不起作用。