妥当性検査プロパティー

以下の表にリストされているノードの「妥当性検査」タブと「パーサー・オプション」タブのプロパティーを設定すると、妥当性検査を制御できます。

妥当性検査オプションは、以下のノード上で使用できます。
ノード・タイプ 妥当性検査オプションを持つノード
入力ノード MQInput, SCADAInput, HTTPInput, JMSInput, TimeoutNotification, ,
出力ノード MQOutput, MQReply, SCADAOutput, HTTPReply, JMSOutput, JMSReply, ,
その他のノード Compute, Mapping, JavaCompute, Validate, ResetContentDescriptor, MQGet, HTTPRequest, , , ,

ブローカー内のメッセージの妥当性検査の概要については、メッセージの妥当性検査を参照してください。

以下の表に示されているプロパティーを設定できます。
タブ 妥当性検査に影響を与えるプロパティー
妥当性検査 妥当性検査、失敗処置、すべての値制約を含める、修正
パーサー・オプション 構文解析のタイミング

「妥当性検査」タブのプロパティー

妥当性検査

妥当性検査が必要かどうかを設定します。 すべてのノードは、以下のオプションを提供します。

なし
デフォルト値。 妥当性検査は実行されません。
内容
内容の検証や構成など、内容のチェックを実行するよう指定します。
内容と値
内容の検証や構成などの内容チェック、および値がデータ・タイプ、長さ、範囲、列挙などと一致するかどうかなどの値チェックを実行するよう指定します。

次のオプションを提供するノードもあります。

継承
ノードで提供されているどの妥当性検査オプションよりも優先的に、入力メッセージ・ツリーに備えられているすべての妥当性検査オプションを使用するようノードに指示します。 そのため、「継承」は「なし」「内容」、 または「内容と値」に解決されます。 「継承」が選択される場合、タブ上の他の妥当性検査プロパティーは選択できません。

失敗時の処置

妥当性検査に失敗したときに行う処置。 これは次のいずれかの値に設定できます。

例外
デフォルト値。 最初の妥当性検査の失敗で例外がスローされます。 その結果として生成される例外リストを以下に示します。 メッセージ・フローのユーザー・トレースを要求している場合は、失敗のユーザー・トレースへの記録も行われ、妥当性検査が停止します。 失敗の発生時にただちにメッセージの処理を停止したい場合は、この設定を使用します。

MRM および IDOC失敗処置が「例外」に設定されたときの例外リスト

例外リスト
妥当性検査が失敗した場合 (ただし現行の構文解析または書き込み操作が完了した場合のみ) に例外をスローします。 その結果として生成される例外リストを以下に示します。 メッセージ・フローのユーザー・トレースを要求している場合は、各失敗のユーザー・トレースへの記録も行われ、妥当性検査が停止します。 妥当性検査が失敗したときにメッセージの処理を停止したい場合、しかし発生した失敗のリストをすべて見たい場合にこの設定を使用します。 このプロパティーは「構文解析のタイミング」プロパティーによって影響を受けます。 部分構文解析が選択される場合、現行の構文解析操作は入力メッセージの一部のみを構文解析するため、メッセージのその部分の妥当性検査の失敗のみが報告されます。

MRM および IDOC失敗処置が「例外リスト」に設定されたときの例外リスト

ユーザー・トレース
メッセージ・フローのユーザー・トレースを要求していない場合でも、妥当性検査の失敗をすべてユーザー・トレースに記録します。 妥当性検査の失敗に関係なくメッセージの処理を継続したい場合は、この設定を使用します。
ローカル・エラー・ログ
妥当性検査の失敗をすべてエラー・ログ (たとえば、Windows のイベント・ログ) に記録します。 妥当性検査の失敗に関係なくメッセージの処理を継続したい場合は、この設定を使用します。

すべての値制約を含める

このチェック・ボックスは選択されています。 このオプションは変更できません。

すべての値制約を含める」は、 「妥当性検査」が「内容と値」に解決するときにメッセージのフィールドの値に対して実行される基本的な値制約チェックを指定します。 実行されるチェックは次のとおりです。

  • 最小長
  • 最大長
  • 小数部の桁数
  • 全体の桁数
  • 最小の包含
  • 最大の包含
  • 最小の除外 (サポートされる場合)
  • 最大の除外 (サポートされる場合)
  • 列挙
  • パターン

値制約について詳しくは、単純タイプの論理値制約を参照してください。

修正

デフォルト値は「なし」です。これは変更できません。

「なし」は、「妥当性検査」「内容」または「内容と値」に解決し、妥当性検査が失敗したときに追加の修復処置が取られないことを指定します。取られる修復処置は、「失敗処置」 の設定によって異なります。

失敗処置」が「ユーザー・トレース」または「ローカル・エラー・ログ」に設定される場合、 修復処置は、妥当性検査が実行されない場合に取られるデフォルトの修復処置に限定されます (メッセージの妥当性検査)。

  • 固定形式では、無関係のフィールドは出力で廃棄されます (CWF および TDS 固定長モデルのみ)。
  • 固定形式では、必須内容が欠落している場合、出力で (使用可能な場合に) デフォルト値が提供されます (CWF および TDS 固定長モデルのみ)。
  • すべての形式において、ツリー内のエレメントのデータ・タイプが辞書内で指定されたものと一致しない場合、可能であれば、出力のデータ・タイプが辞書の定義と一致するように変換されます。

「失敗処置」「例外」または「例外リスト」に設定される場合、 修復処置は、上記リストの 3 番目の項目に限定され、最初の 2 つの項目に関しては例外がスローされます。

「パーサー・オプション」タブのプロパティー

構文解析のタイミング

「構文解析のタイミング」プロパティーは、 メッセージの構文解析時に要求時構文解析を使用するかどうかを決定します。 このプロパティーを使用すると、入力メッセージの妥当性検査のタイミングを制御することもできます。

  • 「構文解析のタイミング」値として「要求時」を選択する場合、メッセージ内のフィールドが要求時構文解析によって解析されるまで、それらの妥当性検査が遅延します。
  • 「構文解析のタイミング」値として「即時」を選択した場合、要求時構文解析はオーバーライドされて、メッセージ・ドメインが MRM の場合は、構成が「選択」または「メッセージ」の、その時点では解決できない複合タイプを除く、メッセージ内のすべてのものが構文解析され、妥当性検査されます。
  • 「構文解析のタイミング」の値として「完全」を選択する場合、要求時構文解析はオーバーライドされ、すべてのものが構文解析され、妥当性検査されます。 メッセージ・ドメインが MRM の場合、構成が「選択」または「メッセージ」の、その時点では解決できない複合タイプがあると、妥当性検査は失敗します。

メッセージの妥当性検査が使用可能になっていて、「構文解析のタイミング」に「要求時」または「即時」を選択した場合、メッセージ・フローによるメッセージの処理において、妥当性検査エラーがすぐには検出されないことがあります。またはメッセージの一部が解析されない場合は、エラーがまったく検出されないこともあります。 メッセージ内のすべてのフィールドが確実に妥当性検査されるようにするには、「完全」を選択します。ただし、メッセージ・ドメインが MRM の場合は、「即時」を選択してメッセージ・フローの開始時に、構成が「選択」または「メッセージ」のすべての未解決タイプを確実に解決しておいてください。

構文解析のタイミング」プロパティーは、出力メッセージの妥当性検査には影響を与えません。

関連資料
組み込みノード
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
最終更新 : 2009-02-20 12:42:54

ac18870_