【ノーコード】Unqork でOData のデータを連携利用する方法を徹底解説
Unqork(www.unqork.com/)は誰でも簡単に作れるクラウドベースのノーコードアプリ開発プラットフォームです。フォーム画面とワークフロー画面を活用して、業務プロセスをノーコードで作成できるのが特徴です。Unqork では、外部サービスをデータソースに使用することが可能です。
本記事では、OData のデータをUnqork でテーブルとしてインポートする方法を説明します。
OData データ連携について
CData は、OData サービスのライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:
- OData バージョン 2.0、3.0、4.0 にアクセスでき、レガシーサービスと最新の機能・性能の両方に対応できます。
- $filter、$select、$expand などの高度なクエリオプションを活用し、サードパーティツールからのデータ取得を強化できます。
- サーバーサイドでの集計とグループ化の実行により、データ転送を最小化し、パフォーマンスを向上させます。
- Azure AD、ダイジェスト、ネゴシエート、NTLM、OAuth など、さまざまなスキームを使用して安全に認証でき、すべての接続でセキュアな認証を実現します。
- SQL ストアドプロシージャを使用して、OData サービスエンティティを管理できます。エンティティ間の関連付けの一覧表示、作成、削除などが可能です。
お客様は、Power BI、MicroStrategy、Tableau などのお気に入りのツールと OData サービスを定期的に統合し、OData サービスからデータベースやデータウェアハウスにデータをレプリケートするために CData のソリューションを使用しています。
はじめに
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなOData OData サービスを作成していきましょう。
OData への接続
Unqork からOData のデータを操作するには、まずOData への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「OData」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、OData への接続設定を行っていきましょう!
-
OData への接続
OData に接続するには、Url を有効なOData サービスルートURI に設定する必要があります。 OData サービスにルートドキュメントがない場合、テーブルとして公開したい特定のエンティティをFeedURL に指定してください。
OData への認証
OData は、以下を経由する認証をサポートします。
- HTTP
- Kerberos
- SharePoint Online
- OAuth
- Azure AD
HTTP 認証スキーム
HTTP で認証する場合は、次の表に従ってAuthScheme を設定します。
Scheme AuthScheme その他の設定 None None 認証を必要としない場合に使用。 Basic Basic User、Password NTLM NTLM User、Password Digest(サポートされている場合) Digest User、Password その他の認証方法の詳細は、ヘルプドキュメントの「接続の確立」セクションを参照してください。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
OData への接続
OData に接続するには、Url を有効なOData サービスルートURI に設定する必要があります。 OData サービスにルートドキュメントがない場合、テーブルとして公開したい特定のエンティティをFeedURL に指定してください。
OData への認証
OData は、以下を経由する認証をサポートします。
- HTTP
- Kerberos
- SharePoint Online
- OAuth
- Azure AD
HTTP 認証スキーム
HTTP で認証する場合は、次の表に従ってAuthScheme を設定します。
| Scheme | AuthScheme | その他の設定 |
| None | None | 認証を必要としない場合に使用。 |
| Basic | Basic | User、Password |
| NTLM | NTLM | User、Password |
| Digest(サポートされている場合) | Digest | User、Password |
その他の認証方法の詳細は、ヘルプドキュメントの「接続の確立」セクションを参照してください。
API Server のユーザー設定
次に、API Server 経由でOData にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
OData 用のAPI エンドポイントの作成
ユーザーを作成したら、OData のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でOData への接続を設定してユーザーを作成し、API Server でOData データのAPI を追加しました。これで、OData 形式のOData データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
Unqork でOData のデータに連携して一覧画面を作成
Unqork でOData のデータを作成する構成
Unqork でOData に連携する一覧表示画面をModule として作成します。Unqork の一覧画面で使用するコンポーネントは次のようになります:
- Initializzer:画面表示時にPluginを実行します。
- Plugin:API Server からデータを取得し、Hidden Componentに格納します。
- HiddenPluginから取得したデータを格納します:
- ViewGrid:Hidden Componentに格納されたデータを元に、一覧画面を表示します。
OData のデータのServices Administration への登録
- 事前準備として Unqork の Plug-in から API Server に対して接続ができるようにサービス情報を登録します。右上の「Settings」から「Administration」をクリックし、「Integration」の「Services Administration」を選択します。
- Services Administration 画面で、以下の項目を設定してAPI Server 経由でOData に接続します。
- Service Title:例)CData API Server。任意のサービスタイトルを指定します。
- Service name:例)cdataapiserver。任意のサービス名を指定します。
- Service protocol + host:例)http://XXX.ap-northeast-1.compute.amazonaws.com:8153/api.rsc/。API Serverのサービスディレクトリエンドポイントを指定します。
- Type of authentications:Basic AuthBasic Authを選択します。
- Username:例)admin。API Serverで作成したAPIアクセスユーザーのIDを指定します
- Password:例)token。API Serverで作成したAPIアクセスユーザーの認証 Tokenを指定します。
Workspace の作成
次に、今回のModule を作成するためのWorkspace を作成します。「+Create Workspace」をクリックし、任意の名前でWorkspace を作成します。
一覧画面用のModule の作成
それでは一覧画面を作っていきましょう。
- 「+Create App」をクリックし、任意の「App Name」と「App Path」を入力します。前述の通り、今回はModule で作成するので「App Type」は「Module」を指定して、Create をクリックします。
- 一覧画面では、まずAPI から取得したデータを格納するために「Hidden」Component を配置します。検証時にはデータを正常に取得できているか確認するために、Text Field で作成するのも良いでしょう。任意の「Property ID」と「Canvas Label Text」を指定して保存します。
- データ格納用のComponent を作成した後、API Server にリクエストを行うための 「Plug-in」Component を配置します。任意の「Property ID」と「Canvas Label Text」を指定します。今回は「GetCustomers」としました。
- Plug-in では取得したデータを格納するためのマッピングを行います。Property ID には、事前に作成したHidden Component の名前を入力し、「Mapping」には value を指定します。
- あとは「Data」タブにてAPI Server へのリクエスト内容を設定します。「External」を選択し、事前にServices Administration で登録した、API Server の Service を選択します。
- その後、エンドポイントがData Source URL に表示されるので、取得したい対象のリソースURL を指定します(リソースURL はAPI Server の以下の画面から確認できます)。合わせてRequest Type で「Get」を指定して保存します。
- 次に、一覧画面のUI となる「View Grid」を配置しましょう。任意の「Label」と「Property Name」を指定します。今回は「CustomerView」としました。
- View Grid では、まずデータ元となる Component との紐付けを「Inputs」にて行います。Plug-in 経由で取得したデータはHidden Component に格納されているので、その Component をここで指定します。その後表示するカラムをDisplay で定義します。「ID」「NAME」「EMAIL」をそれぞれ「id」と「heading」に指定して、保存します。
- 最後に画面を表示した時に、Plug-in が呼ばれるように「Initializer」Componentを配置します。まず任意の「Canvas Label Text」を指定します。
- 「Trigger Type」では、画面表示時の実行を行う「New Submission」を指定、「OUTPUTS」にて、実行するPlug-in を指定します。Property IDでは、「GetCustomers」を指定し、Type では「trigger」、Value には「GO」を指定します。
- Module を保存して「Preview Module」で動作確認をしてみましょう。以下のように一覧画面が表示されれば完了です。これでOData のデータをUnqork のワークフローでテーブルデータとして扱うことが可能になります。
まとめと30日の無償評価版のご案内
このように OData 内のデータをUnqork で利用することができるようになります。CData API Server は、30日の無償評価版があります。是非、お試しいただき、Unqork からのデータ参照を体感ください。