製品をチェック

Sage 300 Driver の30日間無償トライアルをダウンロード

 30日間の無償トライアルへ

製品の詳細

Sage 300 アイコン Sage 300 JDBC Driver 相談したい

Sage 300 に連携するJava アプリケーションを素早く、簡単に開発できる便利なドライバー。

JDBI からSage 300 データ のデータアクセスオブジェクトを作成

JDBI でSage 300 データ 用のSQL オブジェクトAPIを作成する方法を概説します。

加藤龍彦
ウェブデベロッパー

最終更新日:2022-05-25
sage300 ロゴ

CData

jdbc ロゴ画像
JDBI ロゴ

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

JDBI は、Fluent スタイルとSQL オブジェクトスタイルという2つの異なるスタイルAPI を公開する、Java 用のSQL コンビニエンスライブラリです。CData JDBC Driver for Sage300 は、Java アプリケーションとリアルタイムSage 300 データ のデータ連携を実現します。これらの技術を組み合わせることによって、Sage 300 データ へのシンプルなコードアクセスが可能になります。ここでは、基本的なDAO(Data Access Object )とそれに付随するSage 300 データ の読み書きのためのコードの作成について説明します。

Sage 300 OEInvoices Entity のDAO を作成

以下のインターフェースは、実装されるSQL ステートメントごとに単一のメソッドを作成するためのSQL オブジェクトの正しい動作を宣言します。

public interface MyOEInvoicesDAO { //request specific data from Sage 300 (String type is used for simplicity) @SqlQuery("SELECT ApprovedLimit FROM OEInvoices WHERE AllowPartialShipments = :allowPartialShipments") String findApprovedLimitByAllowPartialShipments(@Bind("allowPartialShipments") String allowPartialShipments); /* * close with no args is used to close the connection */ void close(); }

Sage 300 への接続を開く

必要な接続プロパティを収集し、Sage 300 に接続するための適切なJDBC URL を作成します。

Sage 300 には、Sage 300 Web API で通信するための初期設定が必要となるます。

  • Sage 300 のユーザー向けのセキュリティグループを設定します。Sage 300 のユーザーに、Security Groups の下にあるbSage 300 Web API オプションへのアクセスを付与します(各モジュール毎に必要です)。
  • /Online/Web/Online/WebApi フォルダ内のweb.config ファイルを両方編集して、AllowWebApiAccessForAdmin のキーを true 設定します。webAPI アプリプールを再起動すると設定が反映されます。
  • ユーザーアクセスを設定したら、https://server/Sage300WebApi/ をクリックして、web API へのアクセスを確認してください。

Basic 認証を使用してSage 300 へ認証します。

Basic 認証を使用して接続する

Sage 300 に認証するには、次のプロパティを入力してください。プロバイダーは、クッキーを使用してSage 300 が開いたセッションを再利用することに注意してください。 そのため、資格情報はセッションを開く最初のリクエストでのみ使用されます。その後は、Sage 300 が返すクッキーを認証に使用します。

  • Url:Sage 300 をホストするサーバーのURL に設定します。Sage 300 Web API 用のURL を次のように作成してください。 {protocol}://{host-application-path}/v{version}/{tenant}/ 例えば、 http://localhost/Sage300WebApi/v1.0/-/ です。
  • User:アカウントのユーザー名に設定します。
  • Password:アカウントのパスワードに設定します。

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

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

java -jar cdata.jdbc.sage300.jar

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

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

Sage 300 の接続文字列は、通常次のようになります。

jdbc:sage300:User=SAMPLE;Password=password;URL=http://127.0.0.1/Sage300WebApi/v1/-/;Company=SAMINC;

構成済みのJDBC URL を使用して、DAO インターフェースのインスタンスを取得します。以下に示す特定のメソッドはインスタンスにバインドされたハンドルを開くため、ハンドルとバインドされたJDBC 接続を開放するには、インスタンスを明示的に閉じる必要があります。

DBI dbi = new DBI("jdbc:sage300:User=SAMPLE;Password=password;URL=http://127.0.0.1/Sage300WebApi/v1/-/;Company=SAMINC;"); MyOEInvoicesDAO dao = dbi.open(MyOEInvoicesDAO.class); //do stuff with the DAO dao.close();

Sage 300 データ について

Sage 300 への接続を開いた状態で以前定義したメソッドを呼び出すだけで、Sage 300 のOEInvoices エンティティからデータを取得できます。

//disply the result of our 'find' method String approvedLimit = dao.findApprovedLimitByAllowPartialShipments("Yes"); System.out.println(approvedLimit);

JDBI ライブラリはJDBC 接続を処理できるため、CData JDBC Driver for Sage300 と統合することで、SQL Object API for Sage300 を簡単に作成できます。今すぐ無料トライアルをダウンロードし、Java アプリケーションでリアルタイムSage 300 を操作しましょう。

関連コンテンツ

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

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