Page History
[ |../../index.htm#lansa/lansa048_3185.htm]
Visual LANSA フレームワーク ガイド > フレームワーク・プログラミング > インスタンスリストとインスタンスリスト・マネージャー > 複数の種類のオブジェクトがあるインスタンスリスト > 物理インスタンスリスト
...
開発者にとっては、インスタンスリストのデータ実体がどのように格納、処理されるか、理解しておくと役立つかも知れません。
そこで、インスタンスリストの物理的実装について、基本的な事項をいくつか説明しておきましょう (既述の「プログラム的識別子」も参照)。
...
付属のSECTIONSビジネス・オブジェクトでは、AKey1 = 部門コード(Department Code)、AKey2 = 部課コード(Section Code)という規約になっています。
また、EMPLOYEESビジネス・オブジェクトでは、AKey1 = 部門コード(Department Code), AKey2 = 部課コード(Section Code)、AKey3 = 社員番号(Employee Number)と定義されています。
したがって、SECTIONとEMPLOYEEの間には、構成されたキー・リレーションがあることになります。
SECTIONSとEMPLOYEESのインスタンスリストは、物理的にはっきり分離して格納されているわけではなく、例えば次のように混在しています。
ビジネス・オブジェクトの型 | AKey1 | AKey2 | AKey3 | Visual ID1 | Visual ID2 |
|---|---|---|---|---|---|
SECTIONS | ADM | 01 |
ADM | 01 | ||||
EMPLOYEES | ADM | 01 | A1001 | A1001 | BEN JONES |
EMPLOYEES | ADM | 01 | A1012 | A1012 | PATRICK PAUL |
SECTIONS | ADM | 02 |
ADM | 02 | ||||
EMPLOYEES | ADM | 02 | A0090 | A0090 | FRED BLOOGS |
EMPLOYEES | ADM | 02 | A1014 | A1014 | JOHN MOORE |
SECTIONS | LEG | 01 |
LEG | 01 | ||||
EMPLOYEES | LEG | 01 | A1019 | A1019 | CHARLES DICKENS |
など |
|
インスタンスリストを適切に処理し、Visual LANSAのツリー・コントロールに表示できるようにするためには、この SECTIONS と EMPLOYEES 間のキー構造リレーションは不可欠です。 「親子リレーションの計画 (VLF-WIN の場合)」も参照してください。
物理インスタンスリストについては、次のような事項も頭に入れておくとよいでしょう。
- インスタンスリストにエントリーを追加する順序は決まっていない
- オンデマンドでインスタンスリストに子を動的に追加
- インスタンスリストの子オブジェクトには親が必要
- ツリー表示を折りたたむことなく親子インスタンスリストの各エントリーを動的に更新
- ツリー表示を折りたたむことなく親子インスタンスリストの各エントリーを動的に削除
- ツリー表示を折りたたむことなく親子インスタンスリストの各エントリーを動的に追加
...