各製品の資料を入手。
詳細はこちら →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/
今回作成する帳票は以下のようにPaylocity のデータを一覧表示するものとなっています。
Paylocity は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/paylocity/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 Paylocity JDBC Driver を対象のマシンにインストールします。
以下のページから30日間のトライアルがダウンロードできます。
Paylocity JDBC ドライバーページインストーラーを入手後、対象のマシンでセットアップを進めていきます。
セットアップ完了後、以下のフォルダにJDBC Driver のjar ファイルが配置されます。
C:\Program Files\CData\CData JDBC Driver for Paylocity 2023J\lib対象のjar ファイルを実行すると接続テストツールが立ち上がるので、これでPaylocity への接続を確認しておきましょう。
セットアップが完了すると接続設定画面が表示されるので、Paylocity への認証に必要な情報を入力します。
Paylocity への接続を確立するには以下を設定します。
このプロパティは、Insert およびUpdate ステートメントを実行するために必須です。この機能が無効になっている場合は必須ではありません。
Paylocity は、RSA 復号化を使用してAES 鍵を復号化します。
これはオプションのプロパティで、IV の値が指定されていない場合、ドライバーは内部でキーを生成します。
OAuth を使用してPaylocity で認証する必要があります。OAuth では認証するユーザーにブラウザでPaylocity との通信を要求します。詳しくは、ヘルプドキュメントのOAuth セクションを参照してください。
Pay Entry API はPaylocity API の他の部分と完全に分離されています。個別のクライアントID とシークレットを使用し、アカウントへのアクセスを許可するにはPaylocity から明示的にリクエストする必要があります。 Pay Entry API を使用すると、個々の従業員の給与情報を自動的に送信できます。 Pay Entry API によって提供されるものの性質が非常に限られているため、CData では個別のスキーマを提供しないことを選択しましたが、UsePayEntryAPI 接続プロパティを介して有効にできます。
UsePayEntryAPI をtrue に設定する場合は、CreatePayEntryImportBatch、MergePayEntryImportBatch、Input_TimeEntry、およびOAuth ストアドプロシージャのみ利用できることに注意してください。 製品のその他の機能を使用しようとするとエラーが発生します。また、OAuthAccessToken を個別に保存する必要があります。これは、この接続プロパティを使用するときに異なるOAuthSettingsLocation を設定することを意味します。
あとは「接続のテスト」ボタンをクリックし、接続が成功したら、「接続ウィザード」の「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.paylocity.jar」をアップロードします。
JDBC 登録後は読み込みのためにXC-Connect を一度再起動させましょう。
合わせてライセンスファイル「cdata.jdbc.paylocity.lic」を「C:\Windows\ServiceProfiles\LocalService\.CData」に配置しておきます。もし「.CData」フォルダが無い場合は、作成して配置します。
CData JDBC ドライバを配置したら、XC-Connect で「どういったデータを読み込ませるのか」を指定する機器設定を追加していきます。まず最初に接続情報を追加しましょう。
「機器設定」タブに移動し、「+機器の追加」をクリックします。
プロトコルの選択画面では「メーカー:データベース」「機種:JDBC 汎用(SQL)」「プロトコル:SQL」をそれぞれ指定します。
最初に接続情報を指定します。任意の設定名称を指定し、JDBC Driver 名で先程登録したDriver を選択します。
接続URLには「JDBC Driver の接続テスト」時に取得した接続文字列を指定しましょう。「ユーザー名」「パスワード」は利用しませんのでダミーの文字列を入力すればOKです。
入力後「接続テスト」をクリックして、「接続テストに成功しました」と表示さればOKです。
続いて。機器設定の詳細から「どういったデータを読み込ませるのか?」を指定する「取得データの追加」設定を行います。
機器登録完了後、「+取得データの追加」をクリックします。
任意のデータ名称を取得後、実行SQL を指定します。ここではPaylocity の取引先情報である「Account」テーブルを取得するためのSQLを指定しました。
取得間隔や実行タイムアウトは任意の設定を指定します。ただ、Web API の連携では、各種API 側のリクエスト制限が指定されているものも存在するので、過度に短い間隔は利用しないほうが良いかと思います。
「保存方式」は「マスタ(項目)形式」を指定し、キーとしてPaylocity の「Id」カラムを指定しました。
設定後、「接続テスト」をクリックし、以下のようにデータが取得できていればOK です。
登録後、「起動する」ボタンをクリックしておきましょう。
最後にXC-Gate で登録したマスタデータを利用するためのタグ設定を追加します。
「タグ設定」タブに移動し「+タグ設定の追加」をクリックしましょう。
「機器データ名称」の「選択」ボタンをクリックして、
登録しているCData JDBC ドライバを選択。
以下のようなタグ設定の画面に移るので「+表示項目の追加」をクリックし
帳票に取り込みたい項目をそれぞれ追加していきます。
あとは「タグEXCEL出力」でXC-Gate で利用するタグ設定を取得します。
これでXC-Gate で帳票を作成するためのタグが準備できました。
それでは実際にXC-Connect 経由でXC-Gate の帳票にデータが表示できるか試していきましょう。今回は先程取得したタグを利用して以下のような帳票をExcel で作成しました。
XC-Gate にログインし、これを「フォルダ」から「新しいチェックシート」として登録します。
作成したExcel ファイルを指定して、任意のファイル名でチェックシートを登録します。
チェックシートの登録が完了したら「プレビュー」ボタンをクリックして、帳票を参照してみましょう。
以下のような画面が表示されるので「コネクト取得」をクリックしてみると、
CData JDBC ドライバとXC-Connect 経由でリアルタイムにPaylocity のデータが取得できました!
このようにXC-Gate・XC-Connect とCData JDBC ドライバを組み合わせることで、手軽にXC-Gate の帳票に各種クラウドサービスのデータを取り込むことができます。
CData ではPaylocity 以外にも様々なクラウドデータソースのJDBC Driver を扱っています。
https://www.cdata.com/jp/jdbc/
ぜひ自社で利用しているサービスと合わせて、XC-Gate を活用してみてください。