2017-02-28 64 views
0

我一直在使用olapR(以及Microsoft R客户端,您需要它来使用olapR)在MSOLAP数据库上执行MDX查询。olapR查询返回空对象

但是,每次我执行任何查询时,它都会返回一个空对象。我知道这些不是空的查询。下面是一个例子:

library(olapR) 

cnnstr="Provider=MSOLAP;Password=***;Persist Security Info=True;User ID=***;Data Source=***;Initial Catalog=***" 

olapCnn=OlapConnection(cnnstr) 

qry <- Query(validate = TRUE) 

cube(qry) <- "PER - Prestación Servicios de Salud" 
columns(qry) <- c("[Measures].[Número Personas Atendidas]") 
rows(qry) <- c("[Diagnóstico Principal].[Diagnósticos].[Diagnósticos].MEMBERS") 

results1=executeMD(olapCnn, qry) 

问题是结果1是NULL。

如果我用命令execute2D相反,我得到以下错误:从olapRExecuteRecordset,收到 不明物体仅仅是一个对象被返回是NULL

回答

0

的结果。由于笔者并没有在这里得到解答,我可以告诉我如何解决这个问题,以防别人可能有同样的问题。

基本上我使用2-3个立方体,但我只使用连接字符串到其中一个立方体,所以当我试图查询其他立方体时,我得到了空对象或未知对象。在我的情况下,解决方案只是为每个多维数据集创建不同的连接字符串,并在查询时使用正确的连接字符串。

+0

你能更具体一点吗?也许举个例子吧?谢谢! –

+0

看看作者“cnnstr”。这是我的错。我忘了为我正在查询的魔方指定正确的“初始目录”和“魔方”,因为我也在与其他魔方一起工作。当我使用正确的信息为预期的立方体,所有工作。希望我能帮上忙! (这里的连接字符串的官方文档:https://docs.microsoft.com/en-us/sql/analysis-services/instances/connection-string-properties-analysis-services) – joddm