JRuby からSage Intacct にデータ連携

リアルタイムSage Intacct に連携するシンプルなJRuby アプリケーションを作成します。

加藤龍彦
デジタルマーケティング

最終更新日:2022-10-23

この記事で実現できるSage Intacct 連携のシナリオ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

JRuby はRuby プログラミング言語の高性能で安定した、完全にスレッド化されたJava 実装です。CData JDBC Driver for SageIntacct を使用すると、JRuby からリアルタイムSage Intacct へのデータ連携を簡単に実装できます。ここでは、Sage Intacct に接続し、クエリを実行して結果を表示する簡単なJRuby アプリを作成する方法を説明します。

Sage Intacct のデータにJDBC で接続

アプリを作成する前に、JDBC Driver のJAR ファイルのインストール場所をメモします。 (通常はC:\Program Files\CDatat\CData JDBC Driver for SageIntacct\libにあります。)

JRuby は、JDBC をネイティブにサポートしているため、簡単にSage Intacct に接続してSQL クエリを実行できます。java.sql.DriverManager クラスのgetConnection 関数を使用してJDBC 接続を初期化します。

Sage Intacct 接続プロパティの取得・設定方法

独自のWeb サービスクレデンシャル、埋め込みクレデンシャル(Basic 認証)、またはOkta クレデンシャルのいずれかを使用して、Sage Intacct への接続を確立できます。

Sage Intacct への認証

Sage Intacct は2種類の認証をサポートします。Basic およびOkta です。選択した認証方法に関連するプロパティを設定して、接続を構成します。

Basic 認証

Basic 認証スキームでは、埋め込みクレデンシャルを使用してデータの読み書きが可能です。オプションとして、独自のWeb サービスクレデンシャルを指定することもできます。

Basic 認証を使用して認証を行うには、以下のプロパティを設定します。

  • AuthSchemeBasic
  • CompanyID:Sage Intacct にログインする際に会社を識別するために使用するID。
  • User:Sage Intacct へのログインに使用するログイン名。
  • Password:ログインクレデンシャル用のパスワード。
  • (オプション)SenderID およびSenderPassword:Web サービスのSender ID およびパスワード。
Okta 認証についてはヘルプドキュメントを参照してください。

ビルトイン接続文字列デザイナー

JDBC URL の構成については、Sage Intacct JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

java -jar cdata.jdbc.sageintacct.jar

接続プロパティを入力し、接続文字列をクリップボードにコピーします。

Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

以下はSage Intacct の一般的なJDBC 接続文字列です。

jdbc:sageintacct:User=myusername;CompanyId=TestCompany;Password=mypassword;SenderId=Test;SenderPassword=abcde123;

Sage Intacct のデータへの接続性を持つJRuby アプリを作成

新しいRuby ファイル(例: SageIntacctSelect.rb) を作成してテキストエディタで開き、次のコードをファイルにコピーします。

require 'java' require 'rubygems' require 'C:/Program Files/CData/CData JDBC Driver for SageIntacct 2018/lib/cdata.jdbc.sageintacct.jar' url = "jdbc:sageintacct:User=myusername;CompanyId=TestCompany;Password=mypassword;SenderId=Test;SenderPassword=abcde123;" conn = java.sql.DriverManager.getConnection(url) stmt = conn.createStatement rs = stmt.executeQuery("SELECT Name, TotalDue FROM Customer") while (rs.next) do puts rs.getString(1) + ' ' + rs.getString(2) end

ファイルが完成したら、コマンドラインからファイルを実行するだけでJRuby でSage Intacct を表示できるようになります。

jruby -S SageIntacctSelect.rb

SQL-92 クエリをSage Intacct に書き込むと、Sage Intacct を独自のJRuby アプリケーションに素早く簡単に組み込むことができます。今すぐ無料トライアルをダウンロードしましょう。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。