前記事までのおさらい
【BluePrism入門】Webブラウザ操作の自動化 (1/4) - (O+P)ut
以下の作業をBluePrismで実装
- Internet Explorerで 疎通チェックツールを開く
- IP/ドメイン名項目に値を入力
- 疎通確認ボタンを押下
- 表示結果を確認
以下の要素を持つApplication Modellerを作成
- Write(ドメイン入力用)
- Click(ボタン押下用)
- Read(表示結果取得用)
本記事では一連の作業の肝である「オブジェクト(Objects)」の作成、後編です。
Objetcsを作成
アクションを作成していきます。
まず初めに、起動するアクションです。
デフォルトで存在する「Action 1」を「Launch」とでもします。
起動アクション
左側にある「Navigate」を画面に配置し、
「Navigate」をクリックして、中身に情報を付与していきます。
以下の図の左側にある「PingCheck」をドラッグ&ドロップでElementの箇所に置きます。
Actionを押下すると、複数の動作が選択できますが、今回は「Launch」を選択します。
Navigate1となっている名前を今回はN_Launchとしました。
挙動を確認すべく、StartとN_LaunchとEndを結んで実行します。
ブラウザが開くはずです。
ちなみに、ブラウザが開いた状態では以下のエラーがでます。
Internal : Failed to perform step 1 in Navigate Stage 'N_Launch' on page 'Launch' - Application already launched
スリープ機能を挟む
ブラウザからURLを開く処理を待たずに後続の処理が始まると、エラーとなってしまう場合があります。
環境によっては不要ですが、安定化のため明示的に待つ動作を入れます。
実装としては、左側にある「Wait」を挟みます。今回はTimeout(timespan/secs)という箇所に「5」と入力しました。5秒スリープします。
URL入力アクション
左側にある「Write」を画面に配置します。
中を開き、右側にあるWriteをドラッグ&ドロップします。
左側にあるValueに今回入力するドメイン名に関する情報を入力します。
簡単に行いたければ
"www.mtioutput.com"
といったように直接記載します。
また、変数としてDataを外だししてその変数を入力する形でも対応可能です。
上は、Domainというテキストデータを用意し、ドメイン名を入力、それをWrite関数に読み込ませてます。
これも、線を繋いで実行すればブラウザの中に値が入力されます。*1
ボタン押下アクション
ここでも「Navigate」を用意し、前回は「PingCheck」をドラッグ&ドロップしましたが、今回は「Click」をドラッグ&ドロップします。
アクションは押下を意味する「Press」を選択。同じように動作確認してください。
結果読み込みアクション
左側から「Read」を用意し、以下のように情報を記載します。
今回は、Resultというデータを用意し、アクションは「Get Name」で値を取得します。
他とのアクションの違いは、アウトプットとして返り値を設定する必要があることです。
Endのボックスをクリックし、以下のようにOutputを指定します。
Process作成に向けて
それぞれのアクションをPublishします。アクションにカーソルを合わせて左クリックで選択できます。
Publishすると、下のようにマークがつきます。これによりプロセスから使用できます。
ここまで来ればできたも当然、最後はプロセスとして実行するのみです。
*1:個人的に、初めてこの処理が動作した時は少し感動しました