各製品の資料を入手。
詳細はこちら →JRuby からSAP Ariba Procurement にデータ連携
リアルタイムSAP Ariba Procurement に連携するシンプルなJRuby アプリケーションを作成します。
最終更新日:2022-10-23
この記事で実現できるSAP Ariba Procurement 連携のシナリオ
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
JRuby はRuby プログラミング言語の高性能で安定した、完全にスレッド化されたJava 実装です。CData JDBC Driver for SAPAribaProcurement を使用すると、JRuby からリアルタイムSAP Ariba Procurement へのデータ連携を簡単に実装できます。ここでは、SAP Ariba Procurement に接続し、クエリを実行して結果を表示する簡単なJRuby アプリを作成する方法を説明します。
SAP Ariba Procurement のデータにJDBC で接続
アプリを作成する前に、JDBC Driver のJAR ファイルのインストール場所をメモします。 (通常はC:\Program Files\CDatat\CData JDBC Driver for SAPAribaProcurement\libにあります。)
JRuby は、JDBC をネイティブにサポートしているため、簡単にSAP Ariba Procurement に接続してSQL クエリを実行できます。java.sql.DriverManager クラスのgetConnection 関数を使用してJDBC 接続を初期化します。
SAP Ariba Procurement に接続するには以下を設定します。
- ANID:Ariba Network ID。
- API:本製品にSAP Ariba データを取得させたいAPI を指定。ビジネスロールに基づき、Buyer またはSupplier API を選択します(可能な値は、PurchaseOrdersBuyerAPIV1、または PurchaseOrdersSupplierAPIV1 です)。
- Environment:接続先がテスト環境か本番環境かを指定(可能な値は、TEST またはPRODUCTION です)。
OAuth 認証
接続プロパティを設定した後、認証のためにOAuth 接続を設定する必要があります。
- AuthScheme をOAuthClient に設定します。
- サービスにアプリケーションを登録し、APIKey、OAuthClientId、およびOAuthClientSecret を取得する必要があります。
OAuth アプリケーションの作成について、詳しくはヘルプドキュメントを参照してください。
OAuth の自動リフレッシュ
以下を設定して、接続してください。
- APIKey:アプリケーション設定のApplication key。
- OAuthClientId:アプリケーション設定のOAuth Client Id。
- OAuthClientSecret:アプリケーション設定のOAuth Secret。
接続すると、本製品は自動でOAuth プロセスを完了します。
- 本製品はSAP Ariba からアクセストークンを取得し、それを使ってデータをリクエストします。
- 本製品はアクセストークンの期限が切れると自動的にリフレッシュします。
- TOAuth 値はOAuthSettingsLocation で指定された場所に基づいてメモリに保存されます。
ビルトイン接続文字列デザイナー
JDBC URL の構成については、SAP Ariba Procurement JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.saparibaprocurement.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。

以下はSAP Ariba Procurement の一般的なJDBC 接続文字列です。
jdbc:saparibaprocurement:ANID=AN02000000280;API=PurchaseOrdersBuyerAPI-V1;APIKey=wWVLn7WTAXrIRMAzZ6VnuEj7Ekot5jnU;AuthScheme=OAuthClient;InitiateOAuth=GETANDREFRESH
SAP Ariba Procurement のデータへの接続性を持つJRuby アプリを作成
新しいRuby ファイル(例: SAPAribaProcurementSelect.rb) を作成してテキストエディタで開き、次のコードをファイルにコピーします。
require 'java'
require 'rubygems'
require 'C:/Program Files/CData/CData JDBC Driver for SAPAribaProcurement 2018/lib/cdata.jdbc.saparibaprocurement.jar'
url = "jdbc:saparibaprocurement:ANID=AN02000000280;API=PurchaseOrdersBuyerAPI-V1;APIKey=wWVLn7WTAXrIRMAzZ6VnuEj7Ekot5jnU;AuthScheme=OAuthClient;InitiateOAuth=GETANDREFRESH"
conn = java.sql.DriverManager.getConnection(url)
stmt = conn.createStatement
rs = stmt.executeQuery("SELECT DocumentNumber, Revision FROM Orders")
while (rs.next) do
puts rs.getString(1) + ' ' + rs.getString(2)
end
ファイルが完成したら、コマンドラインからファイルを実行するだけでJRuby でSAP Ariba Procurement を表示できるようになります。
jruby -S SAPAribaProcurementSelect.rb
SQL-92 クエリをSAP Ariba Procurement に書き込むと、SAP Ariba Procurement を独自のJRuby アプリケーションに素早く簡単に組み込むことができます。今すぐ無料トライアルをダウンロードしましょう。