Home > コンセプトペーパ > Magic xpiのエラー処理 > 追加シナリオ > .NET Utilityのエラー

.NET Utilityのエラー

以下の手順で .NET Utilityのエラーコードを Magic xpiに追加することができます。

  1. ソリューションエクスプローラの[リポジトリ]セクションから、エラーを選択してください。[エラーリポジトリ]が開きます。

  2. リポジトリの上部の[コンポーネント]ドロップダウンリストから、ユーザエラーを選択してください。

  3. [追加]をクリックします。

.NETクラスのInvokeメソッドのIBFlowContext オブジェクトのErrorCode およびErrorMessage プロパティに値を設定することでエラーをスローすることができます。ErrorCode プロパティの値は Magic xpiの[エラーリポジトリ]に予め.NET Utilityのエラーとして登録されている値を設定しなければなりません。このリポジトリ内で、[コンポーネント]ドロップダウンリストから.NETオプションを選択することにより、.NET Utilityのエラーをフィルタリングすることができます。

[エラーポリシー]リポジトリで、.NETステップがスローすることができるエラーの動作を定義することができます。

コンテキスト変数である C.sys.ErrorCodeC.sys.ErrorDescription は以下の手順で更新されます。

  1. ErrorCodeErrorMessage の両方を .NET側で更新すると、 Magic xpiは上記2つのコンテキスト変数を .NET側で更新された値で更新します。

  2. .NET側で ErrorCode を更新し、ErrorMessageを更新しなかった場合、 Magic xpiは C.sys.ErrorCode 変数を.NET側のErrorCode で更新し、[エラーリポジトリ]にその ErrorCodeが定義されている場合、C.sys.ErrorDescription 変数は[エラーリポジトリ]に定義されている値で更新されます。

  3. 例外がスローされた場合、 Magic xpiは C.sys.ErrorCode 変数に 777 を設定し、C.sys.ErrorDescription 変数には.NET側でスローされた例外が設定されます。

  4. ErrorCode が[エラーリポジトリ]のユーザエラーリストに定義されていない場合、Error Code does not exist for the selected component (選択したコンポーネントにはエラーコードが存在しない)というエラーが表示されます。