XML のデータをAUTORO(旧Robotic Crowd) で連携して利用する方法

杉本和也
杉本和也
リードエンジニア
クラウド型RPA ツールのAUTORO(旧Robotic Crowd) で XML のデータに連携利用する方法



AUTORO(旧Robotic Crowd) www.roboticcrowd.com/ はクラウド型(SaaS)のロボティック・プロセス・オートメーション(RPA)で、普段利用しているブラウザで業務フローを記録し、ワークフローを作成することができるサービスです。

RPAの機能としての使いやすさはもちろんのこと、クラウドベースの特性を生かして、各種ストレージ(Google DriveやBox等)サービスやExcel・Google Spreadsheetなどの表計算ソフトとも連携できるのが特徴です。また、HTTPリクエストのアクションを利用することで、様々なAPIとの連携も可能になっています。

この記事ではCData API Server とADO.NET XML Provider を使って、AUTORO(旧Robotic Crowd) でXML のデータを操作できるようにします。

API Server の設定

以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなXML OData サービスを作成していきましょう。

XML への接続

Robotic Crowd からXML のデータを操作するには、まずXML への接続を作成・設定します。

  1. API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。 接続を追加
  2. 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「XML」を選択します。
  3. 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
    CData コネクタの追加方法はこちら >>
  4. それでは、XML への接続設定を行っていきましょう! 接続設定
  5. データソースを認証するには、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。 データプロバイダーはXML API を双方向データベーステーブルとしてモデル化し、XML ファイルをread-only ビュー(ローカルファイル、人気のクラウドサービスに格納されたファイル、およびFTP サーバー)としてモデル化します。 HTTP Basic、Digest、NTLM、OAuth、およびFTP を含む主な認証スキームはサポートされています。認証のガイドについては、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。

    URI と認証値を設定した後で、DataModel を設定することでデータの構造によりよくマッチするようデータの抽象化を調整できます。

    DataModel プロパティはデータがどのようにテーブルとして抽象化されるかを制御するプロパティであり、次の基本的な設定を調整します。

    • Document(デフォルト):XML データのトップレベルのドキュメントビューをモデル化します。データプロバイダーは入れ子化した要素をデータの集約値として返します。
    • FlattenedDocuments:入れ子化したドキュメントとその親を結合して単一のテーブルに入力します。
    • Relational:個別の関連テーブルを階層化されたデータから返します。テーブルは主キーと、親ドキュメントにリンクする外部キーを含みます。

    リレーショナルな抽象化の設定についての詳細は、「XML データのモデリング」セクションを参照してください。次の例で使用されているサンプルデータも存在します。 このデータには、人名、その人たちが所有する車、車に施されたさまざまなメンテナンスに関する情報が含まれます。

  6. 接続情報の入力が完了したら、「保存およびテスト」をクリックします。

データソースを認証するには、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。 データプロバイダーはXML API を双方向データベーステーブルとしてモデル化し、XML ファイルをread-only ビュー(ローカルファイル、人気のクラウドサービスに格納されたファイル、およびFTP サーバー)としてモデル化します。 HTTP Basic、Digest、NTLM、OAuth、およびFTP を含む主な認証スキームはサポートされています。認証のガイドについては、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。

URI と認証値を設定した後で、DataModel を設定することでデータの構造によりよくマッチするようデータの抽象化を調整できます。

DataModel プロパティはデータがどのようにテーブルとして抽象化されるかを制御するプロパティであり、次の基本的な設定を調整します。

  • Document(デフォルト):XML データのトップレベルのドキュメントビューをモデル化します。データプロバイダーは入れ子化した要素をデータの集約値として返します。
  • FlattenedDocuments:入れ子化したドキュメントとその親を結合して単一のテーブルに入力します。
  • Relational:個別の関連テーブルを階層化されたデータから返します。テーブルは主キーと、親ドキュメントにリンクする外部キーを含みます。

リレーショナルな抽象化の設定についての詳細は、「XML データのモデリング」セクションを参照してください。次の例で使用されているサンプルデータも存在します。 このデータには、人名、その人たちが所有する車、車に施されたさまざまなメンテナンスに関する情報が含まれます。

API Server のユーザー設定

次に、API Server 経由でXML にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。

  1. 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
  2. 次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
  3. その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。

XML 用のAPI エンドポイントの作成

ユーザーを作成したら、XML のデータ用のAPI エンドポイントを作成していきます。

  1. まず、「API」ページに移動し、 「 テーブルを追加」をクリックします。
  2. アクセスしたい接続を選択し、次へをクリックします。
  3. 接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。

OData のエンドポイントを取得

以上でXML への接続を設定してユーザーを作成し、API Server でXML データのAPI を追加しました。これで、OData 形式のXML データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。

追加設定

AUTORO(旧Robotic Crowd) がクラウドサービスのため、API ServerはクラウドホスティングもしくはオンプレミスのDMZなどに配置して、AUTORO(旧Robotic Crowd) がアクセスできるように構成する必要があります。

API Server にはデフォルトでCloud Gatewayの機能も提供されているので、もしオンプレミスに配置する場合はこちらを使ってみてください。

AUTORO(旧Robotic Crowd)

今回 AUTORO(旧Robotic Crowd) では「URL上のファイルを取得」というアクションでAPI Serverからデータを取得します。その際に、API Serverの認証はクエリパラメータによる認証方法を利用するので、「クエリ文字列パラメータとして認証トークンを使用する」の設定を有効化しておきます。なお、「HTTPリクエスト」のアクションを利用する場合は、この設定は不要です。CData API Server : Authentication

API エンドポイントができたので、確認します。「API」タブに移動すると、追加したリソースが表示されています。ここでリクエスト方法などを確認できます。

AUTORO(旧Robotic Crowd)

また、API Server はJSON以外にも様々なフォーマットでデータを取得できます。今回は最終的にCSVファイルをGoogle Driveにアップロードするため末尾に「?@format=csv」というパラメータを記載します。これによりCSV形式のファイルを取得できます。

オンプレミスDB やファイルからのAPI Server 使用(オプション)

オンプレミスRDB やExcel/CSV などのファイルのデータを使用する場合には、API Server のCloug Gateway / SSH ポートフォワーディングが便利です。是非、Cloud Gatway の設定方法 記事を参考にしてください。

AUTORO(旧Robotic Crowd) でXML のデータをCSV として扱う方法

AUTORO(旧Robotic Crowd) ワークフローの作成

  • それではワークフローを作成していきましょう。「ワークフロー」から「+ワークフローを作成」をクリックして、作業を開始します。
  • AUTORO(旧Robotic Crowd)
  • 任意のワークフロー名と割当ロボットを選択し「作成」をクリックします。なお、今回は実行結果がわかりやすいように「デバッグ実行モード」をONにしています。
  • まず、API Server経由でデータを取得するフローを構成します。 前述の通り、APIアクセス方法のアクション2種類あります。一つは「HTTPRequest」でJSONを取得したり、APIにデータを渡したりすることが可能です。 もう一つは「URL上のファイルを取得」でこれでURL先のファイルをダウンロードしてきて、処理することができます。
  • AUTORO(旧Robotic Crowd)
  • CData API Serverは両方のアクションで利用が可能ですが、今回はCSVファイルを Google Driveにアップロードしたいので、「URL上のファイルを取得」を使用します。JSONなどを利用したい場合は「HTTPRequest」を利用してください。
    「URL上のファイルを取得」を配置し、接続先となるURLを入力します。対象のAPI ServerのURLにパラメータとして「@authoken」と「@format」をそれぞれ指定します。リソースはFilm_listとしました。
    例:http://{API_SERVER_URL}/apiserver/api.rsc/film_list?@authtoken={USER_TOKEN}&@format=csv
    これによりCSVフォーマットでAUTORO(旧Robotic Crowd)にファイルをダウンロードできるようになります。
  • AUTORO(旧Robotic Crowd)
  • ダウンロードしてきたCSVにファイル名を指定します。「RenameFile」のアクションを配置し、以下のように「film_list.csv」と入力しました。
  • AUTORO(旧Robotic Crowd)
  • 最後に今回はGoogle Driveへファイルをアップロードします。「SavaFile」のアクションを配置し「ストレージプロバイダ」に別途接続したGoogle Driveの設定を入力し、アップロード先のフォルダを指定します。
  • AUTORO(旧Robotic Crowd)

以上でワークフローの構成は完了です。あとは「保存」ボタンをクリックして「実行」してみましょう。

CData API Server の無償版およびトライアル

CData API Server は、無償版および30日の無償トライアルがあります。是非、API Server ページ から製品をダウンロードしてお試しください。

はじめる準備はできましたか?

詳細はこちら、または無料トライアルにお申し込みください:

CData API Server お問い合わせ