JRuby からMYOB AccountRight にデータ連携

加藤龍彦
加藤龍彦
デジタルマーケティング
リアルタイムMYOB AccountRight に連携するシンプルなJRuby アプリケーションを作成します。

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

MYOB AccountRight のデータにJDBC で接続

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

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

MYOB への接続

MYOB 会社ファイルに接続するには、CompanyFileId をデータを取得したい会社ファイルのID に設定します。指定しない場合は、最初に返された会社ファイルのID(アルファベット順にソート)が使用されます。

この接続プロパティは、CompanyFiles ビューを除くすべてのテーブルおよびビューにアクセスするために必要です。CompanyFiles ビューは、アカウントに紐づく会社ファイル(およびその関連ID)を表示するために使用できます。会社ファイルのID がわからない場合は、このビューを使用してください。

次のプロパティを追加設定します。

オンプレミスインスタンスInstanceOnPremises
AuthSchemeBasic
User:会社のファイルに紐づいているユーザー名。会社ファイルを作成すると、Administrator というユーザーアカウントが自動的に作成されます。デフォルトでは、Administrator ユーザーアカウントにはパスワードが割り当てられません。
InitiateOAuth:OFF。
URL:MYOB インスタンスのURL。
クラウドインスタンスInstanceCloud
AuthSchemeOAuth
InitiateOAuthGETANDREFRESH
User:会社のファイルに紐づいているユーザー名。
Password:(パスワードが設定されている場合)会社ファイルの認可されたユーザーのパスワード

OAuth で認証する場合は、さらにヘルプドキュメントを参照してください。

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

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

java -jar cdata.jdbc.myob.jar

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

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

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

jdbc:myob:OAuthClientId=YourClientId; OAuthClientSecret=YourClientSecret; CompanyFileId=yourCompanyFileId; CallbackURL=http://localhost:33333; User=companyFileUser; Password=companyFilePassword; 

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

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

require 'java'
require 'rubygems'
require 'C:/Program Files/CData/CData JDBC Driver for MYOB 2018/lib/cdata.jdbc.myob.jar'

url = "jdbc:myob:OAuthClientId=YourClientId; OAuthClientSecret=YourClientSecret; CompanyFileId=yourCompanyFileId; CallbackURL=http://localhost:33333; User=companyFileUser; Password=companyFilePassword; "
conn = java.sql.DriverManager.getConnection(url)
stmt = conn.createStatement
rs = stmt.executeQuery("SELECT Id, Name FROM Accounts")
while (rs.next) do
  puts rs.getString(1) + ' ' + rs.getString(2)
end

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

jruby -S MYOBSelect.rb

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

はじめる準備はできましたか?

MYOB AccountRight Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

MYOB AccountRight Icon MYOB AccountRight JDBC Driver お問い合わせ

Java/J2EE アプリケーションから、MYOB AccountRight データへの双方向連携を実現し、Customers、Transactions、Invoices、Sales Receipts などの検索、Items、Customers などの更新が可能に。