例2 - 単純な動的ピックリスト

次のソース・コードを使用して、FLDVIS02という名前の再利用可能パーツを作成します。これにより、DEPTMENTのピックリストの内容が用意されます。

Function Options(*DIRECT)
Begin_Com Role(*EXTENDS #PRIM_OBJT *implements #Prim_dc.iDynamicPicklist)
 
Mthroutine Name(Load) Options(*redefine)
 
#Picklist.RemoveAll
Select Fields(*all) From_File(Deptab)
#Picklist.Add( #Deptment #Deptdesc )
Endselect
 
Endroutine
 
End_Com
 

VLDev005

オプションを使用して、動的ピックリストを追加します。プロンプタから、FLDVIS02を選択します。

次のコードがビジュアライゼーションのソース・コードに追加されます。

Begin_Com Role(*Dynamic_Picklist #FLDVIS02) Name(#DynamicPicklist)
End_Com
Begin_Com Role(*Visual #PRIM_EVPL) Name(#VisualPicklist) Appearance(DropDownList) Componentversion(1) Height(19) Width(209)
End_Com
 

動的か静的かにかかわらず、すべてのピックリストではNoMatchActionプロパティを設定して、基になるフィールド値がピックリストになかった場合を定義する必要があります。多くの場合、ShowValueが最善の選択肢となります。

これで、新しいVisual_host再利用可能パーツを次のように使用できます。

Define_Com Class(#Deptment.VisualPicklist) Name(#...)