CSVインプットデータを読み取りシステムへデータ入力を行うRPAを開発中です。
システムにはデフォルト値が設定されていますが、今回のRPAは全体を通してインプットデータの該当セルが””の場合には、システム上のデフォルト値を使用するロジックを組む必要があります。
Ifを使ってstr_Variable(変数) <> “” の条件に当てはまる場合にはType Intoアクティビティに進むという処理を組むことはできますが、入力する値の数は100を超えるため、可読性を上げるためにも他に何か効率の良い方法(アクティビティや設定など)がないかご教授いただきたく起票します。
上記は100以上のIfを並べようとしているということでしょうか?
単にループを使えば良いと思いますが、もう少しこのあたりの詳細を共有いただくと良いかと思います。
はい、100個のIfということです。入力時に都度値(””でないか)の確認を行うには、Ifを使うほか思いつかなかいのですがループを使う方法がありますか?
ループやDictionaryを使ことになると思いますが、もう少し具体的に要件を共有いただいた方が良いかと思います。
申し訳ございません。開発を行うのは今回が初めてであまり慣れておらず。。どのようなことを共有すべきかご教授いただけますか。
(これまでUipathは触ってきたのでUipath Studioについては理解しております。)
例えば、入力となるCSVファイルの共有(データはダミーでも可)
そのCSVをもとにした、期待する挙動、結果の説明
あたりがあると良いと思います。
ありがとうございます。今回ですがクライアントが金融系のためセキュリティが厳しく、カラムを含めたデータを外部へ公開することができませんので、以下をご確認いただけますでしょうか。
・CSVファイル内の項目:約170項目
・上記のCSVファイルをインプットデータとし、値を変数に格納
→全項目のうち使用する値は100項目ほど。
・変数に格納した値をクライアント社内システムへ入力
→一度に処理するCSVファイルは複数あるため、インプットデータ読み込み処理とシステムへの値入力はファイルの数だけループしています。
該当システムは添付画像のような構造(添付画像はモックの一部を切り取ったものです)+実際はデフォルト値としてシステムを立ち上げた際に既に値が入っている項目もある状態です。
CSVファイル上での値が""の場合はデフォルト値の使用を優先するため、各値を入力する前にifで以下のように分岐させています。
if str_Variable(変数) <> “”
Then:値の入力あり
Else:値の入力なし
こんにちは
システム上のデフォルト値というのは、画面上に最初に表示されている値ということですね。
この場合、例えば各入力要素のセレクター文字列の全体または一部をあらかじめListやDictionaryに保存しておき、必要な列をループさせることで、上記の条件分岐はワークフロー内で1か所にすることはできると思います。
あくまでイメージ図ですが、以下の様になると思います。
なるほど、そんな方法があるのですね。
システム上に入力する項目の中には、他の値によって入力する値やセレクターが変わるものもあり一定ではないためご提案いただいた方法ではカバーしきれなさそうです。
そのため今回は入力回数分だけif+Type intoアクティビティを使って対応しようと思います。
ご丁寧にありがとうございました。