キャプチャ機能が使用できないシステムの自動化方法【Automation 360編】

Automation 360を使用して業務を自動化する際に、「キャプチャ」アクションを使用して自動化を進めるケースは多いと思います。
しかし、システムによっては、上手く画面内の要素が捕捉できずに開発が進めないとお悩みのケースがあるのではないでしょうか。
本日は、私が実際に上手く「キャプチャ」で捕捉できない要素を含んだシステムの自動化に成功した事例をお伝えさせていただきます。

Automation 360の「キャプチャ」アクションが使用できない場合の回避策

レコーダーパッケージの「キャプチャ」アクションが使えなくても他の方法やアクションで対応できる!

基本的なアクションには教科書通りのやり方があります。しかし、そのやり方で上手く動作しない場合には、回避策を講じる必要があります。
Automation360の安定性の高いレコーダーパッケージである「キャプチャ」アクション。
これが使用できない場合の対策を記載します。まずは手動で順を追って作業を行い、どのアクションなら代替できるかを模索することが対策になります。
例えば、「キャプチャ」機能が使えない場合。キーボード操作機能を活用することで、レコーダーパッケージのキャプチャ機能と同じ処理を行うことができる場合があります。

以下、実際の回避方法の例を紹介します。

レコーダーキャプチャ機能をキーボード操作機能で代用した例

処理内容:システム内の特定のフィールドに値を設定する

<レコーダーキャプチャ機能での操作を使用した処理>

  • 対象の入力フィールドを特定し、値を設定する

<キーボード操作機能を使用した処理>

  1. Tabキー操作での移動回数が何回になるのかを基準のスタート位置を決める
  2. キーボード操作のTabキー操作で入力フィールドまで移動する
  3. キーボード操作のEnterキーで入力フィールドを選択する
  4. キーボード操作で値を入力し、Enterキーで入力を完了させる

上記の構築方法を行うことで、多少手間はかかりますが、キーストローク操作でレコーダーパッケージのキャプチャ機能と同じ処理を行うことが可能となります。

レコーダーキャプチャをキーストロークで代用する場合の注意点

ロボットの可読性を高める

キーストロークを使うとキャプチャ機能でフィールドを特定できない課題を回避することは可能ですが、本来1つのアクションでできる処理を複数のアクションで組み合わせて構築する為、ロボットの設定が複雑になり、ロボットの可読性が低下する課題が発生します。
そのため、誰が見ても設定内容の意図を読解できるように、Automation 360のコメントや、ステップのアクションを使用して、可読性を持たせるようにしましょう。

<コメントとステップを用いた使用例>

キーストロークの操作速度をコントロールする

RPAのキーストローク操作は人間のキーボード操作より遥かに早いため、入力の抜け漏れが発生しやすいです。なるべく人間らしい処理スピードを調整していくことが推奨されます。
例えば、「キーストロークのシミュレーション」の前後に「遅延」を入れる、キーストロークの「各キーボード操作間の遅延」を100ミリ秒と設定するなど、入力速度を抑えるのが安定する方法の一つです。

<キーストロークの操作速度のコントロール例>

Automation 360の「キャプチャ」アクションが使用できないシステムの自動化事例

Automation 360のレコーダーパッケージの「キャプチャ」アクションでの操作が難しいシステムを自動化した事例を紹介します。

今回ご紹介させていただくのは、大手飲食店でドライブスルーでの接客時間を集計、保存する業務を自動化した際の事例です。
レコーダーパッケージの「キャプチャ」アクションがシステムのオブジェクトを認識できない課題に対して、最終的にどのように設定して自動化できたかをお伝えします。ご参考ください。

業務内容

  1. ドライブスルーが可能な某店舗でドライブスルーに何時間対応したのかのデータを、CLOUDシステムから出力する
  2. 出力したドライブスルーの時間を計測、集計する
  3. 集計した1週間分のデータを、CLOUDシステムから出力し、Excelファイルにまとめて管理する

今回、➊のCLOUDシステムからデータを出力する処理の部分で以下の課題点が出てきました。

自動化の際の課題点

CLOUDシステムの操作時に「キャプチャ」アクションでは選択できないフィールドが存在し、「キャプチャ」アクションがうまく動作しない

CLOUDシステムの画面操作を行う際に、

  1. 日付を入力するフィールドがレコーダーパッケージの「キャプチャ」アクションで選択できず、日付を入力することができない
  2. 日付入力後のDaypart4のチェックボックスがレコーダーパッケージの「キャプチャ」アクションで押すことができない

といった、フィールドの識別ができない事象が発生しました。
原因は、日付項目を入力すると、入力した日付によって入力項目が変更され、入力場所の位置が可変であることを判明しました。

※赤枠の箇所が選択できない

課題点の解決方法

日付(①Dau Range②Daypart)を選択するフィールドの選択ができない課題は以下の方法で解決しました。

  1. 基準となる位置を固定する
  2. 固定された基準となる位置からキーストローク操作でTabキーを使用して、移動・選択を行う

フィールド内の選択肢により画面が変動するシステムを自動化する際、基準となる位置を固定することは重要な工程となります。
キー操作機能を使用する為には、移動する回数を固定する必要があります。どの画面でも変わらないオブジェクトがありますので、それを基準としてロボットに構築します。そうすると、入力日付によって入力対象の項目が変わっても、基準位置をスタート時点として、キーストローク操作で移動することができます。

今回の場合は

  1. 日付を設定した後、Not Daypartが出現する位置の文字列が基準位置とする
  2. 文字列がNot Daypartの場合、DOWNキーで5回を移動する
  3. 文字列がDaypart1の場合、DOWNキーで4回を移動する

このように、基準位置から条件によって移動する回数が固定だとわかっているので、キャプチャの場所特定ができなくても、キーストロークで回避することができます。

<構築ロジック画面例>

今回ご紹介させていただいたのはあくまでも一例であり、Automation 360のRPAツールを使用して、システム操作を行う業務を自動化する際に、レコーダーパッケージの「キャプチャ」機能が使用できないシステムでも他のアクションを組み合わせたり、構築方法を工夫して、自動化することが可能です。
弊社では、Automation 360以外にも、UiPathや、BizRobo!等のRPAツールを使用した自動化も行っております。 もしも、上記のようなお悩みで、自動化をあきらめてしまった業務や、このシステムも自動化できるのか確認したい等ございましたら、是非以下より、お問い合わせください。

本記事の執筆者

ペネトレイター株式会社 平石