KeyNotFoundException: 指定されたキーはディレクトリ内に存在しませんでした。

初めまして。
繰り返し(各行) ForEachRow アクティビティ内でエラーが発生したため、
解決方法をご教示ください。

Excelファイルを読み取り、DataTable型変数"summaryDataTable"に格納、
繰り返し(各行)を使用して1行ごとに処理を行おうとしています。
しかし、繰り返し(各行)内の"シーケンス"に差し掛かった瞬間にエラーになってしまいます。
デバッグで確認しましたが、“summaryDataTable”, DataRow型変数"row"ともに値は入っています。

Studioのバージョンは2020.10.2です。

〇試したこと
・シーケンスの中身を抜いた場合:シーケンスで同じエラーが発生
・シーケンス自体を抜いた場合:エラーが発生せず、繰り返し(空処理)が始まる

〇エラー内容
RemoteException wrapping System.Collections.Generic.KeyNotFoundException: 指定されたキーはディレクトリ内に存在しませんでした。
場所 System.Collections.Generic.Dictionary2.get_Item(TKey key) 場所 lambda_method(Closure , ActivityContext ) 場所 Microsoft.VisualBasic.Activities.VisualBasicValue1.Execute(CodeActivityContext context)
場所 System.Activities.CodeActivity1.InternalExecuteInResolutionContext(CodeActivityContext context) 場所 System.Activities.Runtime.ActivityExecutor.ExecuteInResolutionContext[T](ActivityInstance parentInstance, Activity1 expressionActivity)
場所 System.Activities.Variable`1.PopulateDefault(ActivityExecutor executor,
ActivityInstance parentInstance,
Location location)
場所 System.Activities.ActivityInstance.ResolveVariable(Variable variable,
ActivityExecutor executor)
場所 System.Activities.ActivityInstance.ResolveVariables(ActivityExecutor executor)
場所 System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor,
BookmarkManager bookmarkManager,
Location resultLocation)

こんにちは

これだけではよくわかりませんが、例えばそのシーケンスをスコープとした、何らかの変数が
定義されていて、それが悪さをしていませんでしょうか?

1 Like

早速のお返事、ありがとうございます。

例えばそのシーケンスをスコープとした、何らかの変数が
定義されていて、それが悪さをしていませんでしょうか?

シーケンスで宣言している変数を抜いて確認してみたところ動きました。
また、一度当該変数を削除し、宣言しなおしたところ問題なく動きました。

ありがとうございました。

1 Like