もう止まらせない!UiPathワークフローの作り方

UiPath開発者なら誰もがハマるエラーがあります。「あ、そのエラーあるある、私もハマった」というやつです。そんな、あるあるエラーを取り上げ一挙解決するセミナーです。

Q&A

Q セミナーで紹介しているフレームワークはUiPath社提供のReFrameworkでしょうか? CAC独自で作成したものでしょうか? ReFrameworkの使い勝手はどうでしょうか?
A CAC独自で作成したものです。ReFrameworkをもとにしていますが、日本語で分かりやすい名称にしたり、定型作業を簡単に作れるようアレンジが加えられています。
UiPath ReFrameworkは開発しやすいよう環境が整っている(アクティビティや外付け部品が多く用意されている)、規模大小に関わらず使える(大きくなれば管理サーバOrchestratorで管理ができる)といった点が優れていると思います。
Q メッセージをログアクティビティと「1行を書き込み」の違いについて教えてください。
A デフォルトで固定されているお気に入りに「1行を書き込み」アクティビティというものがあります。これもログ出力をしてくれるとても便利なアクティビティです。任意の文章がログ出力されるのは同じですが、メッセージをログアクティビティと違って、ログレベルを指定できません。バージョンで差があるのですが、20.10以前はInformationレベルで書き出しが行われていて、20.10以降はTraceレベルで書き込みがされるようです。
どちらを選ぶかは好みになりますが、メッセージをログアクティビティであれば、レベルをこちらでコントロールできるので使い勝手はいいと思います。
Q 並列アクティビティの「並列」について詳しく教えてください。
A 並列というワードを聞くと、同時に実行をしてくれると思ってしまいますが、実際は向かって左から順番に処理されます。順番に実行だとシーケンスアクティビティと同じ?と思われるかもしれませんが、シーケンスアクティビティでは一度にスケジュールできるアクティビティは一つだけです。一方、並列アクティビティは一度にすべてのアクティビティをスケジュールできます。それを左から順番に始め、完了状態、もしくはアイドル状態になると次をスケジュールするというふうな逐次実行を行います。
Q ブラウザの自動化に関して。ブラウザスコープの処理の中でエラー終了した場合、ブラウザが閉じずに残ってしまうため、エラー処理の中でブラウザを閉じるように対応しています。しかし閉じ忘れがあると次のブラウザ操作の自動化を含むロボットが必ず失敗してしまいます。これを防ぐ方法があれば教えてください。
A 2つの実装方法が有効だと思います。
  1. ライキャッチアクティビティの「Finally」に配置する。正常系でも異常系でも必ず通るところなので、スルーしてしまうのを防げます。
  2. 「ブラウザを閉じる」アクティビティではなく、「プロセスキル」(強制終了)を組み込む。あまり良い閉じ方ではありませんがエラーを誘発することはなくなると思います。特定のタブやウィンドウを閉じることはできないので、ブラウザがすべて強制終了となることにご注意下さい。
今のロジックを変えたくなければ、ブラウザを操作しているワークフローを対象に、ブラウザを開く前に「ブラウザを閉じる」を組み込む方法もあります。最後に閉じるのではなく、ブラウザを操作する前に閉じるという方法です。
Q タイムアウト時間は変更できますか? リトライ機能はありますか?
A タイムアウトが設定されているアクティビティの場合は、プロパティ「タイムアウト(ミリ秒)」に任意の時間を設定できます。デフォルト値は30秒です。タイムアウトが設定されていない場合、(セミナーの内容の通り「並列」アクティビティを使用する場合は、)待機アクティビティの待機時間を任意で設定できます。
リトライ機能はアクティビティ個々には備わっていません。上から順番に実行が進んでいくのみです。リトライをさせたい場合は「リトライスコープ」アクティビティを使うことで実現できます。回数と間隔も設定ができます。このリトライ機能については「初心者でもできるRPA - UiPath開発の操作と注意点」セミナーで詳しく解説を行っています。
Q 開発環境では動作するが、本番環境では失敗するということが多いです。考えられる原因を教えてください。
A 開発と本番の環境差異の違いを疑ってみて下さい。
開発と本番でPCのスペックが同じかどうか、推奨環境になっているかを確認して、開発と本番で違いがないようあわせておくことが必要です。担当しているプロジェクトでも、お客様にRPA用のPCを準備してもらう際は、同じスペック、セットアップになるようお願いしています。
アプリケーションレベルでは、データ量の違いも原因になります。テストデータしか入っていない開発環境で上手く動いても、本番データが入っている本番環境だと動作が重くなってしまったり、みんなが共有して使うので負荷が高かったりして、それがエラーや上手く動作しない原因になる可能性があります。いきなり本番というより、本番環境でもテスト実行は必ず必要だと思います。
Q Excelアプリケーションスコープで、並列で待機の方に入った後は、フラグなどを使って後続の分岐処理を行うのがいいでしょうか?
A はい、ご理解いただいている通りです。例えば、Excelファイルが開けないのであれば、後続処理ができないので、エラーにして実行を終了させる、もしくは該当のデータ分はスキップして次のデータの処理へ進む、などがあげられます。
Q セレクターの機能が弱くなったように思います。誤動作でデータを取り出せないということはないでしょうか。
A セレクター機能は、作られている言語などによって相性があったり、アプリケーションによって安定しないことはよくあるかと思います。 UiPath公式でタグと属性の解説がありますので、ご参考いただきチューニングしていくことが必要になってきます。 https://docs.uipath.com/studio/lang-ja/docs/about-selectors また、開発時(レコーディング機能を使用中)に事象が発生している場合には、以下ページ「アクティブな UI フレームワーク」の内容を試していただくと改善することもございます。 https://docs.uipath.com/studio/lang-ja/docs/automatic-recording 誤作動と思われる動きについては、パッケージのバージョンやアクティビティによっては、レポートがあがっているものもありますので、サポートへの問い合わせでご確認いただけます。また、UiPath公式のプロダクトサイクルでもバグ修正等の概要は記載されています。 https://www.uipath.com/ja/legal/trust-and-security/legal-support/product-lifecycle

RPAの自社開発を目指すお客様に

RPAトレーニングサービス

ワークフロー開発者・保守担当者向けのオンライントレーニング。お客様のパソコンで実際に操作しながら実践的に学べるハンズオン型です。お客様オンサイトで行う企業トレーニングについてもご相談ください。

演習ではなく実践!自社の業務をワークフロー化しながらRPAを学べるユニークなトレーニングプログラムです。

RPAトレーニングサービス

RPA開発に役立つその他の動画

無料
CAC RPAセミナー オンデマンド

過去のRPAに関するセミナーを公開しています。

CAC RPAサービス

  • RPAワンストップサービス

    CACはRPAの導入、開発・保守、トレーニング、他システムとのインテグレーションによる一歩先行くRPA活用をワンストップでご提供します。
    お客様オンサイトで進める従来型サービス、オンライン会議やリモート接続によるリモート型サービス、どちらのサービスでも高品質で安定したRPAの実現をお約束します。

  • RPA+Oneソリューション

    RPA導入後、社内にどう定着させればいいか、対象業務をどう拡大していけばいいか検討中のお客様向けのソリューションです。
    プロセスマイニング、AI-OCR、ローコーディングなシステム開発を組み合わせることで、RPAだけではできなかったEnd-to-Endな業務改善をご提案します。

取り扱いRPA製品

  • スケーラビリティがポイントなら

    お客様にRPA推進組織があり、その組織が全社展開をリードしていくような場合、管理機能とスケーラビリティに特徴のあるUiPathを推奨しています。

  • シナリオの扱いやすいさがポイントなら

    お客様がシナリオを内製し、それぞれの部門が自律的にRPAを推進していくような場合、シナリオの扱いやすさに特徴のあるWinActorを推奨しています。

RPA講演資料無料ダウンロード

美しいコードをみると感動する、美しいワークフローの作り方
美しいコードをみると感動する、美しいワークフローの作り方
ダウンロード ダウンロード
UiPath・WinActor製品比較表
UiPath・WinActor製品比較表
ダウンロード ダウンロード
UiPath  x CAC対談<br/>RPAスケールを実現するために重要な人材育成
UiPath x CAC対談
RPAスケールを実現するために重要な人材育成
ダウンロード ダウンロード

コラム「RPAの気になる話」