Smaregi データをRobotic Crowd で連携して利用する方法

詳細情報をご希望ですか?

製品について詳細情報や無償トライアルをご案内します:

CData API Server



クラウド型RPA ツールのRobotic Crowd で Smaregi データに連携利用する方法

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

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

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

API Server の設定

次のステップに従い、セキュアな OData サービスを立ち上げます。

デプロイ

API Server はサーバー上で稼働します。Windows 版は、製品に組み込まれているスタンドアロンのサーバーかIIS に配置して稼働させることができます。Java 版では、Java servlet コンテナにAPI Server のWAR ファイルを配置します。 デプロイの詳細は製品ヘルプを参照してください。API Server を Microsoft AzureAmazon EC2Heroku にデプロイする方法はKB に記事があります。

Smaregi への接続

Smaregi アイコンをクリックして、接続画面を開き、接続プロパティを入力します。Smaregi のアイコンがデフォルトのAPI Server の接続先にない場合には、API Server がJava 版の場合はJDBC Drivers、API Server がWindows 版の場合はADO.NET Data ProvidersからSmaregi ドライバーをAPI Server と同じマシンにインストールして、API Server を再起動します。

スマレジドライバーには、ContractId およびAccessToken パラメータが必要です。

  • スマレジにログイン後、[設定]->[システム連携]->[スマレジAPI 設定]に移動します。
  • [API受信設定]セクションにある[受信機能を利用する]を[利用する]に変更し、[アクセストークンの生成]をクリックし、AccessToken を取得します。
  • 次に必要なAPI アクセスを有効にするため、[機能設定]セクションで必要な機能を[利用する]に変更します。

ContractId: アカウントの契約ID。これは受信設定セクションでも確認できます。
AccessToken: 受信設定セクションのアクセストークン。


接続を確立後、[設定]→[リソース]の画面で からOData API として公開するエンティティを選択します。

API Server のユーザー設定

[設定]→[ユーザー]からAPI にアクセスできるユーザーの認証設定を行います。API Server はトークンでの認証を行うことができます。 IP アドレスでAPI へのアクセスを制限することも可能です。デフォルトではローカルマシンからのアクセスのみが許可されています。SSL の設定も可能です。

追加設定

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

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

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

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

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

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

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

Robotic Crowd でSmaregi データをCSV として扱う方法

Robotic Crowd ワークフローの作成

  • それではワークフローを作成していきましょう。「ワークフロー」から「+ワークフローを作成」をクリックして、作業を開始します。
  • 任意のワークフロー名と割当ロボットを選択し「作成」をクリックします。なお、今回は実行結果がわかりやすいように「デバッグ実行モード」をONにしています。
  • まず、API Server経由でデータを取得するフローを構成します。 前述の通り、APIアクセス方法のアクション2種類あります。一つは「HTTPRequest」でJSONを取得したり、APIにデータを渡したりすることが可能です。 もう一つは「URL上のファイルを取得」でこれでURL先のファイルをダウンロードしてきて、処理することができます。
  • 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フォーマットでRobotic Crowdにファイルをダウンロードできるようになります。
  • ダウンロードしてきたCSVにファイル名を指定します。「RenameFile」のアクションを配置し、以下のように「film_list.csv」と入力しました。
  • 最後に今回はGoogle Driveへファイルをアップロードします。「SavaFile」のアクションを配置し「ストレージプロバイダ」に別途接続したGoogle Driveの設定を入力し、アップロード先のフォルダを指定します。

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

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

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