You are on page 1of 2

&---------------------------------------------------------------------*

*& Include ZMPP_EMP_I01


*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
DATA: lv_emp TYPE ZEMP_TAB-EMP_CID.
data : lv_emp_id TYPE ZEMP_TAB-EMP_ID.
CASE ok_code.
WHEN 'SUBMIT'.

SELECT SINGLE EMP_CID FROM ZEMP_TAB INTO LV_EMP WHERE EMP_CID = ZEMP_TAB-EMP_CID.
IF SY-SUBRC ne 0.

CALL FUNCTION 'NUMBER_GET_NEXT'


EXPORTING
nr_range_nr = '01'
object = 'ZAJ_NUM'
* QUANTITY = '1'
* SUBOBJECT = ' '
* TOYEAR = '0000'
* IGNORE_BUFFER = ' '
IMPORTING
NUMBER = lv_emp_id
* QUANTITY =
* RETURNCODE =
* EXCEPTIONS
* INTERVAL_NOT_FOUND = 1
* NUMBER_RANGE_NOT_INTERN = 2
* OBJECT_NOT_FOUND = 3
* QUANTITY_IS_0 = 4
* QUANTITY_IS_NOT_1 = 5
* INTERVAL_OVERFLOW = 6
* BUFFER_OVERFLOW = 7
* OTHERS = 8
.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

wa_emp-emP_ID = LV_EMP_ID.
wa_emp-emp_cid = ZEMP_TAB-EMP_CID.
wa_emp-emp_name = ZEMP_TAB-emp_name.
APPEND wa_emp TO it_emp.

MODIFY ZEMP_TAB FROM TABLE IT_EMP.


IF SY-SUBRC = 0 AND ZEMP_TAB-EMP_CID IS NOT INITIAL.
MESSAGE 'Data is saved ' TYPE 'S'.
ELSE.
MESSAGE 'DATA IS NOT SAVED' TYPE 'E'.
ENDIF.

DELETE FROM ZEMP_TAB WHERE EMP_ID EQ ' '.


CLEAR: WA_EMP, IT_EMP, ZEMP_TAB-EMP_CID, ZEMP_TAB-EMP_NAME .
ELSE.
MESSAGE 'Data is already exist' TYPE 'E'.
ENDIF.
*ENDLOOP.

WHEN 'BACK'.
* call SCREEN 1000.
* LEAVE TO TRANSACTION 'ZTCODE_EMP1'.
CALL TRANSACTION 'ZTCODE_EMP2'.
WHEN 'CLEAR'.
CLEAR: ZEMP_TAB-EMP_CID, ZEMP_TAB-EMP_NAME.
* WHEN OTHERS.
ENDCASE.
CASE ok_code.
WHEN 'BACK1' OR 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT

You might also like