Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- *&---------------------------------------------------------------------*
- *& Include Z212_SR_SCHUELERVERW_TOP Modulpool Z212_SR_SCHUELVER
- *&
- *&---------------------------------------------------------------------*
- PROGRAM Z212_SR_SCHUELVER.
- DATA:
- ok_code TYPE sy-ucomm,
- lv_ok_code LIKE ok_code,
- gv_vorname TYPE Y008_SV_SCHUELER-vorname,
- gr_alv_container TYPE REF TO cl_gui_custom_container,
- gr_alv TYPE REF TO cl_gui_alv_grid,
- gn_selected_line TYPE i,
- gt_schueler TYPE TABLE OF Y008_SV_SCHUELER.
- TABLES:
- Y008_SV_SCHUELER.
- CLASS lcl_handler DEFINITION.
- PUBLIC SECTION.
- METHODS:
- on_double_click
- FOR EVENT double_click OF cl_gui_alv_grid
- IMPORTING es_row_no.
- ENDCLASS.
- CLASS lcl_handler IMPLEMENTATION.
- METHOD on_double_click.
- gn_selected_line = es_row_no-row_id.
- cl_gui_cfw=>set_new_ok_code( 'DBCL' ).
- ENDMETHOD.
- ENDCLASS.
- *&---------------------------------------------------------------------*
- *& Include Z212_SR_SCHUELERVERW_PBO
- *&---------------------------------------------------------------------*
- *&---------------------------------------------------------------------*
- *& Module STATUS_0100 OUTPUT
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- MODULE status_0100 OUTPUT.
- SET PF-STATUS '0100'.
- SET TITLEBAR '0100'.
- ENDMODULE. " STATUS_0100 OUTPUT
- *&---------------------------------------------------------------------*
- *& Module TAB_0100 OUTPUT
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- MODULE tab_0100 OUTPUT.
- IF gr_alv IS NOT BOUND.
- gr_alv_container = NEW #( 'CONTROLL' ).
- gr_alv = NEW cl_gui_alv_grid(
- i_parent = gr_alv_container
- ).
- SELECT * FROM Y008_SV_SCHUELER INTO TABLE gt_schueler.
- gr_alv->set_table_for_first_display(
- EXPORTING
- i_structure_name = 'Y008_SV_SCHUELER'
- CHANGING
- it_outtab = gt_schueler
- ).
- DATA:
- gr_handler TYPE REF TO lcl_handler.
- gr_handler = new lcl_handler( ).
- set HANDLER gr_handler->on_double_click FOR gr_alv.
- ELSE.
- SELECT * FROM Y008_SV_SCHUELER INTO TABLE gt_schueler.
- gr_alv->refresh_table_display( ).
- ENDIF.
- ENDMODULE. " TAB_0100 OUTPUT
- *&---------------------------------------------------------------------*
- *& Include Z212_SR_SCHUELERVERW_PAI
- *&---------------------------------------------------------------------*
- *&---------------------------------------------------------------------*
- *& Module USER_COMMAND_0100 INPUT
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- MODULE USER_COMMAND_0100 INPUT.
- lv_ok_code = ok_code.
- CLEAR ok_code.
- CASE lv_ok_code.
- WHEN 'SAVE'.
- IF Y008_SV_SCHUELER-ID IS NOT INITIAL.
- SELECT SINGLE vorname
- FROM Y008_SV_SCHUELER
- INTO gv_vorname
- WHERE ID = y008_SV_schueler-ID.
- IF gv_vorname = ''.
- INSERT Y008_SV_SCHUELER FROM Y008_SV_SCHUELER.
- MESSAGE s002(z212_sr_nachrichten).
- CLEAR: Y008_SV_SCHUELER.
- ELSE.
- UPDATE y008_sv_schueler FROM Y008_SV_SCHUELER.
- MESSAGE s005(z212_sr_nachrichten).
- ENDIF.
- ELSE.
- MESSAGE s001(z212_sr_nachrichten) DISPLAY LIKE 'E'.
- ENDIF.
- WHEN 'LOAD' OR 'ENTER'.
- IF Y008_SV_SCHUELER-ID IS NOT INITIAL.
- SELECT SINGLE *
- FROM Y008_SV_SCHUELER
- INTO Y008_SV_SCHUELER
- WHERE ID = Y008_SV_Schueler-id.
- IF Y008_SV_SCHUELER-vorname = ''.
- MESSAGE s004(z212_sr_nachrichten) DISPLAY LIKE 'E'.
- ENDIF.
- ELSE.
- MESSAGE s001(z212_sr_nachrichten) DISPLAY LIKE 'E'.
- ENDIF.
- WHEN 'DBCL'.
- Y008_SV_SCHUELER = gt_schueler[ gn_selected_line ].
- WHEN 'DELET'.
- IF Y008_SV_SCHUELER-ID IS NOT INITIAL.
- DELETE FROM Y008_SV_SCHUELER
- WHERE ID = Y008_SV_SCHUELER-ID.
- MESSAGE s003(z212_sr_nachrichten).
- CLEAR: Y008_SV_SCHUELER.
- ELSE.
- MESSAGE e001(z212_sr_nachrichten).
- ENDIF.
- WHEN 'BACK'.
- LEAVE PROGRAM.
- WHEN OTHERS.
- ENDCASE.
- ENDMODULE. " USER_COMMAND_0100 INPUT
- *&---------------------------------------------------------------------*
- *& Module EXIT_0100 INPUT
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- MODULE exit_0100 INPUT.
- lv_ok_code = ok_code.
- CLEAR ok_code.
- CASE lv_ok_code.
- WHEN 'EXIT'.
- LEAVE PROGRAM.
- WHEN 'CANCEL'.
- LEAVE PROGRAM.
- WHEN OTHERS.
- ENDCASE.
- ENDMODULE. " EXIT_0100 INPUT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement