Code the Forms
Double click on the form to create
the object in the subprogram MZTRYF01. This subprogram will contain
all the forms that we are coding for the transaction, to make the
program modular.
Now we are in a position to code
the respective forms to give a final shape to our transaction.
MZTRYF01
Form check_emp_exist.
Clear v_empno.
Move ztryemp-empno to v_empno.
Clear ztryemp.
Select single * from ztryemp
where empno = v_empno.
If sy-subrc ne 0.
Clear v_emp_exist.
Else.
Clear ztrytxn.
Select * up to 1 rows from
ztrytxn where empno = v_empno.
Endselect.
Move : ztrytxn-valfr to
v_date,
C_x to
v_emp_exist.
Endif.
Endform.
Form move_values.
Clear : t_ztryermp, t_ztrytxn.
Move-corresponding ztryemp to
t_ztryemp.
Move-corresponding ztrytxn to
t_ztrytxn.
Move-corresponding ztryemp to
t_ztrytxn.
Move v_date to
t_ztrytxn-valfr.
Endform.
Form lock_table.
Call function
‘ENQUEUE_EZTRYEMP’
Exporting
Mode_ztryemp = ‘X’
Empno = ztryemp-empno
X_empno = ‘ ‘
_scope = ‘2’
_wait = ‘ ‘
collect = ‘ ‘
exception
foreign_lock = 1
system_failure = 2
others = 3.
If sy-subrc eq 0.
Call function ‘ENQUEUE_EZTRYTXN’
Exporting
Mode_ztrytxn = ‘X’
Empno = ztryemp-empno
Valfr = v_date
X_valfr = ‘ ‘
_scope = ‘2’
_wait = ‘ ‘
collect = ‘ ‘
exception
foreign_lock = 1
system_failure = 2
others = 3.
If sy-subrc ne 0.
Message id sy-msgid
type sy-msgty number sy-msgno with sy-msgv1 sy-
msgv2 sy-msgv3 sy-msgv4.
Endif.
Else.
Message id sy-msgid type
sy-msgty number sy-msgno with sy-msgv1 sy-
msgv2 sy-msgv3 sy-msgv4.
Endif.
Endform.
Form change_dbase.
Modify ztryemp from t_ztryemp.
Modify ztrytxn from t_ztrytxn.
Commit work.
Endform.
Form insert_dbase.
Insert into ztryemp values
t_ztryemp.
Insert into ztrytxn values
t_ztrytxn.
Commit work.
Endform.
Form delete_dbase.
Delete ztryemp from t_ztryemp.
Delete ztrytxn from t_ztrytxn.
Commit work.
Endform.
Form unlock_table.
Call function
‘DEQUEUE_EZTRYEMP’
Exporting
Mode_ztryemp = ‘X’
Empno = ztryemp-empno
X_empno = ‘ ‘
_scope = ‘3’
_synchron = ‘ ‘
collect = ‘ ‘.
Call function
‘DEQUEUE_EZTRYTXN’
Exporting
Mode_ztrytxn = ‘X’
Empno = ztryemp-empno
Valfr = v_date
X_empno = ‘ ‘
X_valfr = ‘ ‘
_scope = ‘3’
_synchron = ‘ ‘
collect = ‘ ‘.
Endform.
Now we will write the code for
validating each field of the screen 200.

