DataTable変数をFor Each Rowアクティビティで回しているとき、rowがNothing Or Nullであればスキップしたい。

こんにちは。UiPath Studio EnterPrise版23.4.2ユーザの初心者です。

1.やりたいこと

DataTable変数dt_InputをFor Each Rowアクティビティで回しているとき、rowがNothing Or Nullであればスキップしたい。

2.悩んでいること

過去にこのサイトで教わったことを参考に、サンプルWFを作成してみましたが、添付のエラーが出ます。
隠れて見えない条件文は、String.IsNullOrEmpty(Row.ItemArray.All(Function(o) o is Nothing OrElse o.ToString=“”))
となります。

int_indexはFor Each Rowアクティビティのインデックスです。

有識者の方、修正方法をご指南ください。

こんにちは

以下の部分だけで良いように思えます。

Row.ItemArray.All(Function(o) o is Nothing OrElse o.ToString="")

Hi @gorby

You have used .toString converter at this If condition. If you used encapsulate with the Close braces.

The condition has to be in boolean.

If possible provide the condition we will make it correct and revert back to you.

Hope it helps!!

いつもありがとうございます。Else Ifアクティビティの条件文はBoolean型で表現しなければならないことは分かっているのですが、いつもつまずきます。構文をBoolean型で表現するため、私のような初心者にも分かりやすい参考URLは無いでしょうか?

このケースは難しいですね。
基本的なアプローチはエラーの内容から、原因を類推することになります。

String.IsNullOrEmpty メソッドはBooleanを返しますので、条件欄で使うことそれ自体はあながち間違いではないのですが、内部の引数はString型しか扱えないこと(今回はこの部分でエラーになっています)
またAllメソッドの中ですでに空文字チェックをしていること等から、これが不要なものとある程度は類推できます。

こと条件式で言えば、Booleanで返す基本的なメソッドを覚えておくことが基本になると思います。
例えば

比較演算子 = や < など

Stringクラスのメソッド

Contains StartsWith EndsWith Equals
String.IsNullOrEmpty String.IsNullOrWhitespace など

等をある程度覚えておく必要があると思います。(あるいは、これらのページを調べることができる)

あいにくBooleanを返すメソッド一覧のページは見たことがないので、やはりある程度場数を
踏んでいただき、主要なメソッドの使い方やわからない時の調べ方等を身に着けていただくのが王道ではないかと思います。

いつも感じていますが、さすがUiPath、難解ですね。

この辺りの話はUiPath固有のものではなく、VB.net (あるいはC#)の話なので、そのような視点でインターネットを調べれば、情報はかなりありますので、ご参考にいただければと思います。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.