screen 9500
PROCESS BEFORE OUTPUT.
MODULE STATUS_9500.
*
PROCESS AFTER INPUT.
MODULE USER_COMMAND_9500.
MODULE MOD_EXIT AT EXIT-COMMAND.
module status_9500
*----------------------------------------------------------------------*
***INCLUDE MZSCREEN2_STATUS_9500O01 .
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module STATUS_9500 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE status_9500 OUTPUT.
SET PF-STATUS '9500'.
"SET TITLEBAR 'TTL9100'.
ENDMODULE. " STATUS_9500 OUTPUT
module mod_exit input
*&---------------------------------------------------------------------*
*& Module MOD_EXIT INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE mod_exit INPUT.
CASE sy-ucomm.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN 'CANCEL'.
IF sy-dynnr EQ '9500'.
LEAVE TO TRANSACTION sy-tcode.
ELSEIF sy-dynnr EQ '9500'.
LEAVE TO SCREEN 0.
ENDIF.
WHEN 'CHANGE'.
SELECT * FROM zemp_09
INTO TABLE it_emp.
IF sy-subrc EQ 0.
CALL SCREEN 9600.
ELSE.
MESSAGE i001(zfi). "No data found !!!
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDMODULE. " MOD_EXIT INPUT
module user_command_9500
*----------------------------------------------------------------------*
***INCLUDE MZSCREEN2_USER_COMMAND_9500I01 .
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_9500 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE user_command_9500 INPUT.
DATA: ans.
CASE sy-ucomm.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'SAVE'.
PERFORM save_data.
WHEN 'CREATE'.
CLEAR zemp_09.
WHEN 'CHANGE'.
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
* TITLEBAR = ' '
* DIAGNOSE_OBJECT = ' '
text_question = 'SAVE RECORD'
* TEXT_BUTTON_1 = 'Ja'(001)
* ICON_BUTTON_1 = ' '
* TEXT_BUTTON_2 = 'Nein'(002)
* ICON_BUTTON_2 = ' '
* DEFAULT_BUTTON = '1'
* DISPLAY_CANCEL_BUTTON = 'X'
* USERDEFINED_F1_HELP = ' '
* START_COLUMN = 25
* START_ROW = 6
* POPUP_TYPE =
* IV_QUICKINFO_BUTTON_1 = ' '
* IV_QUICKINFO_BUTTON_2 = ' '
IMPORTING
answer = ans
* TABLES
* PARAMETER =
EXCEPTIONS
text_not_found = 1
OTHERS = 2 .
IF sy-subrc EQ 0.
IF ans EQ '1'.
PERFORM save_data.
CALL SCREEN '9600'.
ELSEIF ans EQ '2'.
CALL SCREEN '9600'.
ELSEIF ans EQ 'A'.
ENDIF.
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDMODULE. " USER_COMMAND_9500 INPUT
*&---------------------------------------------------------------------*
*& Form SAVE_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM save_data .
IF zemp_09-deptno IS INITIAL OR zemp_09-ename IS INITIAL.
MESSAGE 'FILL ALL REQUIRED FIELDS' TYPE 'I'.
ELSE.
DATA : empno TYPE n LENGTH 5.
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
nr_range_nr = '01'
object = 'ZENO_11'
* QUANTITY = '1'
* SUBOBJECT = ' '
* TOYEAR = '0000'
* IGNORE_BUFFER = ' '
IMPORTING
number = empno
* 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.
ELSE.
CONCATENATE sy-datum+0(4) empno INTO zemp_09-empno.
MODIFY zemp_09 FROM zemp_09.
CLEAR zemp_09.
ENDIF.
IF sy-subrc EQ 0.
MESSAGE 'RECORD SAVED' TYPE 'I'.
ENDIF.
ENDIF.
ENDFORM. "save_data
" SAVE_DATA
top include
*&---------------------------------------------------------------------*
*& Include MZSCREEN2TOP Module Pool SAPMZSCREEN2
*&
*&---------------------------------------------------------------------*
PROGRAM sapmzscreen2.
TABLES: zemp_09.
DATA: itab TYPE STANDARD TABLE OF zemp_09.
DATA: wa TYPE zemp_09.
DATA: deptno TYPE zemp_09-deptno.
TYPES: BEGIN OF gty_emp.
INCLUDE STRUCTURE zemp_09.
TYPES: mark,
change,
END OF gty_emp.
TYPES: BEGIN OF cols_str,
screen_name TYPE c LENGTH 20,
END OF cols_str.
DATA: it_emp TYPE STANDARD TABLE OF gty_emp,
wa_emp TYPE gty_emp.
*&SPWIZARD: DECLARATION OF TABLECONTROL 'ZEMP_CHANGE_09' ITSELF
CONTROLS: zemp_change_09 TYPE TABLEVIEW USING SCREEN 9600.
*&SPWIZARD: LINES OF TABLECONTROL 'ZEMP_CHANGE_09'
DATA: g_zemp_change_09_lines LIKE sy-loopc.
DATA: ok_code LIKE sy-ucomm.
DATA: cols LIKE LINE OF zemp_change_09-COLS.
output
No comments:
Post a Comment