[ |../../index.htm#lansa/lansa048_3240.htm]
Visual LANSA フレームワーク ガイド > フレームワーク・プログラミング > インスタンスリストとインスタンスリスト・マネージャー > 複数の種類のオブジェクトがあるインスタンスリスト > 親子リレーションの計画 (VLF-WIN の場合)
親子リレーションの計画 (VLF-WIN の場合)
VLF-ONE プログラムに関する情報は、「子の追加 (VLF-ONE の場合)」を参照してください。
VLF-WIN で親子リレーションを表すキーの構成は、次のような表を作って考えると簡単です。
ここでSECTIONには複数のEMPLOYEEが含まれている場合があります。
またEMPLOYEEには複数のSKILLが含まれている場合があります。
またEMPLOYEEには関係するDOCUMENTが含まれている場合があります。
ビジネス・オブジェクト |
役割 |
AKey1 |
NKey1 |
AKey2 |
Nkey2 |
AKey3 |
Nkey3 |
AKey4 |
Nkey4 |
AKey5 |
Nkey5 |
|---|---|---|---|---|---|---|---|---|---|---|---|
SECTION |
PARENT |
#DEPTMENT |
暗黙のうちの親に使用されます。 |
#SECTION |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
EMPLOYEE |
( SECTIONの)子 |
#DEPARTMENT値が親と同じでなければなりません。 |
暗黙のうちに親に使用されます。ですから同じ省略値を持っていなければなりません。 |
#SECTIONT 値が親と同じでなければなりません。 |
暗黙のうちに子に使用されます。 |
#EMPNO - この子はDEPARTMENTとSECTION内で一意のものです。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
SKILL |
(EMPLOYEE)の子 |
#DEPARTMENT値が親と祖父母のものと同じでなければなりません。 |
暗黙のうちに親と祖父母に使用されます。ですから同じ省略値を持っていなければなりません。 |
#SECTION値が親と祖父母のものと同じでなければなりません。 |
暗黙のうちに親に使用されます。ですから同じ省略値を持っていなければなりません。 |
#EMPNO 値が親と同じでなければなりません。 |
暗黙のうちに子に使用されます。 |
#SKILLCODE - この社員スキルは、DEPARTMENTのSECTIONのEMPLOYEEにとって一意のものです。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
DOCUMENT |
(EMPLOYEE)の子 |
#DEPARTMENT値が親と祖父母のものと同じでなければなりません。 |
暗黙のうちに親と祖父母に使用されます。ですから同じ省略値を持っていなければなりません。 |
#SECTION値が親と祖父母のものと同じでなければなりません。 |
暗黙のうちに親に使用されます。ですから同じ省略値を持っていなければなりません。 |
#EMPNO 値が親と同じでなければなりません。 |
#DOCNUMBER - この社員ドキュメントは、DEPARTMENTのSECTIONのEMPLOYEEにとって一意のものです。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
子が自由に使用できます。 |
|
親子関係のルールは次の通りです:
- 子ビジネス・オブジェクトには、親とまったく同じキーにプラスして、それ自身を一意に識別するキーを追加する必要があります。
- 親が使っていない空きキーを使うことができます。キー構成を左から右に見ていき、親が最後に(実際にまたは暗黙的に)使用したキーの直後に当たるキーからしか割り当てることができません。
理論上の計画が終わったら、キー構造を凝縮できないか考えてみてみてください。これらのキーはプログラム上のもので、エンドユーザーには見えないものです。
例えば、上の表のAKey1として#DEPTMENT + "" + #SECTIONを選択することで、左側に2列分だけ凝縮することができます。 こうすることである程度のキー・スペースを空けることが可能になります。
[ |../../index.htm#lansa/lansa048_3240.htm]