ロボットを作成するルール

作成したロボットを運用したときの作業が楽になることを目指したルールです。ぜひ参考にしてみてください。
またわたしはこんなルールを設けてロボットを作成、運用しているという方はぜひご連絡ください!!

1.パラメータはロボットの外で管理する
ロボットが参照するフォルダ、ファイルパスなどのパラメータはロボットの外で管理しましょう。一般的にはエクセルで管理し、ロボットはエクセル内に記載されたパラメータを参照するイメージです。上級者の方はデータベースで管理してもいいかもしれません。

例)
・エクセルで管理する
日報作成作業_マスタ.xlsx

2.命名規則1
ロボットが所属するプロジェクト名やパラメータのエクセルを保存するフォルダなどの命名規則を統一しておきましょう。

例)
・パラメータのエクセルを保存するフォルダ
C:\日報作成作業\パラメータ

・ロボットが出力したファイルを保存するフォルダ
C:\日報作成作業\ロボット

・ロボットが所属するプロジェクト名
日報作成作業

3.命名規則2
ロボットは多くの場合プロジェクトの中に複数作成されます。ロボット名をルールにのっとってつけることで管理をしやすくしましょう
・先頭の3桁は数字。10ごとにロボットへ番号を割り当て。あとから追加で作成するロボットが作成済のロボットの間に入れられるようにするため。AとBのロボットがすでにあり、CをAの後に追加した場合が下の例。
例)
010-Aダウンロード
011-Cファイル加工
020-Bメール送信

・ロボット名は日本語
ロボット名からロボットの実行内容がわかるように日本語で。

・ロボットが何をどうしているか実行内容がわかるようにする
ロボット名からロボットの実行内容がわかるようにする。
例)
010-郵政から郵便番号をダウンロード
011-郵便番号ファイルをフィルタ加工
020-郵便番号ファイルをメール送信

4.アクションフローを見やすく
アクションフローは修正が発生したときに見やすいようにしておきましょう。アクションフローが見にくいと、フローの内容を理解しにくかったり修正箇所をなかなか見つけられなかったり、修正する作業に時間がとられてしまいます。

・ブランチを使う
 -作業手順のかたまりでブランチをわけましょう。以下の例ではファイルを別名で移動する場合、どのようなブランチの内容になるかを説明しています。
手順:ブランチの追加・削除
 例)
 変数の値の加工(ファイル名生成)ーファイルをコピーーファイルを削除

 -ブランチの先頭にコメントを書きましょう。ブックマークアクションを作成し、そこにコメントを書きます。コメントはブランチ内の複数のアクションで行っている処理を説明する内容です。
手順:ブックマークの設置

・1作業、1ロボットに分解する
 -1作業、1ロボットに分割することでアクションフローは小さくなり、ロボットが行っている処理内容の把握がしやくすなります。
 たとえば郵政から郵便番号をダウンロードしメールで送る、という作業をロボットにした場合は以下のように分割されます。
010-郵政から郵便番号をダウンロード
020-郵便番号ファイルをメール送信

  このように分割することであとから郵便番号ファイルをフィルタ加工する作業が追加されても、新しいフィルタ加工ロボットを作成すればよく、作成済のロボットに追加をする必要がない。

 -ロボットの作業状況の管理を行う
 ロボットが処理を開始していいのか、作業前提となるロボットの処理が終わっているのか、ロボットの作業状況の管理を行いましょう。

例)
「011-郵便番号ファイルをフィルタ加工」は作業開始前に、「010-郵政から郵便番号をダウンロード」が終わっているかを確認する必要がある。
たとえば、所定のダウンロードフォルダにダウンロードしてきたファイルがあることを確認する。

「020-郵便番号ファイルをメール送信」は「011-郵便番号ファイルをフィルタ加工」が終わっているかを確認する必要がある。
たとえば、所定の加工済フォルダに加工済のファイルがあることを確認する。

・変数の整理
ロボットが完成したら変数の整理を行いましょう。使っていない変数は削除しましょう
手順:変数の追加・削除

・アクションの整理
ロボットが完成したら不要なアクション、コメントアウトしたアクションは削除しましょう
手順:アクションの削除

・最適なグループ化をおこなう
どうしてもアクションフローが大きくなってしまったロボットはグループ化を行って、フロー全体を見やすくしましょう。ブランチごとに作業が分かれているので、ブランチごとにグループ化するのがおすすめです。
手順:グループ化

・引数の説明
引数を使って処理を行うロボットの場合、ROBOWEBのスケジュールの概要へ引数の役割を書いておきましょう
手順:スケジュール設定(引数の設定)

・アクションの説明
アクションの実行内容はアクション名を編集して書くようにしましょう。
例)
値の入力:今日の日付

5.安定して動くロボットを
作成するなら安定して動いてくれるロボットがいいですよね。

・アプリ操作で画像マッチングはどうしても使わざるを得ない場合以外は使わないようにしましょう。

・エクセル操作を行う前に、エクセルの強制終了アクションを実行しましょう。
エクセルの強制終了アクションを行ってから、エクセルのアクションを行うようにします。このようにすることでブックインデックスのずれによるエラーが発生するのを防ぎます。
手順:エクセルを強制終了する

・エラーハンドリングをできるだけ行う
すべてのアクションへエラーハンドリングを行うのが理想です。しかしアクションの数が多い場合は設定の手間を考えると難しい場合もあります。
なんどかロボットのテストを行ってエラーが発生した箇所へ設定したり、経験値がいりますがエラーが発生しそうな箇所へ設定する方法もあります。

・再実行(リトライ)
ロボットは全くエラーがなく運用し続けることができるものではありません。何かしらの理由でエラーは発生します。
エラーが発生し再実行するときに、再実行するための条件や手順をスケジュールの概要へ記載しましょう

要素のループの便利な使い方

要素のループは設定の仕方によっては、より便利に使うことができます。

以下のような各都道府県ごとに分かれている店舗リストがあります。この店舗名をすべて要素のループアクションを使って取得します

loop1

要素のループアクションを作成しました。

loop2

以下の赤で囲った東京の部分しか、ループの対象になりません。大阪や愛知をループの対象に入れるにはどうしたらいいのでしょうか。

loop3

取得範囲の設定を拡張した範囲の要素にすることで、大阪や愛知もループの対象にすることができます。

loop4

またxpathの除外を使えば、ループの対象から外すこともできます。

loop5

xpathを使えば、ループの対象にしたいものだけをピックアップすることもできます。

loop6.png

表示値のフィルターを使っても、ループの対象にしたいものだけをピックアップすることができます。

loop8

 

またxpathへ以下のような書き方をすることで、ループの対象を絞ることもできます。

以下では、classがhistListData pauseのものだけをループの対象にしています。

loop9

 

 

 

アプリ操作でうまくいかないときは(要素マッチング)1

アプリ操作の設定で要素マッチングにしたときに、操作したい要素をうまく設定するコツを説明します。要素マッチングで操作したい個所をうまく指定できない、または作成したアクションを実行したけどうまくいかない場合に本ページを参照してください。

以下の画面から契約番号を取得します。

apl_kotu1

マッチング方式は要素にします。apl_kotu2

名前は処理の都度変わることが多いです。そのため、使用しない、にしましょう。
また使用しない、にしてうまくいかないときは、名前を正規表現を使って設定してください。

apl_kotu3

設定を変更したときに、全部で何件みつかりました、と表示されていることを確認しましょう。(見つからない場合は、該当する要素が見つかりません、と表示されます)

apl_kotu4

見つかった場合は、操作対象にフォーカスをクリックして、操作したい個所にフォーカスが当たることを確認しましょう。

apl_kotu5

以下のように複数件見つかった場合は、要素インデックスの値を変更します。1件しか見つからなかった場合は、要素インデックスは「0」になっています。

apl_kotu6

それでもうまくいかないときは、キャッシュクリアにチェックを入れたり、要素をアクティブにするにチェックを入れてアクションを実行してみましょう

apl_kotu7

またアクションは作成されるが、処理が空振りしたような状態(たとえば値が入力されない)の場合、作成したアクションをステップ実行してみてください。作成時は空振りしたアクションが正常に実行されることがあります。

それでもうまくいかないときは、マッチング方式を画像にしてアクションを作成していただくか、もしくはサポートまでご相談ください。

ライセンスの破棄

本製品を利用していたPCを変更する場合に、以下の手順を行ってください。

1.robo_design.exeを起動します

2.ツールバーのデザイン内にある「設定」をクリックすると設定画面が表示されます

haki2

3.設定画面下部のライセンスの有効期限が表示されている右部にある読込ボタンをクリックすると、ライセンス認証画面が表示されます

haki3

4.ライセンス認証画面右下のライセンス破棄ボタンをクリックしてください。また破棄証明書をサポートまでお送りください

haki4

確認メッセージに回答を行って破棄は完了です

haki5

haki6

破棄が終わると以下の画面が表示されます。こちらのスクリーンショットをライセンス破棄証明書としてサポートまで送付ください

haki7

WEB要素の表示

非表示にした要素を表示する方法について説明します

 

アクション設定画面の設定項目についての説明は以下の通りです

[Mainタブ]

表示する要素を選択します。ロボット内で作成した非表示にした要素がすべて候補として表示されます。非表示にする要素を変更した場合、変更前の要素も表示対象の候補として表示されます

[Advancedタブ]

・要素に対してフォーカスを移動する
本アクションが実行されるときに、指定した要素にフォーカスを当てる場合、チェックを入れます

・アラートが出ていればエラーとする
本アクションを実行するときにブラウザからアラートメッセージが表示されていた場合にエラーとするときは、チェックを入れます

・要素が見つかるまでのタイムアウト(秒)
設定した秒数までロボットが要素を探します

・アクション有効
このアクションを無効にする場合は、チェックを外します

[エラー発生時の対応タブ]

・エラー時の処理
エラーが発生したときの設定を行います

・エラー時にログ出力
エラーが発生したときにログに出力するか設定します

WEB要素の非表示

ロボットの実行するアクションの邪魔になる要素を非表示にする方法について説明します

 

アクション設定画面の設定項目についての説明は以下の通りです

[Mainタブ]

設定する内容はありません

[Advancedタブ]

rangename、xpath、Attribute、Value、テキストパターンの設定をすることで、ロボットが操作する要素を指定します。要素にフォーカスボタンで設定した内容で操作したい要素をロボットが見つけられるか確認することができます

・rangename
指定した要素を探す対象範囲を設定します。要素のループの中で行う場合に設定します

・xpath
要素の指定を行います。変数参照可能です

・Attribute
要素の指定を行います。バージョン0.10.2から標準で自動設定されないようになりました。必要に応じてプルダウンで選択することができます。

・Value
要素の指定を行います。バージョン0.10.2から標準で自動設定されないようになりました。Attributeで選択した設定に応じて内容が変わります

・テキストパターン
Webサイト内に表示されている文字を設定します。変数参照可能です

・要素に対してフォーカスを移動する
本アクションが実行されるときに、指定した要素にフォーカスを当てる場合、チェックを入れます

・アラートが出ていればエラーとする
本アクションを実行するときにブラウザからアラートメッセージが表示されていた場合にエラーとするときは、チェックを入れます

・要素が見つかるまでのタイムアウト(秒)
設定した秒数までロボットが要素を探します

・アクション有効
このアクションを無効にする場合は、チェックを外します

[エラー発生時の対応タブ]

・エラー時の処理
エラーが発生したときの設定を行います

・エラー時にログ出力
エラーが発生したときにログに出力するか設定します