こんにちは〜!チーム株式会社の緒川修(おがわおさむ)です!!
今日はRPAでのシステム開発で苦労したことを書いていきます!
※専門用語多めなので注意です。
今回のお話はいつものUipathではなくPowerautomateをメインにした開発案件に着手したときのことです。
システム開発の際は、先に中身の主な処理を書いたあとに、外側であるループの処理を作ってあとで合体させるような作り方をすることがよくあります。
今回も同じようにPowerautomateで先に主な処理を作ったあとにループを作って、その中に先に作った処理を入れようとしましたが、そこで問題が発生しました。
同じような場合、Uipathはアクティビティやシーケンスを直接ドラッグ&ドロップすることができますがPowerautomateでは同じことは難しかったりします。
(正確には出来ないワケではないですが、ドロップの判定が非常に厳しく1つのアクティビティ移動させるのに数分かかることもあるので、効率が悪いです)
では、どうすれば良いかというと、Powerautomateではクリップボードにアクティビティを保存出来る機能があるので、それを使ってアクションを追加していきます。
ただ、クリップボードに保存されたアクティビティは参照元も引き継ぐため、ループよりあとの処理を参照していた場合、存在しないものを参照しているのでエラーとなってしまいます。
またPowerautomateはエラーがあると保存できないので、暫く保存するのを忘れていて原因を特定出来ずに閉じたりすると今までの作業が無駄になります。
(参照エラーも分かりづらいんですよね)
さらに怖いのが、これは上記の参照エラーとは別なのですが、アクティビティが「コンポーネットから読み込めません」と言われてエラーする時があります。
この場合、後の処理にこのアクティビティを参照していると全てエラーします。
そして、該当のアクティビティも消せないのでエラーが消えず保存後の作業が全部無駄になるの確定という、泣きたくなることもあります・・・。
結局は、別で開発しているフローのクリップボードも共有できるという機能を利用して、空のフローを作って上から順番にループの処理と中身の処理をコピペして行って何とかなりました…。
今回の教訓としてシステム開発は、順番を間違えると本当に苦労するので、これからも気をつけていきたいですね!
今日は以上です。
最後まで読んでいただき、ありがとうございます!
※コメント投稿者のブログIDはブログ作成者のみに通知されます