Xiao1
April 27, 2021, 1:17pm
1
Uipath開発中級コーストライキャッチの課題の
ワークフローのエラーが解消されず困っています。
エラー内容は画面の通りで、ワークフローは添付しました。
トライキャッチ以前に行取得のあたりで問題があるようなのですが。。。
【課題】
[トライキャッチ (Try Catch)] を使用し、Excel ファイルの列 A または列 B に空白が入っ
ていた場合に、Catch ブロックで NullReferenceException として、例外があったことを実
行結果として列 C のセルに書き込み、処理を続行するようなワークフローを作成
Main.xaml (13.6 KB)
【エラーコード】
ソース: 行項目を取得
メッセージ: StringConverter を System.Double から変換できません。
例外の型: System.NotSupportedException
Hiba_B
(Hiba Beldi)
April 28, 2021, 12:00pm
2
Hi @Xiao1 !
It’s because you are trying to sum up two generic values (ValueA and Value B).
If you change the type of ValueA and ValueB to Int32, the problem is solved:
Xiao1
April 29, 2021, 1:25am
3
TrycatchMain.xaml (15.0 KB) コメントありがとうございます。変数を変更しましたが、まだエラーが出ていますThank you for your comment. I changed the variable, but I still get the error
Yoichi
(Yoichi)
April 29, 2021, 4:27am
4
こんにちは
ValueAやValueBの型推定が、従前のデータに引きずられているように思えます。
一度、一番最初にupいただいたMain.xamlに対して、ValueAおよびValueBの変数スコープをトライーキャッチにして実行してみてもらえませんか?
Xiao1
April 29, 2021, 7:01am
5
Main.xaml (13.7 KB)
コメントありがとうございます。
最初のファイルの変数を変更しても、最初から新しく作成しなおしても
こちらのエラーが表示されてしまいます。
21.4.3+Branch.master.Sha.7d66317b828533c43b8fc299ec1cfdc22a138bc2
ソース: 行項目を取得
メッセージ: Int32Converter を System.Double から変換できません。
例外の型: System.NotSupportedException
RemoteException wrapping System.NotSupportedException: Int32Converter を System.Double から変換できません。
場所 System.ComponentModel.TypeConverter.GetConvertFromException(Object value)
場所 System.ComponentModel.TypeConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
場所 System.ComponentModel.BaseNumberConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
場所 UiPath.Core.Activities.GetRowItem.Execute(CodeActivityContext context)
場所 System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager)
場所 System.Activities.ActivityInstance.Execute(ActivityExecutor executor, BookmarkManager bookmarkManager)
場所 System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)
Yoichi
(Yoichi)
April 29, 2021, 7:16am
6
こんにちは
最初のMain.xamlを変更いただきたかったのでValueA,ValueBはGenericValue型で試してもらえないでしょうか?
Xiao1
April 29, 2021, 7:41am
7
できました!ValueA,ValueBはGenericValue型 スコープ トライ&キャッチでエラーが解消されました。
また、一度成功したら、スコープをメインシーケンスに戻してもエラーでませんでした。
私のワークフローの何が悪かったのでしょうか?
また、
GenericValue型はString型Int32型どちらでも使えると思っていましたが
代入の際に左右の型を違えての使用はNGということでしょうか。
ValueC(GenericValue型)=ValueA(Int32型)+ValueB(Int32型)
Yoichi
(Yoichi)
April 29, 2021, 11:45am
8
こんにちは
直前に収納されたデータによって型推定が影響を受けている可能性を考慮してスコープ変更を
試していただきましたが、同じデータ、同じワークフロー(スコープ範囲)で再現できないと
なると、何かが部分的に壊れていた可能性もあるかもしれません。
GenericValue型はString型Int32型どちらでも使えると思っていましたが
代入の際に左右の型を違えての使用はNGということでしょうか。
ValueC(GenericValue型)=ValueA(Int32型)+ValueB(Int32型)
今回のエラーは「行項目を取得」で発生しているため、その後の加算の代入に関しては
問題ありません。(Int32,String双方代入可能です)
なおGenericValue型変数内の値の元となる型が異なると、演算順序によって
結果が異なることがありますのでご注意ください。詳しくは以下参照ください。
Xiao1
May 1, 2021, 1:39am
9
いつも丁寧に解説いただき感謝しております。
おかしなエラーが出ている場合スコープを変更したりアクティビティを入力しなおしたり
いろいろ試してみようと思います。ありがとうございました。
system
(system)
Closed
May 4, 2021, 1:39am
10
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.