RPAコラムRPA-COLUMN
【完全版】RPAによる公文書取得の自動化~オフィスステーション~
※当コラムは
RPAによる公文書取得の自動化①~オフィスステーション~
RPAによる公文書取得の自動化②~オフィスステーション~
RPAによる公文書取得の自動化③~オフィスステーション~
RPAによる公文書取得の自動化④~オフィスステーション~
RPAによる公文書取得の自動化⑤~オフィスステーション~
を全てまとめ、ひとつで読める内容となっております。
今回はオフィスステーションを使用し、公文書をダウンロードして会社ごとのフォルダに振り分けるロボットについてご紹介させて頂きます。
こちらのロボットで行う手順は
① オフィスステーションにログイン
② 公文書でダウンロードするものがあればダウンロード
③ 会社ごとのフォルダに振り分け
④ コメントがあれば同様にダウンロードし会社ごとのフォルダに振り分け
⑤ ②~④を繰り返す
上記のようになります。
人間が手作業で行っている様々な判断を、どのようにしてRPAで認識させるかが、ロボット作成の際に重要なポイントとなります。
まずは「①オフィスステーションのログイン」について解説させて頂きます。
ログインする際に
上記のような乱数を用いた認証画面が存在します。
アカウントごとに使用している乱数表から、そのときに表示されている乱数に該当する数字を抽出する必要があります。
この乱数の抽出はExcelで乱数表を作成し、関数で入力する数字を抽出します。
※画像内の数値は、例としてランダムに入力しております。
表示された乱数をロボットにより取得し、用意したExcelのA列に記入します。
G列より右の表から、関数が該当する数字を表示する仕組みとなっております。
あとはこの数字を再びロボットが取得し、オフィスステーションの認証画面に記入すればログイン可能となります。
一見「ロボットでは判断できない」と感じる上記のような動作も、Excelの関数を組み合わせることで判断が可能になるケースは非常に多いです。
この後の会社ごとのフォルダに振り分け作業を行う際にも、Excelの関数を組み合わせております。
「②公文書でダウンロードするものがあればダウンロード」の箇所を解説させて頂きます。
オフィスステーションにログイン後、帳票一覧を開き、ダウンロードする公文書があればダウンロードします。
公文書 未取得/全件の項目が1/1となっていればダウンロードしたいので、
ロボットは1/1と表示されている画像を認識させてクリックさせたいのですが、
ダウンロード済みのものは0/1となっていたり、公文書の隣のコメントの部分が1/1になっていることもあります。
まずは1/1がコメントによるものか、公文書によるものかを判断させるため、クリックする画像を以下のように指定しました。
右側の桃色の部分を含めて撮影することで、コメントとの区別がつくようになり、公文書 未取得/全件の項目をクリックすることが可能となります。
しかしこのままでは新たな問題が発生します。
上記の画像で指定をすると、公文書がダウンロード済みで0/1の場合にもクリックしてしまいます。
判定する範囲が広くなったことにより、ロボットの画像認識としては未取得の数字が0か1の違いでは誤差の範囲として認識されてしまう為です。
そこでRPA(RPAソリューションズ:EzRobotを使用)の画像認識の精度(%)の割合を、標準値よりも高めに設定します。
上記はEzRobotの「画像認識でクリック」を指定した際に表示される画面の一部です。
デフォルトの値は80%となっております。
こちらの機能は様々なケースに対応することが可能であり、例えば
「表示される画面は少し変わる事があるけど、大体ここの画面のこの位置をクリックしたい」
という曖昧なケースにも対応するために、「精度」という機能が存在します。
こちらを高く設定することによって、より精度の高い画像認識が可能となり、正確に公文書の1/1をクリックすることも可能になります。
ロボットで画像を認識する際はテスト機能(LINE実行等)を活用し、
・画面に表示されているときに正しく認識できている状態か
・画面に表示されていない場合に正しく認識できていない状態か
以上の2点を確認するように意識することを推奨いたします。
今回はこちらの画像認識の機能を使うことにより、ダウンロードするかしないかの判定を行うことができました。
続きまして「③会社ごとのフォルダに振り分け」について解説させて頂きます。
公文書をダウンロードした際に、公文書はダウンロード配下に保存されます。
こちらを会社名ごとのフォルダに振り分けるのですが、実際に手動で行う場合は
・対象ファイルの切り取り
・貼り付けたい先のフォルダを開く
・切り取ったファイルを貼り付ける
となります。
こちらをロボットで指定する場合、ペースト対象のフォルダを検索して、見つかったフォルダを開いてペーストとなります。
ロボットで上記の通り、キー操作や文字入力などで作成すると動作が7~10工程ほどで、その動きに合わせた秒数待機等を加えると15工程ほどになります。
工程を更に短くしましょう。
ロボットを作成する際には
・後からシナリオを見る際に、作業がわかりやすくなる
・ロボットの稼働時間の短縮
などの理由から、作業工程は少なくなる形で組むことを推奨いたします。
例えばEzRobotの機能で「ファイル移動/フォルダ移動」というものがございます。
こちらを使うと作業工程は簡潔に済みそうです。
しかしながら「ファイル移動/フォルダ移動」は指定したファイル(フォルダ)を、フォルダパスで指定したフォルダに移動する機能です。
会社ごとに会社名でフォルダを作成しているためフォルダパスは異なります。
つまりこちらは、Excel内の関数を使用してフォルダパスを生成する仕組みにすれば解決いたします。
上記のようなExcelシートを作成いたしました。
公文書をダウンロードする際に、会社名を「変数」により既に取得しています。
「変数に格納した対象の会社名」を上記Excel内に記入することにより、関数から会社ごとのフォルダのフォルダパスを作成することが可能となります。
結果的に「フォルダ移動の動き」を大幅な工程削減で実現できました。
会社毎のフォルダパスを取得する際に
手続き名、従業員名で「名前を変更して保存」する際のファイル名や、その他のロボット実行に必要な情報も取得しています。
RPAの動きに合わせたExcelシートを事前に作成しておくことで、ロボットの作業を単純化することが可能です。
RPAによる「繰り返し動作」を行う際「繰り返す度に、違う情報を参照しなければならない(今回のケースでは会社名など)」といった箇所では「変数」を使用しますが、その際に「Excel関数」も使用することで自由自在に情報を扱うことが可能となります。
RPAソフトが多機能になればなるほど、RPA内の機能だけで完結しようとしてしまい「あれもこれもできない」といった考えに陥りがちな印象がございますが、RPA内の機能のみで考えず「他のツールも積極的に使用すること」が、業務自動化の近道でございます。
続きまして「④コメントがあれば同様にダウンロードし会社ごとのフォルダに振り分け」について解説させて頂きます。
コメントと公文書の違いは「公文書は必ず1件でコメントは複数件数届いている可能性がある」ということです。
ということはここまででご紹介した、公文書をダウンロードする際に1/1で画像を撮ることはできません。
コメントは多くても3通ということですが、
1/1, 1/2, 2/2, 1/3, 2/3, 3/3と6パターンの画像認識が必要になるのでしょうか?
必要ございません。
また、忘れてはいけないのが、公文書とコメントの判断ができるように画像を撮影するということです。
こちらに注意するとなると、画像は「納付状況の欄」も含めて撮影することになるのですが、ここで考えるべきは「コメントが0件であればクリックしない」ということです。
ということは、コメントの全件数(分母)は特に気にする必要がありません。
今回は以下のように画像認識を指定しました。
上記の形であれば、1件の場合、2件の場合、3件の場合と3パターンで済みます。
当然0件の場合にクリックしないようにテストをするのですが、1件の場合にテストしていた際に精度(%)を高く設定していない場合に2件、3件の場合でも画像認識することがわかりました。
画像認識は「指定する範囲や対象、精度」によって多様なパターンが存在する為に非常に便利ではありますが、捉え方次第ではある意味「曖昧なもの」としても考えられます。
使用する際にはテストをしっかりと毎回行いましょう。
続きまして「精度(%)」を調整することにより「0件は認識せず、1,2,3件は全て認識することが可能ではないか」という考えに至りました。
精度(%)を細かく調整しテストを繰り返すと、ある精度(%)の値で実現可能であることがわかりました。
コメントのダウンロード作業も1パターンのみで済むという結果になりました。
「組む時間(テストする時間)」のことも考えると、3パターンで組むか、1パターンで組むか、今回のケースではどちらでも問題ありません。
正解の道筋はひとつではないので「より工程が短く簡潔に済む動き」を追及すると、ロボット制作が楽しくなります。
是非、楽しみながらRPAを組んで頂けましたら幸いです。
続いて「⑤:②~④を繰り返す」について解説させて頂きます。
帳票一覧を表示した後どのように確認をしていくのか。という事についてですが
RPA(EzRobot)の機能で
・条件分岐(画像による分岐)
・繰り返し(画像が現れるまで)
・繰り返し(画像が消えるまで)
の3つを組み合わせて作成しました。
まずは帳票一覧のページを開きます。
そこで
・条件分岐(画像による分岐)
を使用します。
公文書やコメントの画像クリックについて、今までのコラムでご紹介しましたが
その画像により判別をし、対象の画像が無ければダウンロード作業は行わない。という仕組みにします。
ロボットの大枠は下記のようになります。
・条件分岐(画像がある場合 開始)
・ダウンロード作業
・条件分岐(画像がある場合 終了)
・条件分岐(画像が無い場合 開始)
・指定無し(作業無し)
・条件分岐(画像が無い場合 終了)
こちらの動作により「1回だけ」は作業をすることが可能となりました。
しかしダウンロードする公文書・コメントは画面内に1つとは限らないので、このままでは不十分です。
公文書の場合、ダウンロードした後は1/1となっていた数字が0/1となるため、クリック対象の画像が無くなります。
クリック対象の画像がある場合には、引き続きダウンロード作業が必要になるため
対象の画像が消えるまで繰り返す必要があるということになります。
つまりロボットの大枠は下記のようになります。
・条件分岐(画像がある場合 開始)
・繰り返し(画像が消えるまで 開始)
・ダウンロード作業
・繰り返し(画像が消えるまで 終了)
・条件分岐(画像がある場合 終了)
・条件分岐(画像が無い場合 開始)
・指定無し(作業無し)
・条件分岐(画像が無い場合 終了)
こちらの動作により、開いたページ内の対象を全てダウンロードできる仕組みが可能となりました。
この動作の後、ページ移動をして「次のページを確認」という作業に入るのですが、
新しいページから確認していくと最後のページまで確認している最中に、新しく公文書が届く可能性もありそうです。
少し細かいようですが、古いページから前に戻っていくような仕組みにすると良さそうです。
よって作業は以下のようになります。
・一番最後のページへ移動
・条件分岐(画像がある場合 開始)
・繰り返し(画像が消えるまで 開始)
・ダウンロード作業
・繰り返し(画像が消えるまで 終了)
・条件分岐(画像がある場合 終了)
・条件分岐(画像が無い場合 開始)
・指定無し(作業無し)
・条件分岐(画像が無い場合 終了)
・1つ前のページへ移動
「・指定無し(作業無し)」の箇所は、見やすいようにあえてこのように記載しましたが
実際にロボットを組む際には、何も入力する必要はございません。
さて、ここで上記の動作を、何ページ繰り返せば良いでしょうか。
勘の鋭い方は、更に「繰り返し作業」の指定が必要になるとお気づきかと思います。
状況によって「何ページあるか」は違うので、「1ページ目をダウンロードし終えたときに終了」するような指示を出しましょう。
1ページ目に到達すると
ページ数をクリックする箇所がこのようになります。
つまり「上記の画像が現れれば1ページ目に到達した=終了」となるので
・一番最後のページへ移動
・繰り返しA(画像が現れるまで 開始)
・条件分岐B(画像がある場合 開始)
・繰り返しC(画像が消えるまで 開始)
・ダウンロード作業
・繰り返しC(画像が消えるまで 終了)
・条件分岐B(画像がある場合 終了)
・条件分岐B(画像が無い場合 開始)
・指定無し(作業無し)
・条件分岐B(画像が無い場合 終了)
・1つ前のページへ移動
・繰り返しA(画像が現れるまで 終了)
となります。
しかし、上記ではまだ不十分でございます。
この流れですと「ダウンロード作業後に1つページを戻る」という仕組みで組まれています。
1ページ目に戻ってきた際に「画像が現れた」と判断され繰り返しが停止してしまうので、1ページ目がダウンロードされません。
ということで、繰り返しA内にある条件分岐内の動作パターンを全て、繰り返しAが終わった後にさらに追加することで、1ページ目のダウンロードも実行することが可能となりました。
ここまでの説明で、少し複雑に感じさせてしまったかもしれませんが
いつも人が手作業で行っている業務を「どのようにしてルール化するか」が、業務自動化をイメージする際のポイントとなります。
ひとつの業務をロボット化するだけでも、実際に組む人間の発想によっていろいろなパターンの組み方が存在するので、今回ご説明させて頂いた動きとは違うロボットの動作を思い描けている方もいらっしゃるかもしれません。
なかなかイメージが沸かない場合には、まずは単純な作業からロボット作成にチャレンジして頂けましたら幸いです。
EzRobotは視覚的にも非常にわかりやすい作りになっておりますので、上記のような動作も直感的に組んでいけるかと存じます。
その中で「変数」「条件分岐」「繰り返し」等の機能を使用していくと、徐々にスマートな組み方が頭の中でも描けるようになるのではないでしょうか。
RPAによるロボットを組む際には、上記のような工程や考え方が必要であり「ちょっと難しい」という印象を持つ方も少なからずいらっしゃるかと存じます。
RPAソリューションズのEzRobotでは、弊社にて作成済のシナリオを無料でダウンロードして微調整のみですぐに使うことが可能です。
是非、お気軽にお問合せください。