You are on page 1of 3

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

*& Report ZR037_3


*
*&
*
*&---------------------------------------------------------------------*
*&
*
*&
*
*&---------------------------------------------------------------------*
*----------------------------------------------------------------------*
*
Academia ABAP
*
*----------------------------------------------------------------------*
* Programa: ZR030_3
*
* Autor:
Nedson / Gabriel
*
* Data:
21.05.2007
*
* Objetivo: Treinamento de Inserts
*
*----------------------------------------------------------------------*
*
Alteraes
*
*----------------------------------------------------------------------*
* Verso
Autor
Data
Observaes
*
*----------------------------------------------------------------------*
* 1.0
Nedson 20.05.2007
Desenvolvimento Inicial
*
*
*
*----------------------------------------------------------------------*
REPORT zr037_3 NO STANDARD PAGE HEADING
LINE-SIZE 100
LINE-COUNT 60(1).
TABLES vbak.
TABLES vbap.
TABLES vbuk.
*----------------------------------------------------------------------* Tipo
*----------------------------------------------------------------------TYPES: BEGIN OF y_vbak,
vbeln TYPE vbak-vbeln,
erdat TYPE vbak-erdat,
bstnk TYPE vbak-bstnk,
cmwae TYPE vbak-cmwae,
netwr TYPE vbak-netwr,
gbstk TYPE vbuk-gbstk,
END OF y_vbak.
Types: begin of y_vbap,
vbeln type vbap-vbeln,
posnr type vbap-posnr,
matnr type vbap-matnr,
arktx type vbap-arktx,
kmpmg type vbap-kmpmg,
netwr type vbap-netwr,
end of y_vbap.

*----------------------------------------------------------------------* Tabelas
*----------------------------------------------------------------------DATA: t_vbak TYPE TABLE OF y_vbak.
DATA: t_vbap TYPE TABLE OF y_vbap.
*----------------------------------------------------------------------* Work Areas

*----------------------------------------------------------------------DATA: w_vbak TYPE y_vbak,


w_vbap TYPE y_vbap.
*----------------------------------------------------------------------* Variaveis.
*----------------------------------------------------------------------DATA v_vbeln TYPE vbak-vbeln.
SELECTION-SCREEN BEGIN OF BLOCK bl1 WITH FRAME TITLE text-001.
SELECT-OPTIONS s_vbeln FOR vbak-vbeln.
SELECT-OPTIONS s_erdat FOR vbak-erdat.
SELECTION-SCREEN END OF BLOCK bl1.
SELECTION-SCREEN BEGIN OF BLOCK bl2 WITH FRAME TITLE text-002.
PARAMETER: p_cknp AS CHECKBOX.
PARAMETER: p_ckpp AS CHECKBOX.
PARAMETER: p_ckpc AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK bl2.
*----------------------------------------------------------------------* Inicio Programa
*----------------------------------------------------------------------INITIALIZATION.
*---------------------------------------------------------------------TOP-OF-PAGE.
*---------------------------------------------------------------------END-OF-PAGE.
*---------------------------------------------------------------------AT LINE-SELECTION.
CLEAR

w_vbap.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'


EXPORTING
input = sy-lisel+2(10)
IMPORTING
output = v_vbeln.
SELECT vbeln posnr matnr arktx kmpmg netwr
INTO TABLE t_vbap
FROM vbap
where vbeln = v_vbeln.

WINDOW STARTING AT 10 10 ENDING AT 100 100.


WRITE: / 'N do item', 'N do material', 'Denominao', 'Qtd. Ordem', 'Valor I.'.
loop at t_vbap into w_vbap.
CLEAR w_vbap.

WRITE: / w_vbap-posnr, w_vbap-matnr, w_vbap-arktx, w_vbap-kmpmg, w_vbap-netwr.


endloop.
*---------------------------------------------------------------------START-OF-SELECTION.
SELECT a~vbeln a~erdat a~bstnk a~cmwae a~netwr b~gbstk
INTO TABLE t_vbak
FROM vbak AS a INNER JOIN vbuk AS b ON a~vbeln = b~vbeln.

DELETE t_vbak WHERE vbeln NOT IN s_vbeln.


DELETE t_vbak WHERE erdat NOT IN s_erdat.
IF p_cknp = ' '.
DELETE t_vbak WHERE gbstk = 'A'.
ENDIF.
IF p_ckpp = ' '.
DELETE t_vbak WHERE gbstk = 'B'.
ENDIF.
IF p_ckpc = ' '.
DELETE t_vbak WHERE gbstk = 'C'.
ENDIF.
IF p_cknp = ' ' AND p_ckpp = ' ' AND p_ckpc = ' '.
MESSAGE 'Preencha!!!!!!!!!' TYPE 'S' DISPLAY LIKE 'E'.
EXIT.
ENDIF.
LOOP AT t_vbak INTO w_vbak.
WRITE: /'|',2(10) w_vbak-vbeln HOTSPOT,
'|',15(10) w_vbak-erdat,
'|',28(10) w_vbak-bstnk,
'|',40(10) w_vbak-cmwae,
'|',53(10) w_vbak-netwr,'|'.

You might also like