次の方法で共有


検証に関する既知の問題

このセクションには、検証エラーを回避するのに役立つ有用な情報が含まれています。

XML 検証の無効化

BTAHL7 Configuration エクスプローラー の "Validate Body Segments" フラグは、XML 本文の検証を制御し、予期しない区切り記号と末尾の区切り記号の検証は含まれません。 メッセージに適切な区切り記号がない場合、メッセージを正常に解析できません。 メッセージを正常に解析できない場合、BTAHL7 は有効な中間 XML を生成できません。 "ボディ セグメントの検証" フラグを無効にすると、次のようになります。

  1. 空の必須フィールド。

  2. データ型が検証されていません。

  3. セグメント構造は検証されません (セグメントの順序は検証されません)。

複数のエラーを含む V2.XML ACL は検証に失敗します

受信 V2.XML メッセージに複数のエラーが含まれている場合、Microsoft BizTalk Accelerator for HL7 (BTAHL7) パーサーは、エラー フィールドに複数のエラーがある V2.XML 確認 (ACK) を生成する可能性があります。 このような V2.XML ACK は検証に失敗します。HL7 標準では、パーサーが V2.XML ACK エラー フィールドでエラーを 1 つだけ報告できることを指定しているためです。

Batch In/Batch Out シナリオのメッセージに検証エラーが含まれている場合、2 つの解析エラーがログに記録されます

Batch In/Batch Out シナリオの最初のメッセージ (バッチ ヘッダーなしでバッチ処理された複数のメッセージ) に検証エラーが含まれている場合、BTAHL7 はイベント ログに 2 つのエラーを記録します。 最初のエラーはバッチ内の最初のメッセージに関連し、2 番目のエラーはメッセージの残りの部分に関連します。

フィールド長の検証に関する制限事項

HL7 複合データ型に関連付けられているフィールドは、コンポーネントとサブコンポーネントで構成されます。 HL7 ルールでは、コンポーネント/サブコンポーネント レベルではなく、フィールド レベルで長さとオプションを指定します。 たとえば、V2.4 では、HL7 は MSH3 を HD データ型と 180 文字の最大長に制御します。 HD は、HD1 が IS として設定され、HD2 が ST に設定され、HD3 が ID として設定された複合データ型です。 フィールド長の制限は、3 つのコンポーネント (2 つのコンポーネント区切り記号を含む) のデータが 180 以下である必要があることを意味します。 ただし、3 つのデータ型のオプションは指定されていません。つまり、すべてのコンポーネントまたは一部のコンポーネントが存在する可能性があります。 さらに、データ型 ST と IS はユーザー定義であるため、BTAHL7 は通常サイト定義であるため、3 つのコンポーネント間の長さの分布を認識できません。

これらおよび他の複雑さのため、BTAHL7 はフィールドの長さを検証しません。 ただし、Visual Studio の BizTalk エディターを使用して、(データ型が単純な) 個々のコンポーネント/サブコンポーネントに長さの制限を適用できます。 BTAHL7 は、処理中にこれらを検証します。

バッチヘッダーとファイルヘッダー/トレーラーの検証は、断片化を有効にすることによって影響を受けます

BTAHL7 では、FHS3 フィールドに断片化が有効になっているパーティが含まれている場合、バッチヘッダーとファイルヘッダー/トレーラーは検証されません。

参照

既知の問題