VLF-ONE では、当然のことながらインスタンスリストの各エントリーに一意のキーが必要です。
しかし、親と子リスト・アイテムの関係はとても簡単に作ることができます。
以下はその例です。
* 一時的に社員データ・アイテムを保存するための参照を定義
Define_Com Class(#VF_LM003O) Name(#ParentEmployeeItem) Reference(*DYNAMIC)
* 親の社員エントリーを取得し、#VF_LM003O アイテム参照を返す
#avListManager.AddtoList Akey1(#Empno) Visualid1(#Empno) Visualid2(#GiveName+ #SurName) Dataitem(#ParentEmployeeItem)
* この社員にスキルの子アイテムを追加
社員 #Empno が持つスキルごとに繰り返す
* 追加された社員の子としてスキルのインスタンスリスト・エントリーを追加
#avListManager.AddtoList Akey1(#Empno) Akey2(#SKILCODE) Visualid1(#Skilcode) Visualid2(#SkilDesc) ParentDataItem(#ParentEmployeeItem)
Endfor
以下に注意してください。#VF_LM003O アイテム参照を処理する際は、これらの参照を保管しないでください。アプリケーションがリークする恐れがあります。この参照がコード内で全体的に検査される場合は、使用後には必ず*NULL に設定するようにしてください。
このサンプルは、提供されている例 Examples -> Advanced -> Children を参照してください。
VLF-ONE のツリー・ビジュアライゼーションは VLF-WIN と異なることに注意してください。
親と子を別の方法で表示したい場合、(提供例 Person のように) カスタム・パネルのリストを作成する、もしくは独自のカスタムのインスタンスリスト・ブラウザを作成し、スナップ・インします。
親子リレーションをうまく利用するには、以下に注意してください。
1. | ビジネス・オブジェクトは、親と子のそれぞれに対して定義する必要があります。 | 例えば、提供されている VLF-ONE の Children 例では、親が PARENT_PRODUCT、子は CHILD_ORDER および CHILD_SUPPLIER です。 |
2. | 親と子のリレーションは、親の [インスタンスリストの設定] タブで定義する必要があります。 | 例えば、提供されているデモの PARENT_PRODUCT には、次のようなリレーションが定義されています。
|
3. | インスタンスリストにアイテムを追加する時、ユーザー・オブジェクト名と親アイレムを指定する必要があります。 | インスタンスリストへのアイテム追加時、以下を指定してください。
|

