Ruby でODBC 経由でPCA Accounting に接続して、モダンなクラウド連携アプリを開発。
CData ODBC Driver for PCA Accounting を使うと、簡単にRuby アプリケーションにリアルタイムPCA Accounting データを連携・統合できます。 Tこの記事では、PCA Accounting] データにリアルタイムに連携するRuby アプリケーションを構築して、クエリを実行し、結果を表示してみます。
PCA Accounting データのODBC 接続を設定
通常はCData ODBC Driver のインストール後にODBC DSN 接続ウィザードが立ち上がり、設定を行うことができます。 もしODBC DSN 接続が未済の場合には、Microsoft ODBC データソースアドミニストレータでODBC DSN を作成および設定することができます。
PCA クラウド会計DX では、OAuth 2 認証標準を使います。
ユーザー資格情報の接続プロパティを設定せずに接続できます。接続に最小限必要な接続プロパティは、次のとおりです。
- InitiateOAuth:GETANDREFRESH に設定。InitiateOAuth を使って、OAuth 交換や、手動での接続文字列のアクセストークン設定の繰り返しを避けられます。
- OAuthClientId:アプリケーション設定のクライアントId に設定。
- OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定。
- CallbackURL:アプリケーション設定のリダイレクトURL に設定。
- ApiVersion:接続するPCA API Server バージョンを設定。
- DefaultDataArea:接続するデータ領域を設定。
- DataCenter:接続するサーバーのDataCenter 名を設定。
- ProductCode:PCA 製品コード名を設定。
- InputModuleName:PCA InputSlip のInputModuleName を設定。
接続すると、本製品はデフォルトブラウザでPCA Accounting OAuth エンドポイントを開きます。ログインして、本製品にアクセス許可を与えます。本製品がOAuth プロセスを完了します。
ヘッドレスマシンの認証など、他のOAuth 認証フローについては、ヘルプドキュメントの「OAuth 認証の使用」を参照してください。
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
PCA Accounting データに連携するRuby アプリケーションの作成
Ruby ファイル (例: PCAAccountingSelect.rb) を作成し、テキストエディタで開きます。ファイルに次のコードをコピーします:
#connect to the DSN
require 'DBI'
cnxn = DBI.connect('DBI:ODBC:CData PCAAccounting Source','','')
#execute a SELECT query and store the result set
resultSet = cnxn.execute("SELECT Id, Name FROM BuGroup")
#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 で PCA Accounting データが接続できるようになります。簡単にコマンドラインからファイルを叩いて接続を確認してみましょう。:
ruby PCAAccountingSelect.rb
PCA Accounting へのSQL-92 企画のSQL を使って、Ruby に簡単にPCA Accounting を連携できます。是非、トライアルで試してみてください。