Ruby でODBC 経由でAlfresco に接続して、モダンなクラウド連携アプリを開発。
CData ODBC Driver for Alfresco を使うと、簡単にRuby アプリケーションにリアルタイムAlfresco データを連携・統合できます。 Tこの記事では、Alfresco] データにリアルタイムに連携するRuby アプリケーションを構築して、クエリを実行し、結果を表示してみます。
Alfresco データのODBC 接続を設定
通常はCData ODBC Driver のインストール後にODBC DSN 接続ウィザードが立ち上がり、設定を行うことができます。 もしODBC DSN 接続が未済の場合には、Microsoft ODBC データソースアドミニストレータでODBC DSN を作成および設定することができます。
Alfresco に接続するには、次の接続プロパティを指定する必要があります:User、Password、およびInstanceURL。User およびPassword は、Web ブラウザでAlfresco にアクセスするために使用するログインクレデンシャルに対応している必要があります。InstanceURL はクエリするAlfresco インスタンスに対応します。例えば、クエリをhttps://search-demo.dev.alfresco.me/alfresco/api/-default-/public/search/versions/1/sql にヒットさせたい場合は、InstanceURL にsearch-demo.dev.alfresco.me を指定する必要があります。
Ruby および必要なGem のインストール
If you do not have Ruby installed, refer to the Ruby インストールページ. Ruby をインストールしたら、次にruby-dbi、dbd-odbc、ruby-odbc gems をインストールします:
gem install dbi
gem install dbd-odbc
gem install ruby-odbc
Alfresco データに連携するRuby アプリケーションの作成
Ruby ファイル (例: AlfrescoSelect.rb) を作成し、テキストエディタで開きます。ファイルに次のコードをコピーします:
#connect to the DSN
require 'DBI'
cnxn = DBI.connect('DBI:ODBC:CData Alfresco Source','','')
#execute a SELECT query and store the result set
resultSet = cnxn.execute("SELECT DBID, Column1 FROM Alfresco WHERE Column2 = MyFilter")
#display the names of the columns
resultSet.column_names.each do |name|
print name, "\t"
end
puts
#display the results
while row = resultSet.fetch do
(0..resultSet.column_names.size - 1).each do |n|
print row[n], "\t"
end
puts
end
resultSet.finish
#close the connection
cnxn.disconnect if cnxn
これで、Ruby で Alfresco データが接続できるようになります。簡単にコマンドラインからファイルを叩いて接続を確認してみましょう。:
ruby AlfrescoSelect.rb
Alfresco へのSQL-92 企画のSQL を使って、Ruby に簡単にAlfresco を連携できます。是非、トライアルで試してみてください。