2017-02-28 125 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