こんにちは!リードエンジニアの杉本です。
Adalo は ノーコードでスマホやWebベースのアプリを構築できるクラウドサービスです。さらにCData Connect Cloud と連携することで、ノーコードアプリ開発用のSAP Business One のデータへのクラウドベースのアクセスをノーコードで追加できます。本記事では、CData Connect Cloud 経由でAdalo からSAP Business One 連携を実現する方法を紹介します。
CData Connect Cloud はSAP Business One のデータへのクラウドベースのOData インターフェースを提供し、Adalo からSAP Business One のデータへのリアルタイム連携を実現します。
CData Connect Cloud とは?
CData Connect Cloud は、以下のような特徴を持ったクラウド型のリアルタイムデータ連携製品です。
- SaaS やクラウドデータベースを中心とする150種類以上のデータソース
- BI、アナリティクス、ETL、ローコードツールなど30種類以上のツールやアプリケーションから利用可能
- リアルタイムのデータ接続に対応。データの複製を作る必要はありません
- ノーコードでシンプルな設定
詳しくは、こちらの製品資料をご確認ください。
Connect Cloud アカウントの取得
以下のステップを実行するには、CData Connect Cloud のアカウントが必要になります。こちらから製品の詳しい情報とアカウント作成、30日間無償トライアルのご利用を開始できますので、ぜひご利用ください。
Connect Cloud を構成
Adalo でSAP Business One のデータを操作するには、Connect Cloud からSAP Business One に接続し、コネクションにユーザーアクセスを提供してSAP Business One のデータのOData エンドポイントを作成する必要があります。
SAP Business One に接続したら、目的のテーブルのOData エンドポイントを作成します。
(オプション)新しいConnect Cloud ユーザーの追加
必要であれば、Connect Cloud 経由でSAP Business One に接続するユーザーを作成します。
- 「Users」ページに移動し、 Invite Users をクリックします。
- 新しいユーザーのE メールアドレスを入力して、 Send をクリックしてユーザーを招待します。
- 「Users」ページからユーザーを確認および編集できます。
パーソナルアクセストークン(PAT)の追加
OAuth 認証をサポートしていないサービス、アプリケーション、プラットフォーム、またはフレームワークから接続する場合は、認証に使用するパーソナルアクセストークン(PAT)を作成できます。きめ細かなアクセス管理を行うために、サービスごとに個別のPAT を作成するのがベストプラクティスです。
- Connect Cloud アプリの右上にあるユーザー名をクリックし、「User Profile」をクリックします。
- 「User Profile」ページで「Access Token」セクションにスクロールし、 Create PAT をクリックします。
- PAT の名前を入力して Create をクリックします。
- パーソナルアクセストークン(PAT)は作成時にしか表示されないため、必ずコピーして安全に保存してください。
Connect Cloud からSAP Business One に接続
CData Connect Cloud では、簡単なクリック操作ベースのインターフェースでデータソースに接続できます。
- Connect Cloud にログインし、 Add Connection をクリックします。
- 「Add Connection」パネルから「SAP Business One」を選択します。
-
必要な認証プロパティを入力し、SAP Business One に接続します。
SAP Business One に認証するには、User およびPassword プロパティを指定する必要があります。
データに接続するには、Url を指定します。これは、SAP Business One
Service Layer のルートURL です。
- Create & Test をクリックします。
- 「Add SAP Business One Connection」ページの「Permissions」タブに移動し、ユーザーベースのアクセス許可を更新します。
Connect Cloud にSAP Business One OData エンドポイントを追加する
SAP Business One に接続したら、目的のテーブルのOData エンドポイントを作成します。
- OData ページに移動し、 Add をクリックして新しいOData エンドポイントを作成します。
- SAP Business One 接続(例:SAPBusinessOne1)を選択し、Next をクリックします。
- 使用するテーブルを選択し、「Confirm」をクリックします。
コネクションとOData エンドポイントを設定したら、Adalo からSAP Business One のデータに接続できます。
Adalo でアプリを作成する
Connect Cloud 側の準備が完了したら、早速Adalo 側でアプリ開発を開始します。
- 「CREATE NEW APP」をクリックし
- 今回は「Desktop Web App」を作成します。
- template を最初に選ぶことができますが、今回は検証用なので何も無い「Blank」で作成しました。
- 最後にアプリ名とカラーリング設定を選んで、アプリの準備は完了です。
External Collections の登録
続いてConnect Cloud への接続をAdalo に追加します。Adalo では「Collection」という形でデータ構造を持ち、アプリのデータを管理することができるのですが、この「Collection」を外部のAPI とシームレスに連携した形で利用することができる「External Collections with APIs」という機能があります。この機能を用いてConnect Cloud に接続します。
- アプリを作成したら、まず Adalo アプリ内でデータを扱うための定義である「Collection」を登録します。Collection は Adalo 内部の独自DBのような「Database Collections」と、外部のAPI に対してシームレスにアクセスすることが可能な「External Collections」があります。今回は外部のAPIに対してアクセスを行うので「External Collections」で登録します。
- External Collections の登録画面では最初にコレクション名とAPI のベースとなるURLエンドポイントを指定します。任意のCollection 名とAPI Base URLに先程CData Connect Server で登録したSAP Business One の対象リソースに接続できるOData のエンドポイントを指定します。併せて認証情報として Header に「x-cdata-authtoken」の名前でConnect Cloud ユーザー登録時に生成されているToken を指定します。
- 続いてAdalo から実行されるそれぞれのリクエストの関連付けを行います。通常のAPIであれば様々なチューニングが必要となる箇所ですが、SAP Business One ではほぼデフォルトの設定のままで進められます。一点だけ設定が必要な箇所として、SAP Business One からのレスポンスをレコード単位で識別するために「Get All」の設定にある「Results Key」に「value」を登録しておくことが挙げられます。これを設定したら「Next」をクリックしましょう。
- 最後にAPI の「RUN TEST」を行います。
- 「RUN TEST」をクリック後、最終的に以下のようにメッセージとレスポンスが表示されれば、External Collections の作成は完了です。
一覧画面の作成
それでは作成した External Collections を使ってアプリを作っていきましょう。
- まず一覧画面を表示するためにAdalo の画面右上の「+」ボタンをクリックして、「Simple List」をドラッグアンドドロップで画面に配置します。
- 以下のように配置できたら「What is this a list of?」で先程作成したExternal Collections の定義を紐付けます。
- 併せて「Title」と「Subtile」を取得するデータ項目に紐付けましょう。
- プレビューを実行し一覧画面に移動してみると、以下のようにSAP Business One のデータを取得できていました。
クラウドアプリケーションからSAP Business One のデータへのライブ接続
Adalo からSAP Business One リアルタイムデータに直接接続できるようになりました。これで、SAP Business One のデータを複製せずにより多くの接続とアプリを作成できます。
クラウドアプリケーションから直接100を超えるSaaS 、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスを取得するには、CData Connect Cloud を参照してください。