[ |../../index.htm#lansa/l4wdev06_0690.htm]
現在地:
2.23.1 Payload
ドラッグ・アンド・ドロップされるオブジェクトは、Payloadです。
このセクションの例では、共通のPayload再利用可能パーツDD_EMPPLを使用します。これには、社員情報の作業リストとPayloadにアイテムを追加したりPayloadからアイテムを取得するメソッドが含まれます。
DD_EMPPL Payloadのソース
このソースをコピーしてDD_EMPPLという名前の再利用可能パーツに貼り付け、コンパイルてください。
FUNCTION options(*DIRECT)
BEGIN_COM role(*EXTENDS #PRIM_OBJT) DEF_LIST name(#PAYLOAD) fields(#EMPNO #SURNAME #GIVENAME #DEPTMENT #SECTION) counter(#LISTCOUNT) type(*WORKING) DEFINE_PTY name(Payload_items) get(*auto #listcount) * Add an item to the payload MTHROUTINE name(Add_to_payload) DEFINE_MAP for(*input) class(#empno) name(#Employee_ID) mandatory('') DEFINE_MAP for(*input) class(#surname) name(#Employee_Surname) mandatory('') DEFINE_MAP for(*input) class(#Givename) name(#Employee_Givename) mandatory('') DEFINE_MAP for(*input) class(#Deptment) name(#Employee_Department) mandatory('') DEFINE_MAP for(*input) class(#Section) name(#Employee_Section) mandatory('') CHANGE field(#EMPNO) to('#Employee_ID.value') CHANGE field(#SURNAME) to('#Employee_Surname.value') CHANGE field(#GIVENAME) to('#Employee_Givename.value') CHANGE field(#DEPTMENT) to('#Employee_Department.value') CHANGE field(#SECTION) to('#Employee_Section.value') ADD_ENTRY to_list(#PAYLOAD) ENDROUTINE MTHROUTINE name(Get_payload_Item) DEFINE_MAP for(*input) class(#Listentry) name(#Payload_item) DEFINE_MAP for(*output) class(#empno) name(#Employee_ID) mandatory('') DEFINE_MAP for(*output) class(#surname) name(#Employee_Surname) mandatory('') DEFINE_MAP for(*output) class(#Givename) name(#Employee_Givename) mandatory('') DEFINE_MAP for(*output) class(#Deptment) name(#Employee_Department) mandatory('') DEFINE_MAP for(*output) class(#Section) name(#Employee_Section) mandatory('') CHANGE field(#LISTENTRY) to('#PAYLOAD_ITEM.VALUE') GET_ENTRY number(#LISTENTRY) from_list(#PAYLOAD) SET com(#Employee_ID) VALUE(#empno) SET com(#Employee_Surname) VALUE(#surname) SET com(#Employee_Givename) VALUE(#givename) SET com(#Employee_Department) VALUE(#deptment) SET com(#Employee_Section) VALUE(#section) ENDROUTINE END_COM
[ |../../index.htm#lansa/l4wdev06_0690.htm]