Home > リファレンスガイド > ユーティリティ > データマッパーユーティリティ > データマッパーユーティリティを使用 > データマッパー設定の詳細

データマッパー構成の詳細

データマッパーユーティリティをフローに追加するには:

  1. データマッパーユーティリティを[ツールボックス]ペインからフローにドラッグしてください。

  2. [データマッパプロパティ]ペインで、以下のテーブルで説明されるような情報を入力してください。

パラメータ

説明

一般

ステップ名

フロー内のこのサービスについて記述した名前を入力します。

説明

フロー内のサービスの説明を入力します(オプション)。

ステップID

フロー内のステップのIDを表示する読み込み専用フィールド。

コンポーネントID

自動的に生成された内部の識別子番号。

コンポーネントタイプ

ステップタイプの名前を表示する読み込み専用フィールド。

条件

フローの実行内容を指定する条件を入力します。をクリックして式エディタを開くか、コンポーネント上で右クリックし、コンテキストメニューから[条件]を選択することができます。

処理モード

ステップを  リニア、パラレルまたはスタンドアロンのどれで実行するかを選択します。

.NET Utilityがフローの最初のステップでなければ有効です。

完了を待つ

ステップが処理完了待ちモードで実行されるかどうかを選択します。YesまたはNoを選択します。

.NET Utilityがリニアのステップで、フローの最初のステップでない場合のみ有効です。

アドバンスト

セーブポイント

ステップがフロー内のセーブポイントである場合は、Yesを選択します。

これはフローのリカバリポリシーセーブポイントに設定されている場合のみ有効です。

コールロジックフロー

特定のステップの実行後に一般的なロジックを呼び出したい場合、このオプションを使用することができます。このステップが実行されると、サーバが以降のステップに続く前に、フロー内で定義したフローロジックは呼び出されます。

オプションは、YesまたはNo(デフォルト)です。

マッパー

エラー動作

エラーがフロー内のこのステップで発生した場合のステップの動作。ドロップダウンリストから以下のどれかを選択します。

  • Contine (デフォルト) …… ステップに定義された全てのマッピングは実行され、ステップの最後に定義されたエラーポリシーが実行されます。トランザクションがレコードレベルの場合は、そのレコードでロールバックが行なわれ、データマッパーは次のレコードに移ります。他のエラー処理が定義されていない場合、全てのエラーがデータベース操作時に発生し、最後に発生したエラーが見つからなかった場合、データマッパーによりモニタには書き込まれません。

  • Exit …… ステップの実行は直ちに終了し、フローのために定義されたエラーポリシーが実行されます。エラーが発生したポイントの後に定義されたマッピングは実行されません。

  • Dynamic …… エラーフローがエラーで終了すると、ステップ実行は直ちに終了します。エラーフローがエラーをクリアすると、フローは継続します。これはデータベースの送り先のみに関連しています。

データマッパエラーのリストについては、ここをクリックしてください。

DBトランザクションレベル

ドロップダウンリストから以下のいずれかを選択します。

  • Mapper (デフォルト): …… 全てのデータベースタイプのデータマッパーの送り先に対してデータベーストランザクションを実行します。全てのデータマッパーデータベースの更新は、同じトランザクションの一部となります。ロールバック手順は、データマッパーによって実行された全てのデータベース更新をロールバックします。追加/更新された全てのレコードは、ロールバックされます。[エラー動作]の定義内容が継続の場合、エラーは定義された設定どおりに処理され、データマッパーはロールバックされずに処理を継続します。[エラー動作]が終了でエラーが処理されなかった場合、全ての送り先データベースの全ての更新されたステップレコードはロールバックされます。

  • Record …… 全てのデータベースタイプのデータマッパー送り先に対して、各レコードを個別のトランザクションとして実行します。特定のレコードでエラーが発生した場合、そのレコードに対してのみ[エラー動作]で定義されたエラー動作が実行されます。このレコードだけが送り先の中でロールバックされます。[エラー動作]が継続の場合、エラーは定義された設定で処理され、データマッパーは次のレコードの処理へ進みます。[エラー動作]が終了の場合、ステップの動作が終了します。

  • AutoComit ……  (Magic xpiはネステトトランザクションをサポートしないため)同じコンテキスト上に、事前にオープンされたトランザクションがない場合、データベースに対しコミットのSQL文を自動的に送るようにします。 トランザクションがすでにオープンされている場合、データマッパーはこのトランザクションを使用して、DBトランザクションのレベル値を無視します。 リモートのデータベースと接続し、レコードレベルのトランザクションを実行したい場合は、自動コミットはパフォーマンスを改善することになります。 これは、トランザクションを完了するための時間を短縮することを意味しています。

  • フローレベルで定義されたトランザクションがある場合は、ステップレベルで定義されたデータベーストランザクションは無視されます。しかし、DB2/400データベースで、オートコミットInsert処理で選択されるか、WITH NCキーワードが削除更新処理(トランザクションタイプに関わらず)のSQL文に追加されると、ステップレベルは無視されません。

  • データマッパーから呼び出されたフローは、同じトランザクションの一部になります。呼び出されるフローで使用されるデータベースを含め、処理に関わる全てのデータベースは事前に定義しておく必要があります。ロールバックやコミットに関しては全てのデータベースが定義されていないと、予想外の動作を起こす場合があります。

  • トランザクションが開かない場合は、エラーメッセージが表示されます。

  • DB/400のデータソースにBLOBデータ型のフィールドが含まれている場合、[DBトランザクションのレベル]をレコードに定義することはできません。その代わりにマッパレベルのトランザクションを使用する必要があります。

DBトランザクション

このトランザクションがどのデータベース上で実行されるかを定義することができます。トランザクションの一部として定義されていない任意のデータベースリソースは、ステップ内のトランザクたョンレベルに関わらず、オートコミット処理を実行します。

これを行うには、をクリックしてデータベースリソースリストを開いてください。リストからデータベースを選択し、[OK]をクリックしてください。

  1. ダブルクリックするか、データマッパーユーティリティで右クリックし、コンテキストメニューから[構成]を選択してください。[データマッパー]ウィンドウが開きます。