UiPathでデバッグ。この行は既に別のテーブルに属していますとは?
UiPathで「この行は既に別のテーブルに属しています。」とエラーが表示されたことはありませんか?考えられるケースはいくつかあります。今回は考えられるケースのうち、代表的な例を挙げたいと思います。
代表的な例 「データ行を追加」でエラー発生
一番代表的な例は「データ行を追加」ではないでしょうか。データ行を追加とは、指定したデータテーブルの中に追加したいDataRow型配列を入力させるアクティビティなのですが、ここに指定したデータテーブルとは異なるDataRowを入れるとエラー「この行は既に別のテーブルに属しています。」が発生します。
例えば以下のような例。
このケースとだと、多分InDtの先頭行だけを追加したいと思われます。列名も列数もOutDtと一緒なのに、なぜエラーになっちゃうのって思いますよね。実は新規追加したい行はデータテーブル「OutDt」とは異なっているんです。
DataTableに属したDataRowを配列として出力する
DataRowって基本的にDataTable.DataRowと親にDataTableが存在しているんですね。
DataTable
├DataColumns
└DataRows
└row
なので、DataTable.Rows(0)のように指定した場合、DataRowは既に親が決まってるんです。親を切り替えることはできません。なのでその親離れをするためにDataTalbe.Rows(0).ItemArrayをすることで、このDataRowを親離れすることができます。
3件のフィードバック
I like the valuable info you provide in your articles.
I will bookmark your blog and check again here regularly.
I am quite sure I’ll learn a lot of new stuff right here!
Good luck for the next!
Also visit my page: vpn special coupon code 2024
Hey very interesting blog!
Also visit my blog :: vpn code 2024
Howdy! This post could not be written any better!
Going through this post reminds me of my previous roommate!
He constantly kept preaching about this. I most certainly will send
this information to him. Fairly certain he’s going to have a very good read.
Thank you for sharing!
Also visit my homepage vpn special coupon