Advertisement
Guest User

Untitled

a guest
Apr 20th, 2018
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ABAP 5.50 KB | None | 0 0
  1. *&---------------------------------------------------------------------*
  2. *& Report  ZRAP05_EXERCICIO09
  3. *&
  4. *&---------------------------------------------------------------------*
  5. *&
  6. *&
  7. *&---------------------------------------------------------------------*
  8.  
  9. REPORT  zrap05_exercicio09.
  10.  
  11.  
  12. SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-001.
  13. SELECTION-SCREEN BEGIN OF BLOCK block2 WITH FRAME.
  14. PARAMETERS: r_inclu RADIOBUTTON GROUP g1 USER-COMMAND rb,
  15.             r_dele  RADIOBUTTON GROUP g1,
  16.             r_atua  RADIOBUTTON GROUP g1,
  17.             r_valor RADIOBUTTON GROUP g1,
  18.             r_gene  RADIOBUTTON GROUP g1.
  19. SELECTION-SCREEN END OF BLOCK block2.
  20.  
  21. SELECTION-SCREEN BEGIN OF BLOCK block3 WITH FRAME.
  22. PARAMETERS: p_cod_f  LIKE ztap05_filme-cod_filme MODIF ID m1,
  23.             p_cod_g  LIKE ztap05_genero-cod_gen  MODIF ID m2,
  24.             p_tipo_p LIKE ztap05_preco-tipo_preco MODIF ID m3,
  25.             p_titulo LIKE ztap05_filme-titulo MODIF ID m4,
  26.             p_valor  LIKE ztap05_preco-valor MODIF ID m5,
  27.             p_descri LIKE ztap05_genero-descricao MODIF ID m6.
  28. SELECTION-SCREEN END OF BLOCK block3.
  29. SELECTION-SCREEN END OF BLOCK block1.
  30.  
  31. *&---------------------------------------------------------------------*
  32. *&
  33. *&
  34. *&---------------------------------------------------------------------*
  35.  
  36.  
  37.  
  38.  
  39. *&---------------------------------------------------------------------*
  40. *&
  41. *&
  42. *&---------------------------------------------------------------------*
  43.  
  44.  
  45. DATA: wa_filme  TYPE ztap05_filme,
  46.       wa_preco  TYPE ztap05_preco,
  47.       wa_genero TYPE ztap05_genero.
  48.  
  49.  
  50. *&---------------------------------------------------------------------*
  51. *&
  52. *&                      START OF SELECTION
  53. *&---------------------------------------------------------------------*
  54.  
  55. START-OF-SELECTION.
  56.   IF r_inclu = 'X'.
  57.     PERFORM f_include.
  58.  
  59.   ELSEIF r_dele = 'X'.
  60.     PERFORM f_delete.
  61.  
  62.   ELSEIF r_atua = 'X'.
  63.     PERFORM f_atualizar.
  64.   ENDIF.
  65.  
  66.  
  67. *&---------------------------------------------------------------------*
  68. *&
  69. *&                        vou otimizar depois essa gambiarra
  70. *&---------------------------------------------------------------------*
  71. AT SELECTION-SCREEN OUTPUT.
  72.   LOOP AT SCREEN.
  73.     IF r_dele = 'X'.
  74.       IF screen-group1 = 'M2' OR screen-group1 = 'M3' OR screen-group1 = 'M4' OR screen-group1 = 'M5' OR screen-group1 = 'M6'.
  75.         screen-input = 0.
  76.         screen-invisible = 1.
  77.         MODIFY SCREEN.
  78.         CONTINUE.
  79.       ENDIF.
  80.  
  81.     ELSEIF r_gene = 'X'.
  82.       IF screen-group1 = 'M1' OR screen-group1 = 'M3' OR screen-group1 = 'M4' OR screen-group1 = 'M5'.
  83. *      IF screen-name = 'P_COD_F'.
  84.         screen-input = 0.
  85.         screen-invisible = 1.
  86.         MODIFY SCREEN.
  87.         CONTINUE.
  88.       ENDIF.
  89.     ELSEIF r_valor = 'X'.
  90.       IF screen-group1 = 'M1' OR screen-group1 = 'M2' OR screen-group1 = 'M4' OR screen-group1 = 'M6'.
  91.         screen-input = 0.
  92.         screen-invisible = 1.
  93.         MODIFY SCREEN.
  94.         CONTINUE.
  95.       ENDIF.
  96.     ENDIF.
  97.   ENDLOOP.
  98.  
  99.  
  100.  
  101.  
  102. *&---------------------------------------------------------------------*
  103. *&      Form  F_INCLUDE
  104. *&---------------------------------------------------------------------*
  105. *       text
  106. *----------------------------------------------------------------------*
  107. *  -->  p1        text
  108. *  <--  p2        text
  109. *----------------------------------------------------------------------*
  110. FORM f_include .
  111.   wa_filme-mandt      =  sy-mandt.
  112.   wa_filme-cod_filme  =  p_cod_f.
  113.   wa_filme-cod_gen    =  p_cod_g.
  114.   wa_filme-tipo_preco =  p_tipo_p.
  115.   wa_preco-tipo_preco =  p_tipo_p.
  116.   wa_genero-cod_gen   =  p_cod_g.
  117.   wa_genero-descricao =  p_descri.
  118.   wa_filme-titulo     =  p_titulo.
  119.   wa_preco-valor      =  p_valor.
  120.  
  121.   INSERT INTO ZTAP05_FILME VALUES wa_filme.
  122.  
  123.   "verifica se conseguiu inserir a linha na tabela com sucesso
  124.   IF sy-subrc = 0.
  125.       MESSAGE s000(ZCLAP05_EXERCICIO09).
  126.   ELSE.
  127.       MESSAGE e001(ZCLAP05_EXERCICIO09).
  128.   ENDIF.
  129. ENDFORM.                    " F_INCLUDE
  130.  
  131.  
  132.  
  133. *&---------------------------------------------------------------------*
  134. *&      Form  F_DELETE
  135. *&---------------------------------------------------------------------*
  136. *       text
  137. *----------------------------------------------------------------------*
  138. *  -->  p1        text
  139. *  <--  p2        text
  140. *----------------------------------------------------------------------*
  141. form F_DELETE .
  142.    DELETE FROM ZTAP05_FILME WHERE cod_filme = p_cod_f.
  143.  
  144.  
  145.    IF sy-subrc = 0.
  146.      MESSAGE s002(ZCLAP05_EXERCICIO09).
  147.    ELSE.
  148.      MESSAGE e003(ZCLAP05_EXERCICIO09).
  149.    ENDIF.
  150. endform.                    " F_DELETE
  151.  
  152.  
  153.  
  154.  
  155. *&---------------------------------------------------------------------*
  156. *&      Form  F_ATUALIZAR
  157. *&---------------------------------------------------------------------*
  158. *       text
  159. *----------------------------------------------------------------------*
  160. *  -->  p1        text
  161. *  <--  p2        text
  162. *----------------------------------------------------------------------*
  163. form F_ATUALIZAR .
  164.   wa_filme-mandt      =  sy-mandt.
  165.   wa_filme-cod_filme  =  p_cod_f.
  166.   wa_filme-cod_gen    =  p_cod_g.
  167.   wa_filme-tipo_preco =  p_tipo_p.
  168.   wa_preco-tipo_preco =  p_tipo_p.
  169.   wa_genero-cod_gen   =  p_cod_g.
  170.   wa_genero-descricao =  p_descri.
  171.   wa_filme-titulo     =  p_titulo.
  172.   wa_preco-valor      =  p_valor.
  173.  
  174.   UPDATE ZTAP05_FILME FROM wa_filme.
  175.  
  176.   IF sy-subrc = 0.
  177.     WRITE / 'sucesso'.
  178.   else.
  179.     write / 'falha'.
  180.   ENDIF.
  181. endform.                    " F_ATUALIZAR
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement