UI/UX 特化ローコード開発ツール NEXACRO BEYOND を使ってQuickBooks Online と連携したアプリを開発する方法
NEXACRO BEYOND は UI/UX に特化したローコード開発ツールおよびその実行基盤です。この記事では、CData Connect AI を経由して NEXACRO BEYOND からQuickBooks Online に連携し、アプリを開発する方法を紹介します。
CData Connect AI は、QuickBooks Online のデータのクラウド to クラウドの仮想OData インターフェースを提供し、NEXACRO BEYOND からリアルタイムにQuickBooks Online データへ連携することができます。
QuickBooks Online データ連携について
CData は、QuickBooks Online のライブデータにアクセスし、統合するための最も簡単な方法を提供します。お客様は CData の接続機能を以下の目的で使用しています:
- フィルターや集計などの複雑な操作に対するプッシュダウンクエリ最適化により、高性能なデータ読み取りを実現します。
- QuickBooks Online データの読み取り、書き込み、更新、削除ができます。
- SQL ストアドプロシージャを使用して、レポートの実行、添付ファイルのダウンロード、請求書の送信や無効化をコードから直接実行できます。
- OAuth と TLS 1.2、SHA-256、ECC などの最新の暗号化を使用して安全に接続できます。
多くのユーザーは、Power BI や Excel などのお気に入りの分析ツールからライブ QuickBooks Online データにアクセスしたり、フェデレートアクセスでデータベースから直接アクセスしたり、CData ソリューションを使用して QuickBooks Online データを B2B コミュニケーション用の自動化ワークフローに簡単に統合したりしています。
お客様が CData の QuickBooks Online ソリューションで問題を解決している方法については、ブログをご覧ください:https://jp.cdata.com/blog/360-view-of-your-customers
はじめに
Connect AI を構成する
NEXACRO BEYOND でQuickBooks Online のデータをリアルタイムで操作するには、Connect AI からQuickBooks Online に接続し、コネクションにユーザーアクセスを提供してQuickBooks Online のデータのOData エンドポイントを作成する必要があります。
(オプション)新しいConnect AI ユーザーの追加
必要であれば、Connect AI 経由でQuickBooks Online に接続するユーザーを作成します。
- ユーザーページに移動し、 Invite Users をクリックします。
- 新しいユーザーのE メールアドレスを入力して、 Send to invite the user をクリックします。
- ユーザーページからユーザーを確認および編集できます。
パーソナルアクセストークンの追加
MotionBoard への接続には、パスワードの代わりとしてパーソナルアクセストークンを利用します。セキュアなアクセス管理を実現するには、サービスごとに個別のPAT を作成するのがベストプラクティスです。
- Connect AI アプリの右上にある歯車アイコンをクリックします。
- Settings ページで「Access Tokens」タブに移動し、 Create PAT をクリックします。
- PAT の名前を入力して Create をクリックします。
- パーソナルアクセストークンは作成時にしか表示されないため、コピーして安全に保存してください。
Connect AI からQuickBooks Online に接続
CData Connect AI では、簡単なクリック操作ベースのインターフェースでデータソースに接続できます。
- Connect AI にログインし、 Add Connection をクリックします。
- Add Connection パネルから「QuickBooks Online」を選択します。
-
必要な認証プロパティを入力し、QuickBooks Online に接続します。
QuickBooks Online への接続にはOAuth 認証標準を使います。Embedded Credentials を使用すると、接続プロパティを設定せずに接続できます。接続すると、CData 製品はデフォルトブラウザでOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えるだけです。CData 製品がOAuth プロセスを完了します。
詳細はヘルプドキュメントを参照してください。
- Create & Test をクリックします。
- Edit QuickBooks Online Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。
Connect AI にQuickBooks Online OData エンドポイントを追加する
QuickBooks Online に接続したら、目的のテーブルのOData エンドポイントを作成します。
- OData ページに移動し、 Add to create new OData endpoints をクリックします。
- QuickBooks Online コネクション(例:QuickBooksOnline1)を選択し、Next をクリックします。
- 使用するテーブルを選択し、Confirm をクリックします。
コネクションとOData エンドポイントが構成されたら、NEXACRO BEYOND からQuickBooks Online に接続できるようになります。
プロジェクトの作成
Web API の準備が整ったのでNEXACRO BEYOND によるアプリケーション開発を進めていきます。NEXACRO BEYOND のアプリケーションは NEXACRO Studio というツールを用いて開発します。
- まず、NEXACRO Studio を立ち上げて新しいプロジェクトを作成しましょう。
- 任意の名称でProject を作成します。
- 作成するアプリケーションの種類は今回はDesktop としました。
- Template から「Full」を選択して、「Finish」をクリックします。
Form の作成
プロジェクトを作成したら、一覧画面を表示するためのForm を作成しておきます。
- 「File」→「New」→「Form(.xfdl)」を選択し
- 任意の名称でEmpty Form を作成します。
- 以下のようにフォームが表示できればOKです。
DataObject の作成
続いてWeb API との通信の部分を作り込んでいきます。NEXACRO BEYOND ではDataObject という機能を用いて、JSON フォーマットのWeb API との通信やデータ制御を行うようになっています。
- まず「DataObject」を画面に配置します。
- DataObject を配置すると、Invisible Object の一覧に配置したDataObject が表示されるので右クリックから「Edit」を選択します。
- このJson Content Editor でJSON のオブジェクト構造を確認します。ここで先ほどCData Connect AI で定義したリソースのエンドポイントを指定します。その際にクエリパラメータでの認証も入力しておきましょう。
- 併せて、今回はアプリケーションを実行したときに通信が行われるように「preload」を「true」に指定しておきました。
Dataset を構成する
今回は最終的に一覧画面を作るわけですが、一覧画面のコンポーネントはJSON のように不定形なオブジェクトだとバインディングすることができません。
そこで、一度DataObject を「Dataset」という画面上で利用できるオブジェクトにマッピングしてあげた上で、UI 上で表示できるようにします。
- 「Dataset」を先ほどと同じように画面に配置します。
- 作成したDataset の「binddataobject」で先ほど作成したDataObject を選択し、次に「dataobjectpath」を編集します。
- 以下のようなData Path Editor という画面で、JSON のオブジェクト構造をどのようにマッピングするかを構成できます。
- CData Connect AI で作成されたWeb API「$.value」というJSON Path でレコードに分解できます。そのため DataObject Path に「$.value [*]」と入力して、リロードし、各カラムをマッピングさせます。
Grid の作成
最後に一覧表示用のGrid を配置して、取得したデータを表示してみましょう。
- Grid をキャンパス上に配置します。
- Grid を配置後、先ほど定義したDataset をGrid 上にドラッグ・アンド・ドロップで持っていくと、以下のよう一覧画面が表示されます。
このように、CData Connect AI を経由することで、API 側の複雑な仕様を意識せずにAPI 連携アプリをNEXACRO BEYOND で開発できます。他にも多くのデータソースに対応するCData Connect AI の詳細をこちらからご覧ください。