diff --git a/src/zbos_menu_request.prog.xml b/src/zbos_menu_request.prog.xml index 6b532d5..dfcb5ca 100644 --- a/src/zbos_menu_request.prog.xml +++ b/src/zbos_menu_request.prog.xml @@ -15,6 +15,12 @@ Menu de Resquest 16 + + S + SO_REQST + Requests + 16 + diff --git a/src/zbos_menu_request_f01.prog.abap b/src/zbos_menu_request_f01.prog.abap index 256b57b..9e42447 100644 --- a/src/zbos_menu_request_f01.prog.abap +++ b/src/zbos_menu_request_f01.prog.abap @@ -1,3 +1,88 @@ *&---------------------------------------------------------------------* *& Include ZBOS_MENU_REQUEST_F01 *&---------------------------------------------------------------------* + +*&---------------------------------------------------------------------* +*& Form f_initialization +*&---------------------------------------------------------------------* +FORM f_initialization . + +ENDFORM. + +*&---------------------------------------------------------------------* +*& Form f_processo_principal +*&---------------------------------------------------------------------* +FORM f_processo_principal . + + + BREAK-POINT. + +* DATA: lt_dados TYPE TABLE OF e071. + + + SELECT * + FROM e071 + INTO TABLE @DATA(lt_dados) + WHERE trkorr IN @so_reqst. + + + DATA lt_items TYPE TABLE OF tadir. + DATA ls_items TYPE tadir. + + SELECT * + FROM tadir + INTO TABLE lt_items + FOR ALL ENTRIES IN lt_dados + WHERE pgmid = lt_dados-pgmid + AND object = lt_dados-object + AND obj_name = lt_dados-obj_name(40) + AND devclass = 'ZBOS'. + + + BREAK-POINT. + + + DATA: lt_dados2 TYPE TABLE OF e071. + + SELECT * + FROM e071 + INTO TABLE lt_dados2 + WHERE trkorr = 'DESK968145'. + + SELECT * + FROM e071 + APPENDING TABLE lt_dados2 + WHERE trkorr = 'DESK969392'. + + + + SELECT * + FROM e071 + APPENDING TABLE lt_dados2 + WHERE trkorr = 'DESK969401'. + + SELECT * + FROM e071 + APPENDING TABLE lt_dados2 + WHERE trkorr = 'DESK969403'. + + + LOOP AT lt_items INTO DATA(ls_item). + + DATA(lv_tabix) = sy-tabix. + + READ TABLE lt_dados2 WITH KEY pgmid = ls_item-pgmid + object = ls_item-object + obj_name = ls_item-obj_name TRANSPORTING NO FIELDS. + + IF sy-subrc IS INITIAL. + + DELETE lt_items INDEX lv_tabix. + + ENDIF. + + ENDLOOP. + + BREAK-POINT. + +ENDFORM. diff --git a/src/zbos_menu_request_scr.prog.abap b/src/zbos_menu_request_scr.prog.abap index 17cf382..9d2fd7c 100644 --- a/src/zbos_menu_request_scr.prog.abap +++ b/src/zbos_menu_request_scr.prog.abap @@ -1,3 +1,10 @@ *&---------------------------------------------------------------------* *& Include ZBOS_MENU_REQUEST_SCR *&---------------------------------------------------------------------* + + +SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-t01. "" Colocar texto + + SELECT-OPTIONS: so_reqst FOR wa_e070-trkorr NO INTERVALS. + +SELECTION-SCREEN END OF BLOCK b1. diff --git a/src/zbos_menu_request_start.prog.abap b/src/zbos_menu_request_start.prog.abap index 5a4b73d..f29423c 100644 --- a/src/zbos_menu_request_start.prog.abap +++ b/src/zbos_menu_request_start.prog.abap @@ -1,3 +1,15 @@ *&---------------------------------------------------------------------* *& Include ZBOS_MENU_REQUEST_START *&---------------------------------------------------------------------* + +*----------------------------------------------------------------------* +INITIALIZATION. +*----------------------------------------------------------------------* + + PERFORM f_initialization. + +*----------------------------------------------------------------------* +START-OF-SELECTION. +*----------------------------------------------------------------------* + + PERFORM f_processo_principal. diff --git a/src/zbos_menu_request_top.prog.abap b/src/zbos_menu_request_top.prog.abap index f9442ed..05a0f85 100644 --- a/src/zbos_menu_request_top.prog.abap +++ b/src/zbos_menu_request_top.prog.abap @@ -1,3 +1,42 @@ *&---------------------------------------------------------------------* *& Include ZBOS_MENU_REQUEST_TOP *&---------------------------------------------------------------------* + +*----------------------------------------- +* Tipos +*----------------------------------------- +TYPES: y_e070 TYPE e070. + +*----------------------------------------- +* Constantes +*----------------------------------------- + + +*----------------------------------------- +* Tables +*----------------------------------------- +*TABLES: /vtin/_mde_emp. +** /vtin/_xml_rec. + +*--------------------------------------------------------------------* +* Ranges +*--------------------------------------------------------------------* +*DATA r_model TYPE RANGE OF /vtin/_xml_rec-model. + +*--------------------------------------------------------------------* +* Internal Table +*--------------------------------------------------------------------* +*DATA: gt_cnpj TYPE TABLE OF j_1bcgc, +* gt_mde_emp TYPE TABLE OF /vtin/_mde_emp, +* gt_xml TYPE ty_xmlrawstring. + +*--------------------------------------------------------------------* +*Structure +*--------------------------------------------------------------------* +DATA: wa_e070 TYPE y_e070. + +*--------------------------------------------------------------------* +*Variaveis +*--------------------------------------------------------------------* + +*DATA: gv_xml_migrados(1) TYPE c. diff --git a/src/zbos_teste.prog.abap b/src/zbos_teste.prog.abap index d71ce09..88b5e02 100644 --- a/src/zbos_teste.prog.abap +++ b/src/zbos_teste.prog.abap @@ -5,75 +5,124 @@ *&---------------------------------------------------------------------* REPORT zbos_teste. - -DATA :op(1) TYPE c, - valor1 TYPE f, - valor2 TYPE f, - resultado TYPE f. +** +**DATA :op(1) TYPE c, +** valor1 TYPE f, +** valor2 TYPE f, +** resultado TYPE f. +** +** +**op = '*'. +** +**valor1 = 12. +**valor2 = ( '3' ) . +** +** +**resultado = valor1 * valor2. +** +**BREAK-POINT. -op = '*'. +***DATA: lo_alv_grid TYPE REF TO cl_gui_alv_grid, +*** lo_grid TYPE REF TO object. +*** +***CREATE OBJECT lo_alv_grid +*** EXPORTING +*** i_parent = cl_gui_container=>default_screen. +*** +***lo_grid = lo_alv_grid. "Up cast implĂ­cito +*** +***CLEAR lo_alv_grid. +*** +***lo_alv_grid = CAST #( lo_grid ). "Down cast explĂ­cito +*** +***FREE: lo_grid, lo_alv_grid . +*** -valor1 = 12. -valor2 = ( '3' ) . +* cl_message_helper=>set_msg_vars_for_clike( lv_msg ). -resultado = valor1 * valor2. +DATA: + gt_data TYPE TABLE OF sflight, + g_grid TYPE REF TO cl_gui_alv_grid. -BREAK-POINT. +CONSTANTS: + c_max_rows TYPE i VALUE 100. + +CALL SCREEN 100. + +*&---------------------------------------------------------------------* +*& Form read_data +*&---------------------------------------------------------------------* +FORM read_data. +** SELECT * +** INTO CORRESPONDING FIELDS OF TABLE gt_data +** FROM sflight +** UP TO c_max_rows ROWS. -* -*DATA: -* gt_data TYPE TABLE OF sflight, -* g_grid TYPE REF TO cl_gui_alv_grid. -* -*CONSTANTS: -* c_max_rows TYPE i VALUE 100. -* -*CALL SCREEN 100. -* -**&---------------------------------------------------------------------* -**& Form read_data -**&---------------------------------------------------------------------* -*FORM read_data. -* SELECT * INTO CORRESPONDING FIELDS OF TABLE gt_data -* FROM sflight -* UP TO c_max_rows ROWS. -*ENDFORM. -* -**&---------------------------------------------------------------------* -**& Form display_grid -**&---------------------------------------------------------------------* -*FORM display_grid. -* CREATE OBJECT g_grid -* EXPORTING -* i_parent = cl_gui_container=>default_screen. -* -* CALL METHOD g_grid->set_table_for_first_display -* EXPORTING -* i_structure_name = 'SFLIGHT' -* CHANGING -* it_outtab = gt_data -* EXCEPTIONS -* invalid_parameter_combination = 1 -* program_error = 2 -* too_many_lines = 3 -* OTHERS = 4. -* IF sy-subrc <> 0. -* MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno -* WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. -* ENDIF. -*ENDFORM. -**&---------------------------------------------------------------------* -**& Module STATUS_0100 OUTPUT -**&---------------------------------------------------------------------* -**& -**&---------------------------------------------------------------------* -*MODULE status_0100 OUTPUT. -* PERFORM read_data. -* PERFORM display_grid. -*ENDMODULE. + SELECT * + INTO TABLE gt_data + FROM sflight + UP TO c_max_rows ROWS. + + + + +ENDFORM. + +*&---------------------------------------------------------------------* +*& Form display_grid +*&---------------------------------------------------------------------* +FORM display_grid. + CREATE OBJECT g_grid + EXPORTING + i_parent = cl_gui_container=>default_screen. + + CALL METHOD g_grid->set_table_for_first_display + EXPORTING + i_structure_name = 'SFLIGHT' + CHANGING + it_outtab = gt_data + EXCEPTIONS + invalid_parameter_combination = 1 + program_error = 2 + too_many_lines = 3 + OTHERS = 4. + IF sy-subrc <> 0. + MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno + WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. + ENDIF. +ENDFORM. +*&---------------------------------------------------------------------* +*& Module STATUS_0100 OUTPUT +*&---------------------------------------------------------------------* +*& +*&---------------------------------------------------------------------* +MODULE status_0100 OUTPUT. + PERFORM read_data. + PERFORM display_grid. +ENDMODULE. +*&---------------------------------------------------------------------* +*& Module USER_COMMAND_0100 INPUT +*&---------------------------------------------------------------------* +* text +*----------------------------------------------------------------------* +MODULE user_command_0100 INPUT. + + CALL METHOD cl_gui_cfw=>dispatch. + CASE sy-ucomm. + WHEN 'BACK'. + CLEAR sy-ucomm. + LEAVE TO SCREEN 0. + WHEN 'EXIT'. + LEAVE PROGRAM. + WHEN 'CANCEL'. + CLEAR sy-ucomm. + LEAVE TO SCREEN 0. + ENDCASE. + +ENDMODULE. diff --git a/src/zbos_teste.prog.xml b/src/zbos_teste.prog.xml index 3b67c67..48546d1 100644 --- a/src/zbos_teste.prog.xml +++ b/src/zbos_teste.prog.xml @@ -52,7 +52,7 @@ PROCESS AFTER INPUT. - * MODULE USER_COMMAND_0100. + MODULE USER_COMMAND_0100.