Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Image Added


 VLF-ONE

[ Image Removed |../../index.htm#lansa/lansa048_6070.htm]
Visual LANSA フレームワーク ガイド > フレームワーク・プログラミング > インスタンスリストとインスタンスリスト・マネージャー > 複数の種類のオブジェクトがあるインスタンスリスト > 子の追加 (VLF-ONE の場合)

...

Image Removed
 
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 を参照してください。

...

Image Added

VLF-ONE のツリー・ビジュアライゼーションは VLF-WIN

...

と異なることに注意してください。 

親と子を別の方法で表示したい場合、(提供例 Person のように)

...

カスタム・パネルのリストを作成する、もしくは独自のカスタムのインスタンスリスト・ブラウザを作成し、スナップ・インします。 

親子リレーションをうまく利用するには、以下に注意してください。

1.

ビジネス・オブジェクトは、親と子のそれぞれに対して定義する必要があります。

...

例えば、提供されている VLF-ONE の Children 例では、親が PARENT_PRODUCT、子は CHILD_ORDER および CHILD_SUPPLIER です。

...

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="5dac257e-f4cf-42f6-8af3-a34ba1298ebe"><ac:plain-text-body><![CDATA[

2.

親と子のリレーションは、親の [インスタンスリストの設定] タブで定義する必要があります。

...

...

例えば、提供されているデモの PARENT_PRODUCT には、次のようなリレーションが定義されています。

...


 Image Added

3.

インスタンスリストにアイテムを追加する時、ユーザー・オブジェクト名と親アイレムを指定する必要があります。

...

インスタンスリストへのアイテム追加時、以下を指定してください。

  • AddToList メソッドの Businessobjecttype()

...

  • パラメーターにユーザー・オブジェクト名 
  • アイテムが子の場合、ParentDataItem() パラメーターに親アイテム

...

  •  

...