2016-08-19 8 views
1

Rで.COMオブジェクトを使用して、OLAPキューブへのADODB.Connectionを確立したいとします。そして私は、rscproxy、rcom、およびstatconnDCOMパッケージを使用しています。R&COMオブジェクト:Windows上でOLAPキューブに接続する方法

しかし、私はRCOMパッケージの任意の有用なドキュメントを見つけることに本当に成功していないです、そのため、私はR.

で.COMオブジェクトを使用して、大きな時間を苦労しています私は.COMオブジェクトを作成することができていますしかし、次のステップについてはわかりません。私が何をしたいか:

  1. はR <開く接続文字列を設定 - >キューブ接続
  2. は、MDXクエリ

を実行すると、私を助けてくださいこれは:-)

です。

コード:

# I am quite confident that this section is right: 
library(rcom) 
conn <- comCreateObject("ADODB.Connection") 

# From now on it becomes speculative: 
comGetObjectInfo(conn) 
connStr = 'Provider=MSOLAP;Data Source=...;Initial Catalog=...;' 

# First try to set the connection string: 
comSetProperty(conn,"ConnectionString",connStr) 

# Second try to set the connection string: 
conn[["ConnectionString"]] = connStr 

# I try to establish the connection: 
conn$Open 

その他の情報:

それは言及-上記R-3.3.1でパッケージをインストールするために私にはかなり時間がかかりましたので、私はそれを行うために管理方法についての簡単な概要を与えたいです

.libPaths() 

options(install.packages.check.source = "no") 
install.packages(c("rscproxy","rcom"),repos="http://www.autstat.com/download",lib=.Library,type="win.binary") 
installstatconnDCOM() 
library(rcom) 
comRegisterRegistry() 

sessionInfo() 

答えて

0

多くの試行錯誤の後に私が質問に答えたので、私はあなたと解決策を共有したいと思います。結局、私はrcomパッケージからRDCOMClientパッケージに切り替えました。最初の1つ。

install.packages("local path to: RDCOMClient_0.93-0.2.zip", repos = NULL, type="source") 
library(RDCOMClient) 
sessionInfo() 

conn = COMCreate("ADODB.Connection") 
conn[["State"]] 

connStr = 'a connection string' 
conn[["ConnectionString"]] = connStr 

conn[["CommandTimeout"]] = 180 
conn[["ConnectionTimeout"]] = 30 

conn[["State"]] 

conn$Open() 

conn[["State"]] 

query = 'a query' 
results = conn$Execute(query) 
https://www.stats.ox.ac.uk/pub/RWin/bin/windows/contrib/3.3/

ソリューションコード(私はR-3.3.1を使用しています):RDCOMClient_パッケージの

ダウンロードリンク:

パッケージをダウンロード

関連する問題