各製品の資料を入手。
詳細はこちら →CData
こんにちは!リードエンジニアの杉本です。
今回は現場帳票管理・電子化ソリューションの『XC-Gate』とCData JDBC ドライバを組み合わせて各種クラウドデータを帳票で活用する方法を紹介します。
XC-Gate は製造業、建設業、食品業界など様々な業界で活用されている現場帳票電子化ソリューションです。
https://product.technotree.com/xc-gate-ent/
普段皆さんが使っているExcel を利用して帳票をカスタマイズ、作成することができるのが大きな特徴です。
https://www.technotree.com/form/xc-editor
また、XC-Connect というツールをサーバーにインストールして、ローコードで業務管理・生産管理システムやBIツール、Excel、CSVといったデータと連携することができます。
https://product.technotree.com/xc-gate/xc-connect/feature/
今回作成する帳票は以下のようにSage 300 のデータを一覧表示するものとなっています。
Sage 300 はREST APIが提供されているので、一見連携しやすいように見えますが、XC-Gate から直接クエリするにはインターフェース処理が難しい部分が実際問題として存在します。
https://developer.salesforce.com/docs/atlas.ja-jp.api_rest.meta/api_rest/resources_query.htm
そこで今回の記事ではこのボトルネックを「CData JDBC Driver」を活用することで解消します。
https://www.cdata.com/jp/drivers/sage300/jdbc/
XC-Gate では XC-Connect というデータベースのデータを読み込むための仕組みが標準提供されており、この機能を介してSQL ServerやMySQLなどにアクセスできるようになっています。
https://www.xc-times.com/news/?newsUCd=908b7620-3ecd-4e04-ab5d-4a42897c035d
そして、実はこのXC-Connect は内部でJDBC が利用されているため、XC-Connect とCData が提供しているJDBC Driver ラインナップを通じて、各種クラウドサービスのAPI にアクセスすることができるようになります。
とは言っても、説明だけではイメージできない部分もあると思うので、実際に帳票を作成してみましょう。
最初にCData Sage 300 JDBC Driver を対象のマシンにインストールします。
以下のページから30日間のトライアルがダウンロードできます。
Sage 300 JDBC ドライバーページインストーラーを入手後、対象のマシンでセットアップを進めていきます。
セットアップ完了後、以下のフォルダにJDBC Driver のjar ファイルが配置されます。
C:\Program Files\CData\CData JDBC Driver for Sage300 2023J\lib対象のjar ファイルを実行すると接続テストツールが立ち上がるので、これでSage 300 への接続を確認しておきましょう。
セットアップが完了すると接続設定画面が表示されるので、Sage 300 への認証に必要な情報を入力します。
Sage 300 には、Sage 300 Web API で通信するための初期設定が必要となるます。
Basic 認証を使用してSage 300 へ認証します。
Sage 300 に認証するには、次のプロパティを入力してください。プロバイダーは、クッキーを使用してSage 300 が開いたセッションを再利用することに注意してください。 そのため、資格情報はセッションを開く最初のリクエストでのみ使用されます。その後は、Sage 300 が返すクッキーを認証に使用します。
あとは「接続のテスト」ボタンをクリックし、接続が成功したら、「接続ウィザード」の「OK」ボタンをクリックして保存します。
無事接続が完了すると、「接続テストの成功」メッセージが表示されます。接続文字列は後で利用するのでコピーして控えておきましょう。
続いてXC-Connect の接続設定を進めましょう。XC-GateでJDBC Driver 経由のデータを扱う場合は、このXC-Connect が必要となります。
XC-Connect は以下のページでデベロッパー登録をすることでダウンロードできます。
https://www.developer.technotree.com/
XC-Connect をセットアップし立ち上げると、ログイン画面が表示されるので、設定したパスワードを使用してログインします。
併せて転送設定でXC-Gate側への接続を確立しておきましょう。予めXC-Gate の証明書を取得しておき、転送設定で指定しておきます。
それではXC-Gate でCData JDBC ドライバの指定を追加していきます。
「システム設定」→「JDBCファイル設定」に移動し、
ここでCData JDBC ドライバをアップロードして登録します。「ファイルを選択」をクリックし「cdata.jdbc.sage300.jar」をアップロードします。
JDBC 登録後は読み込みのためにXC-Connect を一度再起動させましょう。
合わせてライセンスファイル「cdata.jdbc.sage300.lic」を「C:\Windows\ServiceProfiles\LocalService\.CData」に配置しておきます。もし「.CData」フォルダが無い場合は、作成して配置します。
CData JDBC ドライバを配置したら、XC-Connect で「どういったデータを読み込ませるのか」を指定する機器設定を追加していきます。まず最初に接続情報を追加しましょう。
「機器設定」タブに移動し、「+機器の追加」をクリックします。
プロトコルの選択画面では「メーカー:データベース」「機種:JDBC 汎用(SQL)」「プロトコル:SQL」をそれぞれ指定します。
最初に接続情報を指定します。任意の設定名称を指定し、JDBC Driver 名で先程登録したDriver を選択します。
接続URLには「JDBC Driver の接続テスト」時に取得した接続文字列を指定しましょう。「ユーザー名」「パスワード」は利用しませんのでダミーの文字列を入力すればOKです。
入力後「接続テスト」をクリックして、「接続テストに成功しました」と表示さればOKです。
続いて。機器設定の詳細から「どういったデータを読み込ませるのか?」を指定する「取得データの追加」設定を行います。
機器登録完了後、「+取得データの追加」をクリックします。
任意のデータ名称を取得後、実行SQL を指定します。ここではSage 300 の取引先情報である「Account」テーブルを取得するためのSQLを指定しました。
取得間隔や実行タイムアウトは任意の設定を指定します。ただ、Web API の連携では、各種API 側のリクエスト制限が指定されているものも存在するので、過度に短い間隔は利用しないほうが良いかと思います。
「保存方式」は「マスタ(項目)形式」を指定し、キーとしてSage 300 の「Id」カラムを指定しました。
設定後、「接続テスト」をクリックし、以下のようにデータが取得できていればOK です。
登録後、「起動する」ボタンをクリックしておきましょう。
最後にXC-Gate で登録したマスタデータを利用するためのタグ設定を追加します。
「タグ設定」タブに移動し「+タグ設定の追加」をクリックしましょう。
「機器データ名称」の「選択」ボタンをクリックして、
登録しているCData JDBC ドライバを選択。
以下のようなタグ設定の画面に移るので「+表示項目の追加」をクリックし
帳票に取り込みたい項目をそれぞれ追加していきます。
あとは「タグEXCEL出力」でXC-Gate で利用するタグ設定を取得します。
これでXC-Gate で帳票を作成するためのタグが準備できました。
それでは実際にXC-Connect 経由でXC-Gate の帳票にデータが表示できるか試していきましょう。今回は先程取得したタグを利用して以下のような帳票をExcel で作成しました。
XC-Gate にログインし、これを「フォルダ」から「新しいチェックシート」として登録します。
作成したExcel ファイルを指定して、任意のファイル名でチェックシートを登録します。
チェックシートの登録が完了したら「プレビュー」ボタンをクリックして、帳票を参照してみましょう。
以下のような画面が表示されるので「コネクト取得」をクリックしてみると、
CData JDBC ドライバとXC-Connect 経由でリアルタイムにSage 300 のデータが取得できました!
このようにXC-Gate・XC-Connect とCData JDBC ドライバを組み合わせることで、手軽にXC-Gate の帳票に各種クラウドサービスのデータを取り込むことができます。
CData ではSage 300 以外にも様々なクラウドデータソースのJDBC Driver を扱っています。
https://www.cdata.com/jp/jdbc/
ぜひ自社で利用しているサービスと合わせて、XC-Gate を活用してみてください。