【A360】Automation Anywhereをさわってみた!(プロンプト編)

RPA関連ブログ

本ブログではRPAツール「Automation Anywhere」(以下、AA)のさまざまな機能についてご紹介します。
今回はリアルタイムでロボットに指示を与える際に使用する、A360のプロンプトアクションについて紹介します。

1.プロンプトアクションについて

プロンプトアクションとは、RPA実行時にRPAにリアルタイムで、実行者が入力した値などの情報を送ることができるアクションです。
「自動化しているのになぜリアルタイムで操作する必要があるのか?」と思う方もいるのではないでしょうか。
プロンプトアクションは、「処理自体は単純作業で自動化したいけど、RPAが取得したり記入したりする情報が正しいことを確認したい」「必要な値を入力して同一の処理を行わせたい」という場合に使用すると便利です。
今回はプロンプトアクションの機能や使用方法について紹介します。

2.プロンプトアクションで使える機能

プロンプトアクションは、以下の4つがあります。

アクション名 アイコン
ファイルの場合
フォルダーの場合
値の場合
はい/いいえの場合

ファイルの場合

「ファイルの場合」では、以下画面が表示されます。

それぞれの指定項目では、以下の内容を指定します。

指定項目 機能
ウィンドウキャプションを表示 ウィンドウタイトルを入力する
メッセージを表示 メッセージを入力する
値を変数に代入(リスト) 選択したファイルパスを変数に代入する

実際に処理を行うと以下画面が表示されます

表示されたウィンドウの「Browse」を押下すると、以下のような画面が表示されます。
※デフォルトではデスクトップのフォルダーが表示されます。

今回はデスクトップにある「RPAブログ」フォルダー内のファイルを選択します。
ファイルを選択すると以下画面の表示になります

これで「OK」を押下すると、指定したリスト変数にファイルパスが代入されます。

ファイルの場合はリスト変数を指定しているので複数ファイルのファイルパスを代入することが可能です(左:単一ファイル指定の場合、右:複数ファイル指定の場合)。

「ファイルの場合」は利用者がリアルタイムでファイルを指定し、ファイルパスの取得をする場合等に活用されます。 また、ファイル選択の際に「Cancel」を押下すると、変数には「Dummy Value」が代入され、ウィンドウを「×」で閉じても同様に変数には「Dummy Value」が代入されます。

フォルダーの場合

「フォルダーの場合」では、以下画面が表示されます。

それぞれの指定項目では、以下の内容を指定します。

指定項目 機能
ウィンドウキャプションを表示 ウィンドウタイトルを入力する
メッセージを表示 メッセージを入力する
値を変数に代入(文字列) 選択したフォルダーパスを変数に代入する

実際に処理を行うと「ファイルの場合」と同様の画面が表示されます。
フォルダーを選択し、「OK」を押下すると文字列変数にファイルパスが代入されます。
文字列変数のため、複数のフォルダーパスは取得することができません。

「フォルダーの場合」は利用者がリアルタイムでフォルダーを指定し、フォルダーパスの取得をする場合等に活用されます。
また、フォルダー選択の際に「Cancel」の押下や「×」で閉じると、変数には「Dummy Value」が代入されます。

値の場合

「値の場合」では、以下画面が表示されます。

それぞれの指定項目では、以下の内容を指定します。

指定項目 機能 備考
ウィンドウキャプションを表示 ウィンドウタイトルを入力する
メッセージを表示 「メッセージを入力する
キーボード操作をマスク キーボード操作をマスクするか選択 任意
値を変数に代入(文字列) 入力した値を変数に代入する

実際に処理を行うと以下画面が表示されます。

白い枠内に代入したい値を入力し、「OK」を押下し、指定した文字列変数に値が代入されます。

また、「キーボード操作をマスク」のチェックを入れると、値を入力した際に以下画面のようになります。

「値の場合」は利用者がリアルタイムで値を入力し、変数として使用したい場合等に活用されます。
また、値入力の際に「Cancel」の押下をすると、変数は空白の状態になります。

一方、値入力の際に「×」で閉じると例外エラーが発生します。

はい/いいえの場合

「はい/いいえの場合」では、以下画面が表示されます。

それぞれの指定項目では、以下の内容を指定します。

指定項目 機能
ウィンドウキャプションを表示 ウィンドウタイトルを入力する
メッセージを表示 メッセージを入力する
値を変数に代入(文字列) 選択したフォルダーパスを変数に代入する

実際に処理を行うと以下画面が表示されます。

「Yes」または「No」を選択し、指定した文字列変数に「Yes」または「No」の値が代入されます。
「はい/いいえの場合」は利用者がリアルタイムで「Yes」または「No」選択し、選択した結果によって分岐させたい場合等に活用されます。
また、選択の際に「×」で閉じると「値の場合」と同様に例外エラーが発生します。

以上がプロンプトアクションで利用できる機能です。

3.プロンプトアクションでリアルタイムの指示を与えよう!

では、実際にプロンプトアクションを利用して、リアルタイムの指示を与えるRPAを実装してみましょう。
今回は、RPA実行者がファイル、PDF印刷可否、印刷格納先を選択できるRPAを作成します。

今回のRPAを動かすために以下の名簿ファイルを作成しました。

RPAに進めてもらう処理手順は以下です。
①プロンプト「ファイルの場合」で作業したいファイルを選択し、開く
②検索したい値をプロンプト「値の場合」で入力し、Excelのシートを切り替える
③検索結果のシートの印刷プレビューを出し、印刷可否をプロンプト「はい/いいえの場合」で
選択する。「Yes」の場合はPDF印刷処理を行い、「No」の場合はエラー処理に進む
④プロンプト「フォルダー」の場合で格納先フォルダーを選択する
⑤続けての印刷可否をプロンプト「はい/いいえの場合」で選択する
⑥「No」の場合はExcelを閉じ、処理を終了する
※エラー処理はエラーログを記録するようにする。

では、処理の詳細を見ていきましょう。

プロンプト「ファイルの場合」で作業したいファイルを選択し、開く

まずは、プロンプト「ファイルの場合」を使用し、操作を行いたいファイルをRPA実行者が選択できるようにします。

プロンプト「ファイルの場合」はリスト変数で変数に格納されるため、ファイルを開くパスを文字列として使用するために、リストアクションの「項目の取得」を使用します。

今回は対象を最初に選択したファイルに限定するため、インデックス番号を「0」と設定します。

インデックス番号の数字変数を変数にして、ループ等を使用すると複数のファイルを対象にすることも可能です。

検索したい値をプロンプト「値の場合」で入力し、Excelのシートを切り替える

次に、プロンプト「値の場合」を使用し、印刷したいシート名をRPA実行者が選択できるようにします。

入力した値のシート名に切り替えます。
ここで入力した名前のシート名が見つからない場合は、エラーとなります。

①検索結果のシートの印刷プレビューを出し、印刷可否をプロンプト「はい/いいえの場合」で選択する。
「Yes」の場合はPDF印刷処理を行い、「No」の場合はエラー処理に進む。

次に、キーストロークのシミュレーションアクションでショートカットキーを入力し、印刷プレビューを表示させます。
RPA実行者は印刷プレビューの内容を確認し、プロンプト「はい/いいえの場合」を使用し、印刷可否を選択できるようにします。

「Yes」が選択された場合は次の処理に進み、「No」が選択された場合はエラーハンドラーアクションアクションの「スロー」でエラーとさせます。

②プロンプト「フォルダーの場合」で格納先フォルダーを選択する

先ほどの処理で「Yes」が選択された場合、プロンプト「フォルダーの場合」を利用し、格納先をRPA実行者が選択できるようにします。

「フォルダーの場合」は文字列変数として変数に格納されるため、「ファイルの場合」のような処理は不要です。

③続けての印刷可否をプロンプト「はい/いいえの場合」で選択する

最後に、プロンプト「はい/いいえの場合」を使用し、続けて同じ処理を行うかをRPA実行者が選択できるようにします。

④「No」の場合はExcelを閉じ、処理を終了する

「Yes」が選択された場合はループ先のシート名入力の処理に戻ります。「No」が選択された場合はループを抜け、開いたExcelを閉じます。

「No」の場合

これでRPA実行者がファイル、PDF印刷可否、印刷格納先を選択できるRPAは完成です。

4.ロボットを動かしてみた結果

では、作成したRPAを実行し、「Yes」、「No」を選択した結果をそれぞれ見てみましょう。
※実行方法については、過去ブログ「【A360】Automation Anywhereをさわってみた!-レコーダー編)」に概要を記載してありますので、そちらもご覧ください。

「Yes」の結果

「No」の結果

5.おわりに

プロンプトアクションは、デスクトップ型のような有人実行に向いています。

実行手段 特徴
有人実行
(デスクトップ型)
・RPA実行者が任意のタイミングで実行する
・デスクトップ型であれば画面が専有される
無人実行
(サーバ型)
・スケジュール設定で実行できる
・サーバ型であれば画面が専有されることがない

また、その場でファイル、フォルダーパスを取得できるので、パスをRPAのコードそのものに記載する必要や、環境設定用のファイルを用意する必要もありません。
実行環境に応じてプロンプトアクションを有効に活用していきましょう。

RPA(Automation Anywhere)の導入をご検討の際は、システムエグゼまでお気軽にご相談ください。