選択およびフィールド選択基準の影響
以下の条件を満たすセグメントが選択され、表示されます。
- セグメント・タイプが「View : Segment Selection (ビュー : セグメント選択)」パネルまたは「Database Positioning (データベース位置決め)」パネルで選択されていること。
- セグメント内の該当する値がセグメント・タイプのレイアウトについて (「Template Segment Layout (テンプレートのセグメント・レイアウト)」パネルで設定された) レイアウト識別基準を満たしていること。このレイアウトは
突き合わせ
レイアウトと呼ばれます。レイアウトが 1 つだけである場合には、レイアウト識別基準はなく、セグメントはレイアウトと自動的に突き合わされます。 - 突き合わせレイアウトが「View: Segment Layout Selection (ビュー: セグメント・レイアウト選択)」パネルで表示のために選択されること。レイアウトが 1 つだけである場合には、そのセグメント・レイアウトが自動的に選択されます。
- セグメント内の該当する値が突き合わせレイアウトについて (「View: Segment Layout (ビュー: セグメント・レイアウト)」パネルで設定された) フィールド選択基準を満たしていること。これを簡単に言うと、セグメントが基準を満たしているということです。
- セグメントの親セグメントと子セグメントが、そのセグメントのフィールド選択基準に一致していること。
ビューに子セグメント・レイアウトのためのフィールド選択基準が含まれている場合には、少なくとも 1 つの子セグメントが基準を満たしている場合にのみ親セグメントが選択されます。基準を満たす子セグメントがない場合や、 親セグメントに子セグメントがない場合は、親セグメントは選択されません。
セグメントがこれらのテストのいずれかにパスしない場合には、選択されていないセグメントであり、表示されません。
セグメントがこれらすべてのテストにパスしても、FM/IMS がセグメントの長さが突き合わせレイアウトの長さと一致しないことを検出した場合には、一致しないシャドー行として表示されます。
基準は上位のデータベース階層に影響します。データベース階層に次の 3 つのレベルがあるとします。すなわち、レベル 1 (ルート・セグメント); レベル 2 (レベル 1 の子); レベル 3 (レベル 2 の子) です。
- レベル 1 セグメントは、レベル 1 レイアウトのフィールド選択基準を満たす。
- レベル 1 セグメントには、レベル 2 レイアウトのフィールド選択基準を満たすレベル 2 の子が少なくとも 1 つある。
- レベル 2 セグメントには、レベル 3 レイアウトのフィールド選択基準を満たすレベル 3 の子が少なくとも 1 つある。
基準は下位のデータベース階層にも影響します。つまり、レベル 1 (ルート) セグメントに 2 つの子セグメント・タイプがあり、 一方の子タイプの選択基準を満たす子セグメントがない場合には、2 番目のタイプの子セグメントも選択されません。
子セグメントに複数のレイアウトがある場合に、親セグメントが選択されないのは、すべての子セグメントのレイアウトがいずれも選択されない場合だけです。
┌───────────────────┐
│ Patient: │
│ Si Key │
└─────────┬─────────┘
│
┌─────────────┴─────────────┐
│ │
┌─────────┴─────────┐ ┌─────────┴─────────┐
│ Doctor: │ │ Illness: │
│ Spock │ │ influenza │
└───────────────────┘ └─────────┬─────────┘
│
┌───────┴─────────────┐
│ Treatment: Hot bath │
┌─────────────────────┐ │
│ Treatment: │─┘
│ Antibiotics │
└─────────────────────┘
これらの例で、ルート・セグメントは Patient です。これには Doctor と Illness の 2 つの子セグメントがあり、Illness セグメントには、その子セグメントである Treatment の 2 つのオカレンスがあります。ここではいくつかの可能性があります。
- 例 1
以下のものを表示するために選択します。
- Doctor セグメント
以下のフィールド選択基準を指定します。
- Treatment セグメント: Treatment=Antibiotics
FM/IMS は以下を表示します。
- Doctor: Spock セグメント
- 例 2
以下のものを表示するために選択します。
- Patient セグメント
以下のフィールド選択基準を指定します。
- Doctor セグメント: Doctor=Spock
- Treatment セグメント: Treatment=Vitamin C
FM/IMS は以下を表示します。
- なし。Doctor セグメントは、そのフィールド選択基準を満たしています。しかし、Treatment セグメントのフィールド選択基準を満たす Treatment セグメントはなく、このことは、Illness セグメントは選択されず、したがって、Patient セグメントも選択されないことを意味します。
- 例 3
以下のものを表示するために選択します。
- Patient セグメントと Illness セグメント
以下のフィールド選択基準を指定します。
- Doctor セグメント: Doctor=Spock
- Treatment セグメント: Treatment=Antibiotics
FM/IMS は以下を表示します。
- Patient: Si キー・セグメント
- Illness: influenza セグメント