[ |../../index.htm#lansa/wamtut01_0625.htm]
You are here:
WAM105. Appendix A
Use the following RDMLX source code to create iiiEmpMaint_TB in Step 5 of this exercise.
DEF_LIST NAME(#emps) FIELDS(#empno (#givename *out) (#surname *out) (#deptment *out) (#section *out) (#salary *out)) COUNTER(#listcount) TYPE(*Working) ENTRYS(99) DEFINE FIELD(#hidesave) TYPE(*char) LENGTH(1) DEFINE FIELD(#hidedel) TYPE(*char) LENGTH(1) DEFINE FIELD(#hidenew) TYPE(*char) LENGTH(1) DEFINE FIELD(#hidesrch) TYPE(*char) LENGTH(1) DEFINE FIELD(#empnow) REFFLD(#empno) Define Field(#wrname) Type(*char) Length(50) GROUP_BY NAME(#empmnt) FIELDS(#SURNAME #GIVENAME #ADDRESS1 #ADDRESS2 #ADDRESS3 #POSTCODE #PHONEHME #PHONEBUS) GROUP_BY NAME(#empadd) FIELDS(#EMPNO #SURNAME #GIVENAME #ADDRESS1 #ADDRESS2 #ADDRESS3 #POSTCODE #PHONEHME #PHONEBUS #DEPTMENT #SECTION #SALARY #STARTDTE) WEB_MAP FOR(*output) FIELDS((#hidesave *hidden) (#hidedel *hidden) (#hidenew *hidden) (#hidesrch *hidden) (#wrname *hidden)) WEB_MAP FOR(*both) FIELDS((#stdrentry *hidden) (#empnow *hidden)) WebRoutine NAME(Begin) WEB_MAP FOR(*output) FIELDS(#surname) #hidedel #hidesave #hidesrch := Y ENDROUTINE WebRoutine NAME(empgrid) WEB_MAP FOR(*input) FIELDS(#surname) WEB_MAP FOR(*output) FIELDS((#emps *private)) #hidedel #hidesave := Y EXECUTE SUBROUTINE(bldlist) ENDROUTINE WebRoutine NAME(emplist) DESC('Employee List') WEB_MAP FOR(*input) FIELDS(#surname) WEB_MAP FOR(*output) FIELDS(#emps) #hidedel #hidesave := Y EXECUTE SUBROUTINE(bldlist) ENDROUTINE WebRoutine NAME(maint) WEB_MAP FOR(*both) FIELDS((#empno *out) #empmnt) #hidedel #hidesave #hidesrch #hidenew := N #wrname := 'maint' CASE (#stdrentry) WHEN (= S) UPDATE FIELDS(#empmnt) IN_FILE(pslmst) WITH_KEY(#empnow) VAL_ERROR(*next) IF_STATUS IS(*OKAY) MESSAGE MSGTXT('Employee changed') TRANSFER TOROUTINE(begin) ENDIF #EMPNO := #EMPNOW WHEN (= D) DELETE FROM_FILE(pslmst) WITH_KEY(#empnow) VAL_ERROR(*next) IF_STATUS IS(*OKAY) MESSAGE MSGTXT('Employee deleted') TRANSFER TOROUTINE(begin) ENDIF #EMPNO := #EMPNOW OTHERWISE FETCH FIELDS(#empmnt) FROM_FILE(pslmst) WITH_KEY(#empno) #empnow := #empno MESSAGE MSGTXT('Enter changes and Save') ENDCASE ENDROUTINE WebRoutine NAME(new) WEB_MAP FOR(*both) FIELDS(#empadd) #hidedel #hidenew := Y CASE (#stdrentry) WHEN (= N) #empadd := *default MESSAGE MSGTXT('Enter details and Save') WHEN (= S) INSERT FIELDS(#empadd) TO_FILE(pslmst) VAL_ERROR(*next) IF_STATUS IS(*OKAY) MESSAGE MSGTXT('New Employee added') ENDIF ENDCASE #wrname := 'new' ENDROUTINE SUBROUTINE NAME(bldlist) CLR_LIST NAMED(#emps) SELECT FIELDS(#emps) FROM_FILE(pslmst2) WITH_KEY(#surname) GENERIC(*yes) ADD_ENTRY TO_LIST(#emps) IF (#listcount = 15) MESSAGE MSGTXT('First 15 entries shown only') LEAVE ENDIF ENDSELECT ENDROUTINE
[ |../../index.htm#lansa/wamtut01_0625.htm]