UiPathにおけるClickTypeアクティビティについて
こんにちは。
KYOSO社員のTです。
私はRPAに初めて触れたのが去年の1月なのでRPAに触れてちょうど一年くらいになります。
初めてRPAに触れた際に利用したのはBizRobo!でしたが
現在はUiPathとVBAで開発を行っています。
BizRobo!、UiPath、VBAを使用したことある経験から
それぞれの良さや苦労した点について今後書いていきたいと思います。
~今回のテーマ~
さて今回は、私がUiPathでの開発で苦戦した部分をご紹介したいと思います。
それはClickType(クリックを行う)のアクティビティです。
UiPathはアクティビティの数が豊富で様々な操作に対応しており
とても開発しやすいツールです。
ClickType(クリックを行う)アクティビティはその中でも比較的扱いが簡単そうで、
ロボットを作成する際によく使う機能の1つです。
基本的にこのアクティビティはセレクターを設定すれば使用できるものですが
webページやアプリケーションによっては上手く機能しないことがあります。
今回、私が開発していたロボットでは
ClickTypeを使用してIDとパスワードを入力する部分を選択していたのですが
セレクターがきちんと取れているのにロボットを
デバックするとクリックがされないということがありました。
最初はセレクターの問題かと思い、何度かセレクターの変更をしたのですが結果は変わりませんでした。
それなら「Tabキー」を使用して対応しようと思い、試してみましたが上手く行きませんでした。
キーボード操作でも上手くいかない、クリックでも上手くいかない……..
どうすればいいのか悩んでいたところ先輩社員の方に
上手くいかないときはオプションを変更すると良いというアドバイスを頂きました。
そこでClickTypeアクティビティのオプションの一つである「ウインドウメッセージを送信」
にチェック(True)を入れてデバックしてみると上手く動きました。
以下にClickTypeアクティビティの説明とオプションの説明を記載致します。
ClickTypeアクティビティ
このアクティビティは画面上で指定し、
クリックしたい対象のものを選択し使用するアクティビティです。
ClickTypeアクティビティのオプションは以下の4つです。
・ウインドウメッセージを送信
このオプションは特定のメッセージをターゲットアプリケーションに送信することによって実行します。
この入力方法はバックグラウンドで機能するものです。
・カーソル位置
このオプションはカーソル位置の設定をするオプションです。
・キー修飾子
このオプションはキー修飾子を追加するオプションです。
※「ウインドウメッセージを送信」と「クリックをシミュレート」と一緒に使用することはできません。
・クリックをシミュレート
このオプションはターゲットアプリケーションのテクノロジーを使用してクリックをシミュレートします。
この入力方法は3つの中で最も速く、バックグラウンドで機能します。
※このプロパティを選択する場合は、実行前にターゲットUI要素の状態を確認することをお勧めします。
基本的にはClickTypeのアクティビティを使用する際にオプションの設定変更は必要ありませんが
セレクター等は問題ないのに動かない場合があります。
そんな時はオプション機能を上手く使用して対応してみてください。
~おわりに~
苦戦しているときは長いトンネルの中にいるようなどんよりとした気持ちになると思いますが
答えが見つかり、上手くロボットが稼働した時には大きな達成感を感じることが出来ます。
もし今後開発で苦戦することがありましたら、ぜひこのブログ等を活用していただければと思います。