[ |../../index.htm#lansa/lansa048_3195.htm]
Visual LANSA フレームワーク ガイド > フレームワーク・プログラミング > インスタンスリストとインスタンスリスト・マネージャー > インスタンスリストのヒントとテクニック > インスタンスリストは基盤となるデータベースをそのまま反映させる必要なし
インスタンスリストは基盤となるデータベースをそのまま反映させる必要なし
インスタンスリストの実体が物理的に存在するわけではありません。
存在するのはデータベース・テーブルであり、その物理的な構成がそのままインスタンスリストの構成に対応することが多いのですが、常にそうであるとも限りません。
この節では簡単なSECTIONS-EMPLOYEES関係を例として使っていますが、2000人もの社員を抱える部課があったとしたら、いっぺんに提示されても取り扱いが大変でしょう。このような場合、EMPLOYEES_A_G、EMPLOYEES_H_M、EMPLOYEES_N_T、EMPLOYEES_U_ENDという4つの子ビジネス・オブジェクトを設け、名前の頭文字によって4分割すると扱いやすくなるもしれません。
あるいは次のような例を考えてみましょう。メッセージを集積した、単一のデータベース・ファイルがあるとします。各メッセージには7桁の識別番号があります。さらに、電子メールの「状態」コードと同じように、RECEIVED、READ、SENT、DELETEDのいずれかの「状態」が設定されています。このような構成のデータベースを、次のようなインスタンスリストに変形して扱うことが考えられます。
ビジネス・オブジェクトの型 |
AKey1 |
AKey2 |
|---|---|---|
RECEIVE |
RECEIVE |
|
MESSAGE |
RECEIVE |
26272 |
MESSAGE |
RECEIVE |
63738 |
READ |
READ |
|
MESSAGE |
READ |
73389 |
MESSAGE |
READ |
74584 |
MESAAGE |
READ |
73873 |
SENT |
SENT |
|
MESSAGE |
SENT |
78383 |
MESSAGE |
SENT |
37383 |
DELETED |
DELETE |
|
MESSAGE |
DELETE |
62727 |
|
これは電子メールを「受信」、「送信済み」、「削除済み」などのボックスに分けて管理することに相当します。データベース構成そのものではないことに注意してください。
[ |../../index.htm#lansa/lansa048_3195.htm]