RPA ツールUiPath でOutlook のデータを連携利用する方法
UiPath は高機能なRPA(Robotic Process Automation)製品です。UiPath Studio を使うことで、RPA プログラムをノーコードで開発できます。CData ODBC Driver を使えば、コーディングなしでUiPath からOutlook への接続を作成し、連携フローに組み込めます。CData ODBC Driver は、UiPath からODBC Driver に対して発行されたSQL をOutlook へのリアルタイムリクエストに変換し、レスポンスをテーブルデータとして取得します。
この記事では、UiPath Studio を使ってOutlook に連携するRPA プログラムを作成します。
今回作成するUiPath RPA プロジェクト
データベース接続用アクティビティを利用してCData ODBC Driver for API に接続し、Outlook のCalendarGroupCalendars データを取得するSQL を実行。取得したデータをCSV 書き込みアクティビティを利用して、CSV 出力するRPA プロジェクトを作成します(以下は完成したフローチャート)。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Outlook をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにOutlook のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてOutlook の接続を設定、2.UiPath 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとOutlook への接続設定
まずは、本記事右側のサイドバーからAPI ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
インストール後、ODBC DSN Outlook で接続プロパティを設定します。Microsoft ODBC Data Source Administrator を使用して、ODBC DSN を作成および設定できます。
OAuth 認証の設定
Microsoft Graph API は認証に OAuth 2.0 を使用します。OAuth 認証情報(Client ID と Client Secret)を取得するには、Microsoft Azure Portal でアプリケーションを登録する必要があります。
OAuth 認証情報の取得
- Azure Portal にログインします。
- Azure Active Directory > App registrations に移動します。
- New registration をクリックして新しいアプリケーションを作成します。
- アプリケーション名を入力し、適切なアカウントの種類を選択します。
- Redirect URI をアプリケーションのコールバック URL に設定します(デスクトップアプリの場合は http://localhost:33333 など)。
- Register をクリックしてアプリケーションを作成します。
- アプリケーションの概要ページで Application (client) ID をコピーします。これが OAuthClientId になります。
- Certificates & secrets に移動して、新しいクライアントシークレットを作成します。
- クライアントシークレットの値をコピーします。これが OAuthClientSecret になります。
- API permissions に移動して、必要な Microsoft Graph API の権限を追加します:
- Mail.Read - メールメッセージへのアクセス用
- Contacts.Read - 連絡先へのアクセス用
- Calendars.Read - カレンダーイベントへのアクセス用
- Tasks.Read - To Do タスクへのアクセス用
- offline_access - リフレッシュトークンの取得用
- Grant admin consent をクリックして、これらの権限を付与します。
OAuth での接続
以下の接続プロパティを設定して接続を確立してください:
- AuthScheme:OAuth に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。CData API Profile for Outlook が OAuth プロセスを自動的に進め、アクセストークンを取得します。
- OAuthClientId:Azure Portal の Application (client) ID に設定します。
- OAuthClientSecret:Azure Portal のクライアントシークレットの値に設定します。
- TenantId:Azure AD のテナント識別子(GUID または 'contoso.onmicrosoft.com' のようなドメイン名)に設定します。
- CallbackURL:アプリ登録で指定したリダイレクト URI に設定します(デスクトップアプリの場合は http://localhost:33333 など)。
接続文字列の例
Profile=C:\profiles\Outlook.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;TenantId=your_tenant_id;CallbackUrl=http://localhost:33333;
これで、UiPath Studio にOutlook のデータを接続する準備は完了です。では、実際にプロジェクトを作成していきましょう。
- スタートページから「プロセス」をクリックして、新しいプロジェクトを作成します。
- プロジェクトを作成したら、「新規」アイコンから「フローチャート」を選択して、新しいフローチャートを作成します。
- Outlook への接続を行うには、データベース接続用のアクティビティが必要になります。リボンの「パッケージを管理」をクリックし、「UiPath.Database.Activities」を検索してインストールしてください。
データ取得用アクティビティの作成
データベース関連のアクティビティが追加できたので、次にOutlook への接続を設定してデータを取り出すための、「クエリを実行」アクティビティを追加します。
- アクティビティナビゲーションから「クエリを実行」を選択し、フローチャートに配置します。
- アクティビティをダブルクリックすると設定用画面に移動するので、「接続を構成」をクリックします。
- 「接続ウィザード」をクリックして、「Data Source」に「Microsoft ODBC Data Source」を選択します。
- 「Use user or system data source」のドロップダウンから、先ほど作成した「CData Outlook Source」を選択します。
- 「Test connection」をクリックして接続テストが成功したら、OK をクリックします。これで、UiPath からOutlook への接続設定は完了です。
- 次に、データ取得用のクエリを入力します。以下はサンプルのSQL です。
- 最後に、「クエリを実行」アクティビティのプロパティにある「出力」以下の、データテーブルの「+」ボタンから、出力格納用の変数を作成します。
"SELECT * FROM CalendarGroupCalendars;"
CSV 書き込み用のアクティビティを作成
最後に、出力したデータをCSV に書き込むためのアクティビティを作成します。アクティビティの設定画面から以下の項目を指定してください。
- 書き込み元:先ほど作成した出力用変数を指定します。
- 書き込み先ファイル:任意のファイルパスを指定します。右側のフォルダアイコンからGUI ベースで指定できます。
各アクティビティの紐づけと実行
あとは各アクティビティを紐付ければ、Outlook のデータを出力するRPA プロジェクトの作成は完了です。
リボンから「実行」を選択してクリックすると、フローが実行されます。無事、Outlook のデータを持ったCSV ファイルが作成されていました!もちろん取得したデータは、CSV 作成以外にもさまざまなフローに組み込んで使用できます。
おわりに
このようにCData ODBC ドライバを利用して、簡単にUiPath Studio でOutlook に連携するフローを作成することができました。CData ではOutlook 以外にも270種類以上のデータソース向けのドライバーを提供しています。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
日本のユーザー向けにCData ODBC ドライバは、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。