こんにちは! BPTCのたかはしです。
今回は、RPAでBoxやShare Pointなどのファイル共有サービスを Box DriveやOneDriveを用いてエクスプローラーと同期して使用する際に運用面で気を付けることについて、お話をしたいと思います。
RPAにおいて、ファイル共有サービスは業務担当者との入出力ファイルをやり取りする際にとても便利な機能ですが、そのまま使用すると思わぬところで躓くことがあります。
そこで、私が実際にBox DriveやOneDriveを使用してRPAを運用した際に躓いたこととその解決策について共有します!
BoxやShare Point 上に業務担当者がファイルを格納した際、ファイルがリアルタイムでロボットが使用するPCに同期されるというのが理想ですが、様々な要因によりファイルの同期には遅延が発生します。
すると、業務担当者が最新のファイルを格納していても、ロボットは古いファイルを参照し、古いファイルの内容で処理を実施し、結果、誤ったデータがシステムに登録されてしまう……といったことが起こりえます。
解決策のひとつとして、PCの再ログインが挙げられます。
Box DriveやOneDriveはログイン時に再同期処理が走るという特徴があります。これを利用して、ロボットが稼働する数分前にPCへのログイン処理を実施することで、ファイルの同期遅延による問題発生の可能性が低くなります。
もちろん、ネットワーク問題による同期遅延などに対しては完璧な解決とは言えませんが、かなり効果のある解決策です。
もし同期の問題に悩んでいる場合は、ぜひ一度お試しください!
また、その際は使用するファイルの重さによってログイン後~処理までの時間を調整したり、フォルダ構成を工夫して一度に同期するファイル数を制限することで同期にかかる時間を削減したりすることも効果的です。
さらに、ロボットが処理をしたファイルをBoxやShare Point上へ格納する際にも同様の解決策が有用です。
ロボット処理完了後、端末から一度ログアウトし、もう一度ログインをする……という処理を挟むことで、ロボットが処理したはずのファイルがBoxやShare Point上に存在しない……なんてことも、少なくなるはずです。
競合とは、誰かが開いて更新中のファイルを、他の誰かが更新してしまう際に起こります。同じファイルを同じタイミングで違う人が更新してしまって、どの更新を反映するべきかわからなくなってしまっている状態ですね。
「あ」という内容が記載されたファイルをAさんが開き、「あい」という内容に変更しようとします。Aさん更新中にBさんが同じファイルを「あか」という内容に更新して、ファイル共有サービス上に格納します。Aさんが内容を変更したファイルは「あい」を格納しようとした際に、現在ファイル共有サービス上に存在するファイルは「あ」ではなく、「あか」、となっています。
この時、ファイル共有サービスは、更新後の状態が「あい」が正しいのか「あか」が正しいのかは分かりません。そこで、Aさんに対して編集中にファイルが更新されたことを伝え、ファイルの同期をキャンセルします。これが競合です。
上記の問題は、同期遅延によってロボットが古いファイルを更新してしまう場合にも起こりますが、ロボット処理中に業務担当者がファイルを更新してしまう場合にも起こりえます。
同期遅延による競合については、「1. ファイルの同期遅延」の解決策で回避が可能です。
しかし、ロボット処理中の業務担当者による競合については、「あらかじめロボットが動作する時間を明確にしておき、その間のファイルの閲覧・編集を禁止する」といった運用面でのカバーが必要となります。
ロボットの動作時間をより明確にするために、処理開始時、処理終了時に業務担当者に対してメールを送るといった運用も効果的かもしれませんね。
また、仮に競合が起こってしまった際には、双方のファイルを保持しておいて業務担当者に正しい状態に戻してもらう必要があります。
いざというときは担当者に手動での処理をしてもらうなど、リカバリー可能な運用方法を用意しておくことも、RPAの運用上はとっても重要な要素だと思います。
さて、今回はRPAでファイル共有サービスを利用する際に躓いたこととその解決策をお伝えしてみましたが、いかがだったでしょうか?
同期遅延や競合に悩まされていた方の助けに少しでもなれていたら幸いです!