インスタンスリストへの変更を自動的に処理するフィルター・コード
Program Coding Assistantによって作成される次のRDMLXコードは、RAMP画面が通知するイベントを自動的に処理します(このコードは参考用です。変更する必要はありません)。
* --------------------------------------------------------------------------------
* Handle any external requests to update the Instance List
* --------------------------------------------------------------------------------
EvtRoutine #Com_owner.avEvent WithId(#EventId) WithAInfo1(#AInfo1) WithAInfo2(#AInfo2) WithAInfo3(#AInfo3) WithAInfo4(#AInfo4) WithAInfo5(#AInfo5) WithNInfo1(#NInfo1) WithNInfo2(#NInfo2) WithNInfo3(#NInfo3) WithNInfo4(#NInfo4) WithNInfo5(#NInfo5)
* put the received values into fields
Change #vf_elIdn #EventId.Value
* Map the AInfo and NInfo values passed, into the key fields - #EMPNO
Change #DEPTMENT #AInfo1
Change #SECTION #AInfo2
Change #EMPNO #AInfo3
Case #vf_elIDN
when '= Refresh_Instance_List'
* Reload the Instance List
Invoke #Com_Owner.uSelectData
when '= Add_List_Entry'
* Add an entry to the list view
fetch FIELDS(#XG_Ident) FROM_FILE(PSLMST) WITH_KEY(#EMPNO)
if_status *OKAY
* Start an instance list update
Invoke Method(#avListManager.BeginListUpdate)
* Set up the visual Identifier(s)
Change #UF_VisID1 #EMPNO
Change #UF_VisID2 #GIVENAME
Use BConcat (#UF_VisID2 #SURNAME) (#UF_VisID2)
* Add instance details to the instance list
Invoke #avListManager.AddtoList Visualid1(#UF_VisID1) Visualid2(#UF_VisID2) AKey1(#DEPTMENT) AKey2(#SECTION) AKey3(#EMPNO) ACOLUMN1(#PHONEHME) ACOLUMN2(#ADDRESS1) NCOLUMN1(#POSTCODE)
* Instance list updating has been completed
Invoke Method(#avListManager.EndListUpdate)
endif
when '= Update_List_Entry'
* Update an entry that already exists in the instance list
fetch FIELDS(#XG_Ident) FROM_FILE(PSLMST) WITH_KEY(#EMPNO)
if_status *OKAY
* Start an instance list update
Invoke Method(#avListManager.BeginListUpdate)
* Set up the visual Identifier(s)
Change #UF_VisID1 #EMPNO
Change #UF_VisID2 #GIVENAME
Use BConcat (#UF_VisID2 #SURNAME) (#UF_VisID2)
* Add instance details to the instance list
Invoke #avListManager.UpdateListEntryData Visualid1(#UF_VisID1) Visualid2(#UF_VisID2) AKey1(#DEPTMENT) AKey2(#SECTION) AKey3(#EMPNO) ACOLUMN1(#PHONEHME) ACOLUMN2(#ADDRESS1) NCOLUMN1(#POSTCODE)
* Instance list updating has been completed
Invoke Method(#avListManager.EndListUpdate)
endif
when '= Delete_List_Entry'
Invoke Method(#avListManager.BeginListUpdate)
* Remove instance details from the instance list
Invoke #avListManager.RemoveFromList AKey1(#DEPTMENT) AKey2(#SECTION) AKey3(#EMPNO)
Invoke Method(#avListManager.EndListUpdate)
endcase
Endroutine
End_Com