こんにちは!
株式会社電算システム(DSK)のRPAチーム、末っ子です!(・ω・)ノ
前回までの【やってみた】シリーズ第1~3弾では、
路線情報サイトで定期代を検索するシナリオを作成してみた!
ということでご紹介いたしました!
( 第1弾はこちら ↓ )
今回は、この定期代検索ロボットで行う、
Excelファイルのデータ読み込みと書き込みを、『2次元配列操作』で全行数分1度に操作し、
ExcelとIEを行き来しない仕様に改良しました!
大幅な改良をしてみたので、
皆様にも一例としてご報告したいです(訳:ほめられたい)
まず、改良前のシナリオを載せておきます。
Excelファイルの行データ(出発駅/到着駅)1行につき
データ取得、検索、結果転記までを1回ずつ行う処理を1セットとし、
それを全行数分繰り返して、
最終的に全ての検索と検索値の格納をするシナリオになっています。
これでも十分、私が手作業で検索するより早かったのですが↓
参照:【やってみた・第3弾】
今回は、画面上で何度もExcelとIEを往復する手間を省くため、
複数データを同時に格納できる”配列”を使い、
Excel操作とIEの操作をまとめて行うことによって、
動作の安定化と時間短縮ができないか、調査してみました!
WinActorの配列には、「1次元配列」と「2次元配列」の2種類があります。
今回は、Excelファイル上で行も列も指定して値の取得と設定をしたかったので、
2次元配列を利用しました。
1次元配列を利用する場合は、行列のそれぞれの指定はできませんので、
データの形によって適切に使い分けができると便利ですね!
さて、改良後のシナリオがこちら!
検索実施部分は一切変更していないので、
IEウィンドウは1行分ずつ絶え間なく検索のみをを繰り返すように動きますが、
Excel操作において、最初と最後に行数分データを一括取得、一括設定するよう変更しました。
一度配列操作を挟むので、シナリオ自体はノード数が多くなっています。
では、所要時間はどうでしょうか!
おっと、22秒長くなってしまいましたね…!
今回の場合は、配列への値の読み込み・取り出しの分で、
時間が長くかかってしまったようです。
では、配列をうまく使うべきシチュエーションはいつでしょうか?
それは、
時間がかかっても良いから、ロボットの挙動を安定させたいとき
が多いでしょう。
今回は10個のデータで処理を実行しましたが、
これが実業務において100個レベルまで多くなったりすると、
当初のようにいちいち操作対象のウィンドウを移動することは、
安定性に欠けるのであまりよくありません。
(ちょっとしたタイミングのズレで、予期せぬエラーを起こしたりしやすくなります)
配列操作は、使わなくても処理が出来ることが多いですが、
一度にたくさんのデータを保持できるので、覚えておくととても便利だそうです。
(超優秀な大先輩談)
ただ場合によっては、一度に大量のデータを記憶することにより、
実行端末の処理が重くなる可能性もあります。
このように、同じ内容を実装したくても、
利用する環境によってベストな方法は異なりますので、
試行錯誤しながらより優秀なRPAロボットを開発できるよう、
様々な知識を知っていることは大切ですね!
さて、ここまでシリーズとして、
路線情報を検索するロボットを特集していました。
ここでご紹介した方法は、多くある方法のうちの一つにすぎません。
今後もまた引き続き、学習に応じて様々なやり方を検討してみます!
次回は、別のロボットをつくってみたお話をします!
私たち株式会社電算システム(DSK)は、
RPAのプロとしてお客様皆様の働き方改革を応援しております!
是非、お気軽にご相談ください!
0コメント