Módulo: DRAWBACK
Funcionalidade: Composição
Data/Hora da Publicação: 01/11/2007 00:00:00
Data/Hora Última Alteração: 17/02/2011 15:13:28
Descrição da Nota: SELEÇÃO DAS COMERCIAIS EXPORTADORAS NA COMPOSIÇÃO DE ISENÇÃO
Sintoma
O programa não esta deletando corretamente os itens na composição de isenção.
Solução
Correção na seleção dos dados.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 05130 Data: 01/11/2007 Hora: 10:21:40
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 05130
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00003
Agrupamento : 00019
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
05100 - 00001 - 7.0 - 00003 - DUMP TIME OUT NA SELEÇÃO DAS EXPORTAÇÕES
----------------------------------------------------------------------------------------------------
SELEÇÃO DAS COMERCIAIS EXPORTADORAS NA COMPOSIÇÃO DE ISENÇÃO
----------------------------------------------------------------------------------------------------
Palavras Chave:
COMERCIAL EXPORTADORA DRAWBACK COMPOSIÇÃO DE ISENÇÃO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI064F03
REPS /PWS/MZYCI064I01
REPS /PWS/MZYCI064O01
REPS /PWS/MZYCI064X01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI064F03
...
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ELSE.
PERFORM testa_nao_vinculacao.
ENDIF.
PERFORM trata_ordem_venda3.
REFRESH itab_mess_un.
LOOP AT itab_re_final.
* >> Início da inclusão: FORM SELECIONAR_EXPORTACOES3
IF v_count EQ 100.
* << Fim da inclusão
v_pct = 30.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-298.
* >> Início da inclusão: FORM SELECIONAR_EXPORTACOES3
CLEAR: v_count .
ENDIF.
ADD 1 TO v_count.
* << Fim da inclusão
CHECK NOT itab_re_final-matnr IS INITIAL.
IF /pws/zycit321-ltopc NE '1'.
READ TABLE itab_zycit281 WITH KEY matnr = itab_re_final-matnr
werks = itab_re_final-werks.
IF sy-subrc NE 0.
SELECT SINGLE a~wrk02
FROM ( t460a AS a INNER JOIN marc AS b ON
a~werks EQ b~werks AND
a~sobsl EQ b~sobsl AND
a~beskz EQ b~beskz )
...
...
itab_det_exp-qtd_iten TO v_qtd_0305 ,
itab_det_exp-nrseqre TO /pws/zycie259d-nrseqre ,
itab_det_exp-nrre TO /pws/zycie259d-nrre ,
itab_det_exp-nfnum TO /pws/zycie259d-nfnum ,
itab_det_exp-serie TO /pws/zycie259d-serie ,
itab_det_exp-nrseqc TO /pws/zycie259d-nrseqc ,
itab_det_exp-dtnf TO /pws/zycie259d-dtnf ,
itab_det_exp-dtre TO /pws/zycie259d-dtre ,
itab_det_exp-lote TO /pws/zycie259d-lote ,
itab_det_exp-nrseq TO /pws/zycie259d-nrseq ,
* >> Início da inclusão: FORM TRATA_TAB_VINC3
itab_det_exp-nrseqc TO /pws/zycie259d-nrseqc ,
* << Fim da inclusão
itab_det_exp-dtemb TO /pws/zycie259d-dtemb ,
itab_det_exp-vbeln_va TO /pws/zycie259d-vbeln_va,
itab_det_exp-vbeln_vf TO /pws/zycie259d-vbeln_vf,
itab_det_exp-posnr TO /pws/zycie259d-posnr ,
itab_det_exp-stlnr TO /pws/zycie259d-stlnr ,
itab_det_exp-stlal TO /pws/zycie259d-stlal ,
itab_det_exp-stlan TO /pws/zycie259d-stlan ,
/pws/zycie258-werks TO /pws/zycie259d-werks .
CLEAR: itab_comp_vinc. REFRESH: itab_comp_vinc.
LOOP AT itab_comp_vinc_final.
CHECK itab_comp_vinc_final-codmat EQ /pws/zycie259d-codmat AND
itab_comp_vinc_final-nrseqre EQ /pws/zycie259d-nrseqre AND
itab_comp_vinc_final-nrseq EQ /pws/zycie259d-nrseq AND
* >> Início da inclusão: FORM TRATA_TAB_VINC3
itab_comp_vinc_final-nrseqc EQ /pws/zycie259d-nrseqc AND
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va EQ /pws/zycie259d-vbeln_va AND
itab_comp_vinc_final-vbeln_vf EQ /pws/zycie259d-vbeln_vf AND
itab_comp_vinc_final-posnr EQ /pws/zycie259d-posnr.
MOVE-CORRESPONDING itab_comp_vinc_final TO itab_comp_vinc.
IF itab_comp_vinc-qtd_orig IS INITIAL.
IF /pws/zycit321-lote EQ space.
itab_comp_vinc-qtd_orig = v_qtd_0305 * itab_comp_vinc-qtd_iten.
ELSE.
itab_comp_vinc-qtd_orig = itab_comp_vinc-qtd_total.
itab_comp_vinc-qtd_iten = itab_comp_vinc-qtd_total / v_qtd_0305.
...
...
CLEAR: v_indicatu6.
MESSAGE s015 WITH text-104.
EXIT.
ENDIF.
MOVE: sy-tabix TO v_indicatu6.
CLEAR: itab_di. REFRESH: itab_di.
LOOP AT itab_di_final WHERE
codmat EQ itab_comp_vinc-codmat AND
nrseqre EQ itab_comp_vinc-nrseqre AND
nrseq EQ itab_comp_vinc-nrseq AND
* >> Início da inclusão: FORM TRATA_TAB_VDI3
nrseqc EQ itab_comp_vinc-nrseqc AND
* << Fim da inclusão
vbeln_va EQ itab_comp_vinc-vbeln_va AND
vbeln_vf EQ itab_comp_vinc-vbeln_vf AND
posnr EQ itab_comp_vinc-posnr.
IF /pws/zycit321-it_ge EQ 'X'.
CHECK itab_di_final-grupo EQ itab_comp_vinc-grupo.
ELSE.
CHECK itab_di_final-codcomp EQ itab_comp_vinc-codcomp.
ENDIF.
IF itab_di_final-sdo_qtd > 0
OR itab_di_final-qtd_vinc > 0 .
...
...
itab_det_exp-posnr TO /pws/zycie259d-posnr ,
itab_det_exp-stlal TO /pws/zycie259d-stlal ,
itab_det_exp-stlan TO /pws/zycie259d-stlan ,
itab_det_exp-stlnr TO /pws/zycie259d-stlnr ,
/pws/zycie258-werks TO /pws/zycie259d-werks .
CLEAR: itab_comp_vinc. REFRESH: itab_comp_vinc.
LOOP AT itab_comp_vinc_final.
CHECK itab_comp_vinc_final-codmat EQ /pws/zycie259d-codmat AND
itab_comp_vinc_final-nrseqre EQ /pws/zycie259d-nrseqre AND
itab_comp_vinc_final-nrseq EQ /pws/zycie259d-nrseq AND
* >> Início da inclusão: FORM TRATA_BUTTON_FIRST_0305
itab_comp_vinc_final-nrseqc EQ /pws/zycie259d-nrseqc AND
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va EQ /pws/zycie259d-vbeln_va AND
itab_comp_vinc_final-vbeln_vf EQ /pws/zycie259d-vbeln_vf AND
itab_comp_vinc_final-posnr EQ /pws/zycie259d-posnr.
MOVE-CORRESPONDING itab_comp_vinc_final TO itab_comp_vinc.
APPEND itab_comp_vinc.
ENDLOOP.
ENDIF.
ENDFORM.
FORM trata_button_prior_0305.
IF pressed_tab_3c_2 NE 'FS_VINC3'.
...
...
itab_det_exp-posnr TO /pws/zycie259d-posnr ,
itab_det_exp-stlal TO /pws/zycie259d-stlal ,
itab_det_exp-stlan TO /pws/zycie259d-stlan ,
itab_det_exp-stlnr TO /pws/zycie259d-stlnr ,
/pws/zycie258-werks TO /pws/zycie259d-werks .
CLEAR: itab_comp_vinc. REFRESH: itab_comp_vinc.
LOOP AT itab_comp_vinc_final.
CHECK itab_comp_vinc_final-codmat EQ /pws/zycie259d-codmat AND
itab_comp_vinc_final-nrseqre EQ /pws/zycie259d-nrseqre AND
itab_comp_vinc_final-nrseq EQ /pws/zycie259d-nrseq AND
* >> Início da inclusão: FORM TRATA_BUTTON_PRIOR_0305
itab_comp_vinc_final-nrseqc EQ /pws/zycie259d-nrseqc AND
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va EQ /pws/zycie259d-vbeln_va AND
itab_comp_vinc_final-vbeln_vf EQ /pws/zycie259d-vbeln_vf AND
itab_comp_vinc_final-posnr EQ /pws/zycie259d-posnr.
MOVE-CORRESPONDING itab_comp_vinc_final TO itab_comp_vinc.
APPEND itab_comp_vinc.
ENDLOOP.
ENDIF.
ENDFORM.
FORM trata_button_next_0305.
IF pressed_tab_3c_2 NE 'FS_VINC3'.
...
...
itab_det_exp-posnr TO /pws/zycie259d-posnr ,
itab_det_exp-stlal TO /pws/zycie259d-stlal ,
itab_det_exp-stlan TO /pws/zycie259d-stlan ,
itab_det_exp-stlnr TO /pws/zycie259d-stlnr ,
/pws/zycie258-werks TO /pws/zycie259d-werks .
CLEAR: itab_comp_vinc. REFRESH: itab_comp_vinc.
LOOP AT itab_comp_vinc_final.
CHECK itab_comp_vinc_final-codmat EQ /pws/zycie259d-codmat AND
itab_comp_vinc_final-nrseqre EQ /pws/zycie259d-nrseqre AND
itab_comp_vinc_final-nrseq EQ /pws/zycie259d-nrseq AND
* >> Início da inclusão: FORM TRATA_BUTTON_NEXT_0305
itab_comp_vinc_final-nrseqc EQ /pws/zycie259d-nrseqc AND
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va EQ /pws/zycie259d-vbeln_va AND
itab_comp_vinc_final-vbeln_vf EQ /pws/zycie259d-vbeln_vf AND
itab_comp_vinc_final-posnr EQ /pws/zycie259d-posnr.
MOVE-CORRESPONDING itab_comp_vinc_final TO itab_comp_vinc.
APPEND itab_comp_vinc.
ENDLOOP.
ENDIF.
ENDFORM.
FORM trata_button_last_0305.
IF pressed_tab_3c_2 NE 'FS_VINC3'.
...
...
itab_det_exp-posnr TO /pws/zycie259d-posnr ,
itab_det_exp-stlal TO /pws/zycie259d-stlal ,
itab_det_exp-stlan TO /pws/zycie259d-stlan ,
itab_det_exp-stlnr TO /pws/zycie259d-stlnr ,
/pws/zycie258-werks TO /pws/zycie259d-werks .
CLEAR: itab_comp_vinc. REFRESH: itab_comp_vinc.
LOOP AT itab_comp_vinc_final.
CHECK itab_comp_vinc_final-codmat EQ /pws/zycie259d-codmat AND
itab_comp_vinc_final-nrseqre EQ /pws/zycie259d-nrseqre AND
itab_comp_vinc_final-nrseq EQ /pws/zycie259d-nrseq AND
* >> Início da inclusão: FORM TRATA_BUTTON_LAST_0305
itab_comp_vinc_final-nrseqc EQ /pws/zycie259d-nrseqc AND
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va EQ /pws/zycie259d-vbeln_va AND
itab_comp_vinc_final-vbeln_vf EQ /pws/zycie259d-vbeln_vf AND
itab_comp_vinc_final-posnr EQ /pws/zycie259d-posnr.
MOVE-CORRESPONDING itab_comp_vinc_final TO itab_comp_vinc.
APPEND itab_comp_vinc.
ENDLOOP.
ENDIF.
ENDFORM.
FORM verifica_componentes3.
DATA: v_qtdbase LIKE itab_stko-bmeng.
...
...
EXIT.
ENDIF.
ENDIF.
ENDIF.
REFRESH: itab_insumo_di.
IF /pws/zycit321-lote IS INITIAL.
LOOP AT itab_det_exp.
CLEAR: it_stpox, it_stpox2. REFRESH: it_stpox, it_stpox2.
READ TABLE itab_comp_vinc WITH KEY nrseqre = itab_det_exp-nrseqre
nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM VERIFICA_COMPONENTES3
nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
codmat = itab_det_exp-codmat
vbeln_va = itab_det_exp-vbeln_va
vbeln_vf = itab_det_exp-vbeln_vf
posnr = itab_det_exp-posnr.
IF sy-subrc EQ 0.
CONTINUE.
ENDIF.
v_verif_v = 'X'.
CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
EXPORTING
...
...
CLEAR itab_marc. REFRESH itab_marc.
SELECT * FROM marc INTO TABLE itab_marc
FOR ALL ENTRIES IN i_final
WHERE matnr EQ i_final-insumo
AND werks EQ itab_det_exp-werks.
ENDIF.
READ TABLE itab_comp_vinc_final WITH KEY
codmat = itab_det_exp-codmat
nrseqre = itab_det_exp-nrseqre
nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM VERIFICA_COMPONENTES3
nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
vbeln_va = itab_det_exp-vbeln_va
vbeln_vf = itab_det_exp-vbeln_vf
posnr = itab_det_exp-posnr.
IF sy-subrc NE 0.
IF itab_zycit433[] IS INITIAL.
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433.
ENDIF.
LOOP AT i_final.
CLEAR: itab_zycit433.
READ TABLE itab_zycit433 WITH KEY matnr = i_final-insumo.
...
...
CONTINUE.
ENDIF.
ENDIF.
READ TABLE itab_mbew WITH KEY matnr = i_final-insumo.
CLEAR itab_comp_vinc_final.
MOVE:
/pws/zycie258-nrseqd TO itab_comp_vinc_final-nrseqd ,
itab_det_exp-codmat TO itab_comp_vinc_final-codmat ,
itab_det_exp-nrseqre TO itab_comp_vinc_final-nrseqre ,
itab_det_exp-nrseq TO itab_comp_vinc_final-nrseq ,
* >> Início da inclusão: FORM VERIFICA_COMPONENTES3
itab_det_exp-nrseqc TO itab_comp_vinc_final-nrseqc ,
* << Fim da inclusão
itab_det_exp-vbeln_va TO itab_comp_vinc_final-vbeln_va,
itab_det_exp-vbeln_vf TO itab_comp_vinc_final-vbeln_vf,
itab_zycit433-grupo TO itab_comp_vinc_final-grupo ,
itab_zycit433-desc_g TO itab_comp_vinc_final-desc_g ,
itab_det_exp-posnr TO itab_comp_vinc_final-posnr ,
i_final-insumo TO itab_comp_vinc_final-codcomp .
itab_comp_vinc_final-grupo = itab_zycit433-grupo.
itab_comp_vinc_final-qtd_iten = i_final-qtunit.
PERFORM converte_um_base USING i_final-insumo
CHANGING i_final-meins
...
...
ENDLOOP.
REFRESH: itab_ekpo.
itab_ekpo[] = itab_ekpo_sort[] .
REFRESH itab_mess_un.
SORT itab_det_exp BY dtre nrseqre.
REFRESH itab_comp_sort3.
LOOP AT itab_det_exp.
LOOP AT itab_comp_vinc_final WHERE codmat = itab_det_exp-codmat
AND nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM SELECIONA_DI3
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr.
itab_comp_sort3 = itab_comp_vinc_final.
APPEND itab_comp_sort3.
ENDLOOP.
ENDLOOP.
REFRESH itab_comp_vinc_final.
itab_comp_vinc_final[] = itab_comp_sort3[].
IF /pws/zycit321-it_ge EQ 'X'.
ELSE.
ENDIF.
* >> Início da inclusão: FORM SELECIONA_DI3
CLEAR: v_count .
* << Fim da inclusão
LOOP AT itab_comp_vinc_final.
READ TABLE itab_det_exp WITH KEY
codmat = itab_comp_vinc_final-codmat
nrseqre = itab_comp_vinc_final-nrseqre
nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM SELECIONA_DI3
nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
vbeln_va = itab_comp_vinc_final-vbeln_va
vbeln_vf = itab_comp_vinc_final-vbeln_vf
...
...
v_dtini(4) = v_dtini(4) - 2.
v_dtfim = itab_det_exp-dtre.
ELSE.
v_dtini = /pws/zycie258-dtpr.
v_dtini(4) = v_dtini(4) - 2.
v_dtfim = itab_det_exp-dtnf.
ENDIF.
IF /pws/zycit321-it_ge EQ 'X'.
LOOP AT itab_zycit100_sort
WHERE grupo EQ itab_comp_vinc_final-grupo.
* >> Início da inclusão: FORM SELECIONA_DI3
IF v_count EQ 100.
* << Fim da inclusão
v_pct = 0.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-297.
* >> Início da inclusão: FORM SELECIONA_DI3
CLEAR: v_count .
ENDIF.
ADD 1 TO v_count.
* << Fim da inclusão
PERFORM monta_dis3.
ENDLOOP.
ELSE.
LOOP AT itab_zycit100_sort
WHERE matnr EQ itab_comp_vinc_final-codcomp.
* >> Início da inclusão: FORM SELECIONA_DI3
IF v_count EQ 100.
* << Fim da inclusão
v_pct = 0.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-297.
* >> Início da inclusão: FORM SELECIONA_DI3
CLEAR: v_count .
ENDIF.
ADD 1 TO v_count.
* << Fim da inclusão
PERFORM monta_dis3.
ENDLOOP.
ENDIF.
ENDLOOP.
LOOP AT itab_di_final.
v_pct = 0.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-297.
...
...
DATA: v_qtd_iten LIKE /pws/zycie259-qtd_iten,
v_vlfob LIKE /pws/zycie259-vlfob .
CLEAR: v_qtd_iten, v_vlfob.
IF pressed_tab_3c_2 EQ 'FS_RESUMO3'.
itab_di_final_aux[] = itab_di_final[].
LOOP AT itab_resumo WHERE marc_l = 'X'.
LOOP AT itab_det_exp_final WHERE codmat = itab_resumo-codmat.
LOOP AT itab_comp_vinc_final WHERE
nrseqre = itab_det_exp_final-nrseqre
AND nrseq = itab_det_exp_final-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_det_exp_final-nrseqc
* << Fim da inclusão
AND codmat = itab_det_exp_final-codmat
AND vbeln_va = itab_det_exp_final-vbeln_va
AND vbeln_vf = itab_det_exp_final-vbeln_vf
AND posnr = itab_det_exp_final-posnr.
LOOP AT itab_di_final WHERE
nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND
( codcomp = itab_comp_vinc_final-codcomp
OR grupo EQ itab_comp_vinc_final-grupo ).
v_tabix2 = sy-tabix.
LOOP AT itab_di_final_aux WHERE
codcomp EQ itab_di_final-codcomp AND
...
...
ebelp EQ itab_di_final-ebelp AND
docnum EQ itab_di_final-docnum AND
itmnum EQ itab_di_final-itmnum AND
nrseqemb EQ itab_di_final-nrseqemb.
IF
( itab_di_final_aux-nrseqre NE itab_det_exp_final-nrseqre OR
itab_di_final_aux-vbeln_va NE itab_det_exp_final-vbeln_va OR
itab_di_final_aux-vbeln_vf NE itab_det_exp_final-vbeln_vf OR
itab_di_final_aux-posnr NE itab_det_exp_final-posnr OR
itab_di_final_aux-nrseq NE itab_det_exp_final-nrseq OR
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
itab_di_final_aux-nrseqc NE itab_det_exp_final-nrseqc OR
* << Fim da inclusão
itab_di_final_aux-codmat NE itab_det_exp_final-codmat ).
itab_di_final_aux-sdo_qtd =
itab_di_final_aux-sdo_qtd + itab_di_final-qtd_vinc.
MODIFY itab_di_final_aux.
ENDIF.
ENDLOOP.
DELETE itab_di_final_aux INDEX v_tabix2.
DELETE itab_di_final INDEX v_tabix2.
ENDLOOP.
DELETE itab_comp_vinc_final.
...
...
ENDLOOP.
itab_di_final[] = itab_di_final_aux[].
EXIT.
ENDIF.
IF pressed_tab_3c_2 EQ 'FS_DETALHE3'.
itab_di_final_aux[] = itab_di_final[].
LOOP AT itab_det_exp WHERE marcd_l = 'X'.
LOOP AT itab_comp_vinc_final WHERE
nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND codmat = itab_det_exp-codmat
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr.
LOOP AT itab_di_final WHERE
nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND
( codcomp = itab_comp_vinc_final-codcomp
OR grupo EQ itab_comp_vinc_final-grupo ).
v_tabix2 = sy-tabix.
LOOP AT itab_di_final_aux WHERE
codcomp EQ itab_di_final-codcomp AND
...
...
ebeln EQ itab_di_final-ebeln AND
ebelp EQ itab_di_final-ebelp AND
docnum EQ itab_di_final-docnum AND
itmnum EQ itab_di_final-itmnum AND
nrseqemb EQ itab_di_final-nrseqemb.
IF ( itab_di_final_aux-nrseqre NE itab_det_exp-nrseqre OR
itab_di_final_aux-vbeln_va NE itab_det_exp-vbeln_va OR
itab_di_final_aux-vbeln_vf NE itab_det_exp-vbeln_vf OR
itab_di_final_aux-posnr NE itab_det_exp-posnr OR
itab_di_final_aux-nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
itab_di_final_aux-nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
itab_di_final_aux-codmat NE itab_det_exp-codmat ).
itab_di_final_aux-sdo_qtd =
itab_di_final_aux-sdo_qtd + itab_di_final-qtd_vinc.
MODIFY itab_di_final_aux INDEX sy-tabix.
ENDIF.
ENDLOOP.
DELETE itab_di_final_aux INDEX v_tabix2.
DELETE itab_di_final INDEX v_tabix2.
ENDLOOP.
DELETE itab_comp_vinc_final.
ENDLOOP.
DELETE itab_det_exp_final WHERE nrseqre = itab_det_exp-nrseqre
AND codmat = itab_det_exp-codmat
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr.
DELETE itab_det_exp.
ENDLOOP.
LOOP AT itab_det_exp.
v_qtd_iten = v_qtd_iten + itab_det_exp-qtd_iten.
v_vlfob = v_vlfob + itab_det_exp-vlfob.
ENDLOOP.
itab_resumo-qtd_iten = v_qtd_iten.
...
...
/pws/zycie259d-vlfob = itab_resumo-vlfob.
itab_di_final[] = itab_di_final_aux[].
EXIT.
ENDIF.
IF pressed_tab_3c_2 EQ 'FS_VINC3'.
itab_di_final_aux[] = itab_di_final[].
LOOP AT itab_comp_vinc WHERE marc_cp EQ 'X'.
LOOP AT itab_di_final WHERE
nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND ( codcomp = itab_comp_vinc-codcomp
OR grupo EQ itab_comp_vinc-grupo ).
v_tabix2 = sy-tabix.
LOOP AT itab_di_final_aux WHERE
codcomp EQ itab_di_final-codcomp AND
nrdi EQ itab_di_final-nrdi AND
ebeln EQ itab_di_final-ebeln AND
ebelp EQ itab_di_final-ebelp AND
nrseqemb EQ itab_di_final-nrseqemb.
IF ( itab_di_final_aux-nrseqre NE itab_det_exp-nrseqre OR
itab_di_final_aux-vbeln_va NE itab_det_exp-vbeln_va OR
itab_di_final_aux-vbeln_vf NE itab_det_exp-vbeln_vf OR
itab_di_final_aux-posnr NE itab_det_exp-posnr OR
itab_di_final_aux-nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
itab_di_final_aux-nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
itab_di_final_aux-codmat NE itab_det_exp-codmat ).
itab_di_final_aux-sdo_qtd =
itab_di_final_aux-sdo_qtd + itab_di_final-qtd_vinc.
MODIFY itab_di_final_aux INDEX sy-tabix.
ENDIF.
ENDLOOP.
DELETE itab_di_final_aux INDEX v_tabix2.
DELETE itab_di_final INDEX v_tabix2.
ENDLOOP.
IF /pws/zycit321-it_ge IS INITIAL.
DELETE itab_comp_vinc_final WHERE
nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp.
ELSE.
DELETE itab_comp_vinc_final WHERE
nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_EXCLM3
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND grupo = itab_comp_vinc-grupo.
ENDIF.
DELETE itab_comp_vinc.
ENDLOOP.
itab_di_final[] = itab_di_final_aux[].
EXIT.
...
...
IF NOT /pws/zycie258-aprovado IS INITIAL.
MESSAGE s015 WITH text-114.
EXIT.
ENDIF.
LOOP AT itab_det_exp_final.
CLEAR: v_vtc, v_ex_vinc.
v_execloop = 'N'.
LOOP AT itab_comp_vinc_final
WHERE nrseqre = itab_det_exp_final-nrseqre
AND nrseq = itab_det_exp_final-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_APROV3
AND nrseqc = itab_det_exp_final-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp_final-vbeln_va
AND vbeln_vf = itab_det_exp_final-vbeln_vf
AND posnr = itab_det_exp_final-posnr
AND codmat = itab_det_exp_final-codmat.
v_execloop = 'S'.
IF itab_comp_vinc_final-qtd_stotal > 0 AND
itab_comp_vinc_final-qtd_stotal < itab_comp_vinc_final-qtd_total.
v_vtc = 'P'.
EXIT.
ELSEIF itab_comp_vinc_final-qtd_stotal > 0.
...
...
ENDLOOP.
IF v_execloop EQ 'N'.
MESSAGE s015 WITH text-116 text-117.
EXIT.
ENDIF.
itab_di_final_aux[] = itab_di_final[].
LOOP AT itab_det_exp_final WHERE vinc_tot NE 'X'.
LOOP AT itab_comp_vinc_final WHERE
nrseqre = itab_det_exp_final-nrseqre
AND nrseq = itab_det_exp_final-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_APROV3
AND nrseqc = itab_det_exp_final-nrseqc
* << Fim da inclusão
AND codmat = itab_det_exp_final-codmat
AND vbeln_va = itab_det_exp_final-vbeln_va
AND vbeln_vf = itab_det_exp_final-vbeln_vf
AND posnr = itab_det_exp_final-posnr.
LOOP AT itab_di_final WHERE
nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM TRATA_BUTTON_APROV3
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp.
v_tabix2 = sy-tabix.
LOOP AT itab_di_final_aux WHERE
codcomp EQ itab_di_final-codcomp AND
nrdi EQ itab_di_final-nrdi AND
ebeln EQ itab_di_final-ebeln AND
ebelp EQ itab_di_final-ebelp AND
nrseqemb EQ itab_di_final-nrseqemb.
IF (
itab_di_final_aux-nrseqre NE itab_det_exp_final-nrseqre OR
itab_di_final_aux-vbeln_va NE itab_det_exp_final-vbeln_va OR
itab_di_final_aux-vbeln_vf NE itab_det_exp_final-vbeln_vf OR
itab_di_final_aux-posnr NE itab_det_exp_final-posnr OR
itab_di_final_aux-nrseq NE itab_det_exp_final-nrseq OR
* >> Início da inclusão: FORM TRATA_BUTTON_APROV3
itab_di_final_aux-nrseqc NE itab_det_exp_final-nrseqc OR
* << Fim da inclusão
itab_di_final_aux-codmat NE itab_det_exp_final-codmat ).
itab_di_final_aux-sdo_qtd =
itab_di_final_aux-sdo_qtd + itab_di_final-qtd_vinc.
MODIFY itab_di_final_aux INDEX sy-tabix.
ENDIF.
ENDLOOP.
DELETE itab_di_final_aux INDEX v_tabix2.
DELETE itab_di_final INDEX v_tabix2.
ENDLOOP.
DELETE itab_comp_vinc_final.
ENDLOOP.
DELETE itab_det_exp WHERE nrseqre = itab_det_exp_final-nrseqre
AND codmat = itab_det_exp_final-codmat
* >> Início da inclusão: FORM TRATA_BUTTON_APROV3
AND nrseqc = itab_det_exp_final-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp_final-vbeln_va
AND vbeln_vf = itab_det_exp_final-vbeln_vf
AND posnr = itab_det_exp_final-posnr.
DELETE itab_det_exp_final.
ENDLOOP.
itab_di_final[] = itab_di_final_aux[].
PERFORM carrega_resumo_exportacao3.
MOVE: 'X' TO /pws/zycie258-aprovado,
sy-datum TO /pws/zycie258-dtaprov .
ENDFORM.
...
...
LOOP AT itab_di_final WHERE v_sel EQ ' '.
DELETE itab_di_final.
ENDLOOP.
LOOP AT itab_di WHERE v_sel EQ ' '.
DELETE itab_di.
ENDLOOP.
LOOP AT itab_det_exp_final.
READ TABLE itab_comp_vinc_final WITH KEY
nrseqre = itab_det_exp_final-nrseqre
nrseq = itab_det_exp_final-nrseq
* >> Início da inclusão: FORM ELIMINA_NAO_VINCULADOS
nrseqc = itab_det_exp_final-nrseqc
* << Fim da inclusão
codmat = itab_det_exp_final-codmat
vbeln_va = itab_det_exp_final-vbeln_va
vbeln_vf = itab_det_exp_final-vbeln_vf
posnr = itab_det_exp_final-posnr.
IF sy-subrc NE 0.
DELETE itab_det_exp WHERE nrseqre = itab_det_exp_final-nrseqre
AND codmat = itab_det_exp_final-codmat
* >> Início da inclusão: FORM ELIMINA_NAO_VINCULADOS
AND nrseqc = itab_det_exp_final-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp_final-vbeln_va
AND vbeln_vf = itab_det_exp_final-vbeln_vf
AND posnr = itab_det_exp_final-posnr.
DELETE itab_det_exp_final.
ENDIF.
ENDLOOP.
PERFORM carrega_resumo_exportacao3.
ENDFORM.
FORM check_fields_screen_0307.
LOOP AT tc_res_imp3-cols INTO wa_cols3.
...
...
v_cifimp3 = v_cifimp3 +
( itab_di_final-vlfob + itab_di_final-vlfrete_t
+ itab_di_final-vlseg_t ).
ENDLOOP.
ENDIF.
LOOP AT itab_det_exp_final.
IF /pws/zycit321-it_ge EQ 'X'.
READ TABLE itab_di_final
WITH KEY nrseqre = itab_di_final-nrseqre
nrseq = itab_di_final-nrseq
* >> Início da inclusão: FORM TRATA_TAB_BENEFICIOS_IMP3
nrseqc = itab_di_final-nrseqc
* << Fim da inclusão
codmat = itab_di_final-codmat
vbeln_va = itab_di_final-vbeln_va
vbeln_vf = itab_di_final-vbeln_vf
posnr = itab_di_final-posnr
grupo = itab_res_imp-grupo.
ELSE.
READ TABLE itab_di_final
WITH KEY nrseqre = itab_di_final-nrseqre
nrseq = itab_di_final-nrseq
* >> Início da inclusão: FORM TRATA_TAB_BENEFICIOS_IMP3
nrseqc = itab_di_final-nrseqc
* << Fim da inclusão
codmat = itab_di_final-codmat
vbeln_va = itab_di_final-vbeln_va
vbeln_vf = itab_di_final-vbeln_vf
posnr = itab_di_final-posnr
codcomp = itab_res_imp-codcomp.
ENDIF.
IF sy-subrc NE 0.
CONTINUE.
ENDIF.
v_fobexp3 = v_fobexp3 +
...
...
itab_comp_vinc-qtd_total = itab_comp_vinc-qtd_total -
itab_comp_vinc-qtd_stotal.
CLEAR: itab_comp_vinc-qtd_stotal.
ENDIF.
MODIFY itab_comp_vinc TRANSPORTING qtd_total qtd_stotal
WHERE marc_cp EQ 'X'.
itab_comp_vinc_final = itab_comp_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_total qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: FORM MUDA_STATUS3
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp.
ENDFORM.
FORM preenche_itab_msg_erro USING p_matnr
p_nrseqre
p_nrre
p_dtemb
...
...
ENDLOOP.
ENDLOOP.
REFRESH itab_j_1bnflin.
itab_j_1bnflin[] = itab_j_1bnflin_sort[].
SORT itab_det_exp BY dtre nrseqre.
REFRESH itab_comp_sort3.
LOOP AT itab_det_exp.
LOOP AT itab_comp_vinc_final WHERE codmat = itab_det_exp-codmat
AND nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM SELECIONA_NF3
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr.
itab_comp_sort3 = itab_comp_vinc_final.
APPEND itab_comp_sort3.
ENDLOOP.
ENDLOOP.
REFRESH: itab_comp_vinc_final.
itab_comp_vinc_final[] = itab_comp_sort3[].
itab_di_final_aux[] = itab_di_final[].
...
...
DELETE itab_zycit279 WHERE nrseqd EQ itab_zycit279-nrseqd.
ENDIF.
ENDLOOP.
ENDIF.
v_pct = 0.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-297.
SORT itab_zycit279 BY dtdi.
* >> Início da exclusão: FORM SELECIONA_DI
SORT itab_det_exp BY dtre nrseqre.
REFRESH itab_comp_sort3.
LOOP AT itab_det_exp.
LOOP AT itab_comp_vinc_final WHERE codmat = itab_det_exp-codmat
AND nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr.
itab_comp_sort3 = itab_comp_vinc_final.
APPEND itab_comp_sort3.
ENDLOOP.
ENDLOOP.
REFRESH itab_comp_vinc_final.
itab_comp_vinc_final[] = itab_comp_sort3[].
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DI
CLEAR: v_count .
* << Fim da inclusão
LOOP AT itab_comp_vinc_final.
READ TABLE itab_det_exp WITH KEY
codmat = itab_comp_vinc_final-codmat
nrseqre = itab_comp_vinc_final-nrseqre
nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM SELECIONA_DI
nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
vbeln_va = itab_comp_vinc_final-vbeln_va
vbeln_vf = itab_comp_vinc_final-vbeln_vf
...
...
v_dtini(4) = v_dtini(4) - 2.
v_dtfim = itab_det_exp-dtre.
ELSE.
v_dtini = /pws/zycie258-dtpr.
v_dtini(4) = v_dtini(4) - 2.
v_dtfim = itab_det_exp-dtnf.
ENDIF.
IF /pws/zycit321-it_ge EQ 'X'.
LOOP AT itab_zycit279
WHERE grupo EQ itab_comp_vinc_final-grupo.
* >> Início da inclusão: FORM SELECIONA_DI
IF v_count EQ 100.
* << Fim da inclusão
v_pct = 0.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-297.
* >> Início da inclusão: FORM SELECIONA_DI
CLEAR: v_count .
ENDIF.
ADD 1 TO v_count.
* << Fim da inclusão
PERFORM monta_di.
ENDLOOP.
ELSE.
LOOP AT itab_zycit279
WHERE matnr EQ itab_comp_vinc_final-codcomp.
* >> Início da inclusão: FORM SELECIONA_DI
IF v_count EQ 100.
* << Fim da inclusão
v_pct = 0.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-297.
* >> Início da inclusão: FORM SELECIONA_DI
CLEAR: v_count .
ENDIF.
ADD 1 TO v_count.
* << Fim da inclusão
PERFORM monta_di.
ENDLOOP.
ENDIF.
ENDLOOP.
FREE: itab_zycit279,
itab_zycit244,
itab_comp_sort3.
ENDFORM.
FORM verifica_exit USING p_modulo
p_func
...
...
AND nfglobal EQ itab_zycit042-nfglobal
AND cancel EQ space.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
LOOP AT itab_det_exp.
LOOP AT itab_di_final WHERE nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM SELECIONA_DI3_L
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND codmat = itab_det_exp-codmat
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr.
READ TABLE itab_zycit100 WITH KEY ebeln = itab_di_final-ebeln
ebelp = itab_di_final-ebelp.
IF sy-subrc NE 0 .
CONTINUE.
ENDIF.
REFRESH itab_di_final_aux.
...
...
v_xb = ( 1 - v_advpis - v_advcof - v_advicms ) .
v_xa = 1 + v_advicms * ( v_advii + v_advipi * ( 1 + v_advii ) ) .
v_fatx = v_xa / v_xb.
v_faty = v_advicms / v_xb.
CLEAR itab_comp_vinc_final.
MOVE:
/pws/zycie258-nrseqd TO itab_comp_vinc_final-nrseqd ,
itab_det_exp-codmat TO itab_comp_vinc_final-codmat ,
itab_di_final-nrseqre TO itab_comp_vinc_final-nrseqre,
itab_di_final-nrseq TO itab_comp_vinc_final-nrseq ,
* >> Início da inclusão: FORM SELECIONA_DI3_L
itab_di_final-nrseqc TO itab_comp_vinc_final-nrseqc ,
* << Fim da inclusão
itab_di_final-vbeln_va TO itab_comp_vinc_final-vbeln_va,
itab_di_final-vbeln_vf TO itab_comp_vinc_final-vbeln_vf,
itab_di_final-posnr TO itab_comp_vinc_final-posnr ,
itab_zycit003-matnr TO itab_comp_vinc_final-codcomp ,
itab_di_final-meins TO itab_comp_vinc_final-meins.
PERFORM converte_um_base USING itab_comp_vinc_final-codcomp
CHANGING itab_comp_vinc_final-meins
itab_comp_vinc_final-qtd_iten.
itab_comp_vinc_final-qtd_total = itab_comp_vinc_final-qtd_orig
= itab_di_final-qtd_vinc.
COLLECT itab_comp_vinc_final.
MOVE:
/pws/zycie258-nrseqd TO itab_di_final-nrseqd ,
itab_zycit003-matnr TO itab_di_final-codcomp ,
itab_comp_vinc_final-codmat TO itab_di_final-codmat ,
itab_comp_vinc_final-nrseqre TO itab_di_final-nrseqre ,
itab_comp_vinc_final-nrseq TO itab_di_final-nrseq ,
* >> Início da inclusão: FORM SELECIONA_DI3_L
itab_comp_vinc_final-nrseqc TO itab_di_final-nrseqc ,
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va TO itab_di_final-vbeln_va ,
itab_comp_vinc_final-vbeln_vf TO itab_di_final-vbeln_vf ,
itab_comp_vinc_final-posnr TO itab_di_final-posnr ,
itab_zycit085-nrseqdi TO itab_di_final-nrdi ,
itab_zycit085-nrdi TO itab_di_final-reg_di ,
itab_zycit085-dtuserc TO itab_di_final-dtdi ,
itab_zycit100-nrseq TO itab_di_final-nrseqemb ,
itab_zycit100-adicao TO itab_di_final-adicao ,
itab_zycit003-meins TO itab_di_final-meins ,
itab_zycit003-qtd_iten TO itab_di_final-qtd_di ,
...
...
ENDIF.
ENDLOOP.
MODIFY itab_di_final.
IF NOT wa_itab_di_final IS INITIAL.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM SELECIONA_DI3_L
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
codcomp EQ itab_comp_vinc_final-codcomp AND
nrdi EQ wa_itab_di_final-nrdi AND
ebeln EQ wa_itab_di_final-ebeln AND
ebelp EQ wa_itab_di_final-ebelp AND
lote EQ wa_itab_di_final-lote AND
nrseqemb EQ wa_itab_di_final-nrseqemb AND
nrseqemb NE space.
itab_di_final-sdo_qtd = wa_itab_di_final-sdo_qtd .
MODIFY itab_di_final.
ENDLOOP.
ENDIF.
ENDLOOP.
LOOP AT itab_comp_vinc_final WHERE nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM SELECIONA_DI3_L
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND codmat = itab_det_exp-codmat
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf.
itab_comp_vinc_final-qtd_iten = itab_comp_vinc_final-qtd_total /
itab_det_exp-qtd_iten.
MODIFY itab_comp_vinc_final.
ENDLOOP.
ENDLOOP.
ENDFORM.
FORM seleciona_di_l.
...
...
AND lote EQ itab_di_final-lote.
IF NOT itab_zycit279[] IS INITIAL.
SELECT * FROM /pws/zycit244 INTO TABLE itab_zycit244
FOR ALL ENTRIES IN itab_zycit279
WHERE nrseqd EQ itab_zycit279-nrseqd
AND tipo EQ 'I'.
ENDIF.
LOOP AT itab_det_exp.
LOOP AT itab_di_final WHERE nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM SELECIONA_DI_L
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND codmat = itab_det_exp-codmat
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr
AND nrdi = space
.
READ TABLE itab_zycit279 WITH KEY
ebeln = itab_di_final-ebeln
ebelp = itab_di_final-ebelp
lote = itab_di_final-lote.
...
...
COLLECT itab_comp_vinc_final.
MODIFY itab_di_final.
IF NOT wa_itab_di_final IS INITIAL.
LOOP AT itab_di_final.
IF
( itab_di_final-nrseqre NE itab_det_exp-nrseqre OR
itab_di_final-vbeln_va NE itab_det_exp-vbeln_va OR
itab_di_final-vbeln_vf NE itab_det_exp-vbeln_vf OR
itab_di_final-posnr NE itab_det_exp-posnr OR
itab_di_final-nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM SELECIONA_DI_L
itab_di_final-nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
itab_di_final-codmat NE itab_det_exp-codmat ) AND
( itab_di_final-codcomp EQ
itab_comp_vinc_final-codcomp AND
itab_di_final-docnum EQ wa_itab_di_final-docnum AND
itab_di_final-ebeln EQ wa_itab_di_final-ebeln AND
itab_di_final-ebelp EQ wa_itab_di_final-ebelp ).
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd - wa_itab_di_final-qtd_vinc.
MODIFY itab_di_final.
ENDIF.
ENDLOOP.
ENDIF.
ENDLOOP.
LOOP AT itab_comp_vinc_final WHERE nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: FORM SELECIONA_DI_L
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND codmat = itab_det_exp-codmat
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf.
itab_comp_vinc_final-qtd_iten = itab_comp_vinc_final-qtd_total /
itab_det_exp-qtd_iten.
MODIFY itab_comp_vinc_final.
ENDLOOP.
ENDLOOP.
ENDFORM.
FORM seleciona_nf_l.
...
...
AND posnn EQ itab_zycit259_d-posnr.
.
ENDLOOP.
IF NOT itab_vbfa_aux[] IS INITIAL.
SELECT vbeln posnr ntgew brgew gewei FROM vbrp
INTO TABLE itab_vbrp
FOR ALL ENTRIES IN itab_vbfa_aux
WHERE vbeln EQ itab_vbfa_aux-vbeln
AND posnr EQ itab_vbfa_aux-posnn.
ENDIF.
* >> Início da inclusão: FORM COMERC_EXP
v_pct = 80.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-300.
CLEAR: v_count .
* << Fim da inclusão
LOOP AT itab_nota_c.
* >> Início da inclusão: FORM COMERC_EXP
IF v_count EQ 100.
* << Fim da inclusão
v_pct = 80.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-300.
* >> Início da inclusão: FORM COMERC_EXP
CLEAR: v_count .
ENDIF.
ADD 1 TO v_count.
* << Fim da inclusão
READ TABLE itab_det_exp_final WITH KEY
vbeln_vf = itab_nota_c-refkey
posnr = itab_nota_c-refitm.
IF sy-subrc EQ 0.
CONTINUE.
ENDIF.
CLEAR: itab_det_exp_final.
READ TABLE itab_zycit281 WITH KEY matnr = itab_nota_c-matnr
werks = itab_nota_c-werks.
IF sy-subrc NE 0.
...
...
a~docnum EQ b~docnum )
INTO TABLE itab_nota_c
FOR ALL ENTRIES IN itab_zycit373
WHERE a~docnum = itab_zycit373-docnum
AND bukrs EQ /pws/zycie258-bukrs
AND b~itmnum <= itab_zycit373-itmnum.
SELECT * FROM mara INTO TABLE itab_mara
FOR ALL ENTRIES IN itab_zycit373
WHERE matnr EQ itab_zycit373-matnr.
ENDIF.
* >> Início da inclusão: FORM EQUIP_EXP
v_pct = 55.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-299.
CLEAR: v_count .
* << Fim da inclusão
LOOP AT itab_zycit373.
* >> Início da inclusão: FORM EQUIP_EXP
IF v_count EQ 100.
* << Fim da inclusão
v_pct = 55.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = text-299.
* >> Início da inclusão: FORM EQUIP_EXP
CLEAR: v_count .
ENDIF.
ADD 1 TO v_count.
* << Fim da inclusão
CLEAR: itab_zycit371, itab_nota_c, itab_mara.
READ TABLE itab_zycit371 WITH KEY nrseqd = itab_zycit373-nrseq.
IF sy-subrc NE 0.
CONTINUE.
ENDIF.
READ TABLE itab_nota_c WITH KEY docnum = itab_zycit373-docnum
itmnum = itab_zycit373-itmnum.
IF sy-subrc NE 0.
CONTINUE.
ENDIF.
...
...
v_advcof = ( itab_zycit100-advalcofins / 100 ).
v_xb = ( 1 - v_advpis - v_advcof - v_advicms ) .
v_xa = 1 + v_advicms * ( v_advii + v_advipi * ( 1 + v_advii ) ) .
v_fatx = v_xa / v_xb.
v_faty = v_advicms / v_xb.
READ TABLE itab_zycit433 WITH KEY matnr = itab_zycit100_sort-matnr.
CLEAR itab_di_final_aux.
READ TABLE itab_di_final_aux WITH KEY
nrseqre = itab_comp_vinc_final-nrseqre
nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DIS3
nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
codmat = itab_comp_vinc_final-codmat
vbeln_va = itab_comp_vinc_final-vbeln_va
vbeln_vf = itab_comp_vinc_final-vbeln_vf
posnr = itab_comp_vinc_final-posnr
nrdi = itab_zycit085-nrseqdi
nrseqemb = itab_zycit100-nrseq
ebeln = itab_ekpo-ebeln
ebelp = itab_ekpo-ebelp.
IF sy-subrc NE 0 AND
itab_zycit003-qtd_iten > 0.
...
...
IF sy-subrc NE 0.
CLEAR itab_di_final.
MOVE:
/pws/zycie258-nrseqd TO itab_di_final-nrseqd ,
itab_zycit100_sort-matnr TO itab_di_final-codcomp ,
itab_zycit100_sort-grupo TO itab_di_final-grupo ,
itab_zycit433-desc_g TO itab_di_final-desc_g ,
itab_comp_vinc_final-codmat TO itab_di_final-codmat ,
itab_comp_vinc_final-nrseqre TO itab_di_final-nrseqre ,
itab_comp_vinc_final-nrseq TO itab_di_final-nrseq ,
* >> Início da inclusão: FORM MONTA_DIS3
itab_comp_vinc_final-nrseqc TO itab_di_final-nrseqc ,
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va TO itab_di_final-vbeln_va ,
itab_comp_vinc_final-vbeln_vf TO itab_di_final-vbeln_vf ,
itab_comp_vinc_final-posnr TO itab_di_final-posnr ,
itab_zycit085-nrseqdi TO itab_di_final-nrdi ,
itab_zycit085-nrdi TO itab_di_final-reg_di ,
itab_zycit085-dtreg TO itab_di_final-dtdi ,
itab_zycit100-nrseq TO itab_di_final-nrseqemb ,
itab_zycit100-adicao TO itab_di_final-adicao ,
itab_ekpo-ebeln TO itab_di_final-ebeln ,
itab_ekpo-ebelp TO itab_di_final-ebelp ,
...
...
itab_zycit085-dttax
CHANGING itab_di_final-i_vlicms.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DIS3
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo.
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ELSE.
IF itab_comp_vinc_final-qtd_stotal <
...
...
itab_zycit085-dttax
CHANGING itab_di_final-i_vlicms.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DIS3
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo .
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ENDIF.
ENDIF.
...
...
PERFORM retorna_decimais USING itab_zycit085-waersfob
CHANGING itab_di_final-netpr.
APPEND itab_di_final.
IF NOT wa_itab_di_final IS INITIAL.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM MONTA_DIS3
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
nrdi EQ wa_itab_di_final-nrdi AND
ebeln EQ wa_itab_di_final-ebeln AND
ebelp EQ wa_itab_di_final-ebelp AND
nrseqemb EQ wa_itab_di_final-nrseqemb .
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd - wa_itab_di_final-qtd_vinc.
MODIFY itab_di_final.
ENDLOOP.
ENDIF.
ELSE.
CLEAR itab_di_final.
MOVE:
/pws/zycie258-nrseqd TO itab_di_final-nrseqd ,
itab_zycit100_sort-matnr TO itab_di_final-codcomp ,
itab_zycit100_sort-grupo TO itab_di_final-grupo ,
itab_zycit433-desc_g TO itab_di_final-desc_g ,
itab_comp_vinc_final-codmat TO itab_di_final-codmat ,
itab_comp_vinc_final-nrseqre TO itab_di_final-nrseqre ,
itab_comp_vinc_final-nrseq TO itab_di_final-nrseq ,
* >> Início da inclusão: FORM MONTA_DIS3
itab_comp_vinc_final-nrseqc TO itab_di_final-nrseqc ,
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va TO itab_di_final-vbeln_va ,
itab_comp_vinc_final-vbeln_vf TO itab_di_final-vbeln_vf ,
itab_comp_vinc_final-posnr TO itab_di_final-posnr ,
itab_zycit085-nrseqdi TO itab_di_final-nrdi ,
itab_zycit085-nrdi TO itab_di_final-reg_di ,
itab_zycit085-dtreg TO itab_di_final-dtdi ,
itab_zycit100-nrseq TO itab_di_final-nrseqemb ,
itab_zycit100-adicao TO itab_di_final-adicao ,
itab_ekpo-ebeln TO itab_di_final-ebeln ,
itab_ekpo-ebelp TO itab_di_final-ebelp ,
...
...
itab_zycit085-dttax
CHANGING itab_di_final-i_vlicms.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DIS3
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo.
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ELSE.
IF itab_comp_vinc_final-qtd_stotal <
...
...
itab_zycit085-dttax
CHANGING itab_di_final-i_vlicms.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DIS3
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo.
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ENDIF.
ENDIF.
...
...
PERFORM retorna_decimais USING itab_zycit085-waersfob
CHANGING itab_di_final-netpr.
APPEND itab_di_final.
IF NOT wa_itab_di_final IS INITIAL.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM MONTA_DIS3
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
nrdi EQ wa_itab_di_final-nrdi AND
ebeln EQ wa_itab_di_final-ebeln AND
ebelp EQ wa_itab_di_final-ebelp AND
nrseqemb EQ wa_itab_di_final-nrseqemb .
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd - wa_itab_di_final-qtd_vinc.
MODIFY itab_di_final.
ENDLOOP.
ENDIF.
...
...
MOVE: itab_zycit279-meins TO itab_di_final-meins ,
itab_zycit279-menge TO itab_di_final-qtd_di .
IF itab_di_final-qtd_di IS INITIAL.
EXIT.
ENDIF.
READ TABLE itab_zycit433 WITH KEY matnr = itab_zycit279-matnr.
CLEAR itab_di_final_aux.
READ TABLE itab_di_final_aux WITH KEY
nrseqre = itab_comp_vinc_final-nrseqre
nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DI
nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
codmat = itab_comp_vinc_final-codmat
vbeln_va = itab_comp_vinc_final-vbeln_va
vbeln_vf = itab_comp_vinc_final-vbeln_vf
posnr = itab_comp_vinc_final-posnr
docnum = itab_zycit279-docnum
ebeln = itab_zycit279-ebeln
ebelp = itab_zycit279-ebelp.
IF sy-subrc NE 0 AND
itab_zycit279-menge > 0.
READ TABLE itab_di_final_aux WITH KEY
...
...
IF sy-subrc NE 0.
CLEAR itab_di_final.
MOVE:
/pws/zycie258-nrseqd TO itab_di_final-nrseqd ,
itab_zycit279-matnr TO itab_di_final-codcomp ,
itab_zycit279-grupo TO itab_di_final-grupo ,
itab_zycit433-desc_g TO itab_di_final-desc_g ,
itab_comp_vinc_final-codmat TO itab_di_final-codmat ,
itab_comp_vinc_final-nrseqre TO itab_di_final-nrseqre ,
itab_comp_vinc_final-nrseq TO itab_di_final-nrseq ,
* >> Início da inclusão: FORM MONTA_DI
itab_comp_vinc_final-nrseqc TO itab_di_final-nrseqc ,
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va TO itab_di_final-vbeln_va ,
itab_comp_vinc_final-vbeln_vf TO itab_di_final-vbeln_vf ,
itab_comp_vinc_final-posnr TO itab_di_final-posnr ,
itab_zycit279-nrseqdi TO itab_di_final-nrdi ,
itab_zycit279-nrdi TO itab_di_final-reg_di ,
itab_zycit279-dtdi TO itab_di_final-dtdi ,
itab_zycit279-nrseq TO itab_di_final-nrseqemb ,
itab_zycit279-adicao TO itab_di_final-adicao ,
itab_zycit279-docnum TO itab_di_final-docnum ,
itab_zycit279-ebeln TO itab_di_final-ebeln ,
...
...
itab_di_final-vlafrmm =
itab_di_final-vlafrmm / itab_di_final-i_txmoeda.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DI
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo.
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ELSE.
IF itab_comp_vinc_final-qtd_stotal <
...
...
itab_di_final-vlafrmm =
itab_di_final-vlafrmm / itab_di_final-i_txmoeda.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DI
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo.
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ENDIF.
ENDIF.
...
...
itab_di_final-brgew =
( mara-brgew * itab_di_final-qtd_vinc ).
APPEND itab_di_final.
IF NOT wa_itab_di_final IS INITIAL.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM MONTA_DI
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
docnum EQ wa_itab_di_final-docnum AND
ebeln EQ wa_itab_di_final-ebeln AND
ebelp EQ wa_itab_di_final-ebelp .
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd - wa_itab_di_final-qtd_vinc.
MODIFY itab_di_final.
ENDLOOP.
ENDIF.
ELSE.
CLEAR itab_di_final.
MOVE:
/pws/zycie258-nrseqd TO itab_di_final-nrseqd ,
itab_zycit279-matnr TO itab_di_final-codcomp ,
itab_zycit279-grupo TO itab_di_final-grupo ,
itab_zycit433-desc_g TO itab_di_final-desc_g ,
itab_comp_vinc_final-codmat TO itab_di_final-codmat ,
itab_comp_vinc_final-nrseqre TO itab_di_final-nrseqre ,
itab_comp_vinc_final-nrseq TO itab_di_final-nrseq ,
* >> Início da inclusão: FORM MONTA_DI
itab_comp_vinc_final-nrseqc TO itab_di_final-nrseqc ,
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va TO itab_di_final-vbeln_va ,
itab_comp_vinc_final-vbeln_vf TO itab_di_final-vbeln_vf ,
itab_comp_vinc_final-posnr TO itab_di_final-posnr ,
itab_zycit279-nrseqdi TO itab_di_final-nrdi ,
itab_zycit279-nrdi TO itab_di_final-reg_di ,
itab_zycit279-dtdi TO itab_di_final-dtdi ,
itab_zycit279-nrseq TO itab_di_final-nrseqemb ,
itab_zycit279-adicao TO itab_di_final-adicao ,
itab_zycit279-docnum TO itab_di_final-docnum ,
itab_zycit279-ebeln TO itab_di_final-ebeln ,
...
...
itab_di_final-vlafrmm / itab_di_final-i_txmoeda.
.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DI
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo.
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ELSE.
IF itab_comp_vinc_final-qtd_stotal <
...
...
itab_di_final-vlafrmm / itab_di_final-i_txmoeda.
.
itab_di_final-t_benef =
itab_di_final-i_vlii + itab_di_final-i_vlipi.
itab_comp_vinc_final-qtd_stotal =
itab_comp_vinc_final-qtd_stotal -
itab_di_final-qtd_vinc.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc_final-nrseqre
AND nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_DI
AND nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc_final-codmat
AND vbeln_va = itab_comp_vinc_final-vbeln_va
AND vbeln_vf = itab_comp_vinc_final-vbeln_vf
AND posnr = itab_comp_vinc_final-posnr
AND codcomp = itab_comp_vinc_final-codcomp
AND grupo = itab_comp_vinc_final-grupo.
itab_di_final-v_sel = 'X'.
MOVE-CORRESPONDING itab_di_final TO wa_itab_di_final.
ENDIF.
ENDIF.
...
...
itab_di_final-brgew =
( mara-brgew * itab_di_final-qtd_vinc ).
APPEND itab_di_final.
IF NOT wa_itab_di_final IS INITIAL.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: FORM MONTA_DI
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
docnum EQ wa_itab_di_final-docnum AND
ebeln EQ wa_itab_di_final-ebeln AND
ebelp EQ wa_itab_di_final-ebelp .
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd - wa_itab_di_final-qtd_vinc.
MODIFY itab_di_final.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
FORM monta_nf.
READ TABLE itab_di_final_aux WITH KEY
nrseqre = itab_comp_vinc_final-nrseqre
nrseq = itab_comp_vinc_final-nrseq
* >> Início da inclusão: FORM MONTA_NF
nrseqc = itab_comp_vinc_final-nrseqc
* << Fim da inclusão
codmat = itab_comp_vinc_final-codmat
vbeln_va = itab_comp_vinc_final-vbeln_va
vbeln_vf = itab_comp_vinc_final-vbeln_vf
posnr = itab_comp_vinc_final-posnr
docnum = itab_j_1bnflin-docnum
itmnum = itab_j_1bnflin-itmnum.
IF sy-subrc EQ 0.
EXIT.
ENDIF.
READ TABLE itab_zycit260 WITH KEY
...
...
meins EQ itab_j_1bnflin-meins.
EXIT.
ENDIF.
CLEAR wa_di.
MOVE:
/pws/zycie258-nrseqd TO wa_di-nrseqd ,
itab_comp_vinc_final-codcomp TO wa_di-codcomp ,
itab_comp_vinc_final-codmat TO wa_di-codmat ,
itab_comp_vinc_final-nrseqre TO wa_di-nrseqre ,
itab_comp_vinc_final-nrseq TO wa_di-nrseq ,
* >> Início da inclusão: FORM MONTA_NF
itab_comp_vinc_final-nrseqc TO wa_di-nrseqc ,
* << Fim da inclusão
itab_comp_vinc_final-vbeln_va TO wa_di-vbeln_va ,
itab_comp_vinc_final-vbeln_vf TO wa_di-vbeln_vf ,
itab_comp_vinc_final-posnr TO wa_di-posnr ,
itab_rseg-ebeln TO wa_di-ebeln ,
itab_rseg-ebelp TO wa_di-ebelp ,
itab_j_1bnfdoc-nfnum TO wa_di-nfnum ,
itab_j_1bnfdoc-series TO wa_di-serie ,
itab_j_1bnfdoc-docdat TO wa_di-dtnf ,
itab_j_1bnflin-docnum TO wa_di-docnum ,
itab_j_1bnflin-grupo TO wa_di-grupo ,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI064I01
...
PERFORM valor_converte_imp USING 'BRL'
'USD'
itab_zycit085-dttax
CHANGING itab_di-i_vlicms.
itab_di-t_benef = itab_di-i_vlii + itab_di-i_vlipi.
itab_comp_vinc-qtd_stotal =
itab_comp_vinc-qtd_stotal - itab_di-qtd_vinc.
MODIFY itab_comp_vinc TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp
AND grupo = itab_comp_vinc-grupo.
itab_comp_vinc_final-qtd_stotal = itab_comp_vinc-qtd_stotal.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp
AND grupo = itab_comp_vinc-grupo.
itab_di-v_sel = v_vsel.
MODIFY itab_di INDEX tc_di3-current_line.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: MODULE TRATA_SELECAO
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
nrdi EQ itab_di-nrdi AND
ebeln EQ itab_di-ebeln AND
ebelp EQ itab_di-ebelp AND
nrseqemb EQ itab_di-nrseqemb .
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd - itab_di-qtd_vinc.
MODIFY itab_di_final.
ENDLOOP.
ELSE.
...
...
'USD'
itab_zycit085-dttax
CHANGING itab_di-i_vlicms.
itab_di-t_benef =
itab_di-i_vlii + itab_di-i_vlipi.
itab_comp_vinc-qtd_stotal =
itab_comp_vinc-qtd_stotal - itab_di-qtd_vinc.
MODIFY itab_comp_vinc TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp
AND grupo = itab_comp_vinc-grupo.
itab_comp_vinc_final-qtd_stotal = itab_comp_vinc-qtd_stotal.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp
AND grupo = itab_comp_vinc-grupo.
itab_di-v_sel = v_vsel.
MODIFY itab_di INDEX tc_di3-current_line.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: MODULE TRATA_SELECAO
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
nrdi EQ itab_di-nrdi AND
ebeln EQ itab_di-ebeln AND
ebelp EQ itab_di-ebelp AND
nrseqemb EQ itab_di-nrseqemb .
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd - itab_di-qtd_vinc.
MODIFY itab_di_final.
ENDLOOP.
ENDIF.
ENDIF.
IF v_vsel EQ ' ' AND
NOT itab_di-qtd_vinc IS INITIAL.
itab_comp_vinc-qtd_stotal =
itab_comp_vinc-qtd_stotal + itab_di-qtd_vinc.
MODIFY itab_comp_vinc TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp
AND grupo = itab_comp_vinc-grupo.
itab_comp_vinc_final-qtd_stotal = itab_comp_vinc-qtd_stotal.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp
AND grupo = itab_comp_vinc-grupo.
LOOP AT itab_di_final WHERE
( nrseqre NE itab_det_exp-nrseqre OR
vbeln_va NE itab_det_exp-vbeln_va OR
vbeln_vf NE itab_det_exp-vbeln_vf OR
posnr NE itab_det_exp-posnr OR
nrseq NE itab_det_exp-nrseq OR
* >> Início da inclusão: MODULE TRATA_SELECAO
nrseqc NE itab_det_exp-nrseqc OR
* << Fim da inclusão
codmat NE itab_det_exp-codmat ) AND
nrdi EQ itab_di-nrdi AND
ebeln EQ itab_di-ebeln AND
ebelp EQ itab_di-ebelp AND
nrseqemb EQ itab_di-nrseqemb .
itab_di_final-sdo_qtd =
itab_di_final-sdo_qtd + itab_di-qtd_vinc.
MODIFY itab_di_final.
ENDLOOP.
itab_di-sdo_qtd = itab_di-sdo_qtd + itab_di-qtd_vinc.
...
...
itab_di-t_benef = itab_di-i_vlii + itab_di-i_vlipi.
itab_di-v_sel = v_vsel.
MODIFY itab_di INDEX tc_di3-current_line.
ENDIF.
LOOP AT itab_di_final WHERE
nrseqre = itab_det_exp-nrseqre AND
vbeln_va = itab_det_exp-vbeln_va AND
vbeln_vf = itab_det_exp-vbeln_vf AND
posnr = itab_det_exp-posnr AND
nrseq = itab_det_exp-nrseq AND
* >> Início da inclusão: MODULE TRATA_SELECAO
nrseqc = itab_det_exp-nrseqc AND
* << Fim da inclusão
codmat = itab_det_exp-codmat AND
nrdi = itab_di-nrdi AND
ebeln = itab_di-ebeln AND
ebelp = itab_di-ebelp AND
nrseqemb = itab_di-nrseqemb.
itab_di_final-v_sel = itab_di-v_sel .
itab_di_final-sdo_qtd = itab_di-sdo_qtd .
itab_di_final-qtd_vinc = itab_di-qtd_vinc.
itab_di_final-vlseg_t = itab_di-vlseg_t.
itab_di_final-vlfrete_t = itab_di-vlfrete_t.
...
...
itab_di-v_sel = 'X'.
MODIFY itab_di INDEX tc_nf3-current_line.
itab_di_final = itab_di.
MODIFY itab_di_final TRANSPORTING sdo_qtd v_sel qtd_vinc
WHERE docnum EQ itab_di-docnum
AND itmnum EQ itab_di-itmnum
AND nrseqre EQ itab_di-nrseqre
AND vbeln_va EQ itab_di-vbeln_va
AND vbeln_vf EQ itab_di-vbeln_vf
AND posnr EQ itab_di-posnr
* >> Início da inclusão: MODULE TRATA_SELECAO_NF
AND nrseqc EQ itab_di-nrseqc
* << Fim da inclusão
AND nrseq EQ itab_di-nrseq .
MODIFY itab_di_final TRANSPORTING sdo_qtd
WHERE docnum EQ itab_di-docnum
AND itmnum EQ itab_di-itmnum.
MODIFY itab_comp_vinc TRANSPORTING qtd_stotal
WHERE marc_cp = 'X'.
itab_comp_vinc_final-qtd_stotal = itab_comp_vinc-qtd_stotal.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO_NF
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp.
ENDIF.
ENDIF.
ELSE.
IF itab_di-v_sel EQ 'X'.
itab_di-sdo_qtd = itab_di-sdo_qtd + itab_di-qtd_vinc.
...
...
CLEAR itab_di-v_sel.
MODIFY itab_di INDEX tc_nf3-current_line.
itab_di_final = itab_di.
MODIFY itab_di_final TRANSPORTING sdo_qtd v_sel qtd_vinc
WHERE docnum EQ itab_di-docnum
AND itmnum EQ itab_di-itmnum
AND nrseqre EQ itab_di-nrseqre
AND vbeln_va EQ itab_di-vbeln_va
AND vbeln_vf EQ itab_di-vbeln_vf
AND posnr EQ itab_di-posnr
* >> Início da inclusão: MODULE TRATA_SELECAO_NF
AND nrseqc EQ itab_di-nrseqc
* << Fim da inclusão
AND nrseq EQ itab_di-nrseq .
MODIFY itab_di_final TRANSPORTING sdo_qtd
WHERE docnum EQ itab_di-docnum
AND itmnum EQ itab_di-itmnum.
MODIFY itab_comp_vinc TRANSPORTING qtd_stotal
WHERE marc_cp = 'X'.
itab_comp_vinc_final-qtd_stotal = itab_comp_vinc-qtd_stotal.
MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal
WHERE nrseqre = itab_comp_vinc-nrseqre
AND nrseq = itab_comp_vinc-nrseq
* >> Início da inclusão: MODULE TRATA_SELECAO_NF
AND nrseqc = itab_comp_vinc-nrseqc
* << Fim da inclusão
AND codmat = itab_comp_vinc-codmat
AND vbeln_va = itab_comp_vinc-vbeln_va
AND vbeln_vf = itab_comp_vinc-vbeln_vf
AND posnr = itab_comp_vinc-posnr
AND codcomp = itab_comp_vinc-codcomp.
ELSE.
ENDIF.
ENDIF.
ENDMODULE.
MODULE user_command_0317 INPUT.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI064O01
...
/pws/zycie260c-qtd_vinc = itab_di-qtd_vinc.
/pws/zycie260c-lote = itab_di-lote.
v_vsel = itab_di-v_sel .
ENDMODULE.
MODULE trata_screen_0304 OUTPUT.
DATA: v_ex_vinc .
CLEAR: v_vtc, v_ex_vinc.
v_execloop = 'N'.
LOOP AT itab_comp_vinc_final WHERE nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: MODULE TRATA_SCREEN_0304
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr
AND codmat = itab_det_exp-codmat.
v_execloop = 'S'.
IF itab_comp_vinc_final-qtd_stotal > 0 AND
itab_comp_vinc_final-qtd_stotal < itab_comp_vinc_final-qtd_total.
v_vtc = 'P'.
EXIT.
ELSEIF itab_comp_vinc_final-qtd_stotal > 0.
...
...
v_vtc = 'N'.
ENDIF.
IF v_ex_vinc = 'X' AND v_vtc = 'N'.
v_vtc = 'P'.
ENDIF.
IF v_vtc EQ 'S'.
MOVE 'X' TO itab_det_exp-vinc_tot.
MODIFY itab_det_exp TRANSPORTING vinc_tot WHERE
nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: MODULE TRATA_SCREEN_0304
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr
AND codmat = itab_det_exp-codmat.
READ TABLE itab_det_exp_final WITH KEY
nrseqre = itab_det_exp-nrseqre
nrseq = itab_det_exp-nrseq
* >> Início da inclusão: MODULE TRATA_SCREEN_0304
nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
vbeln_va = itab_det_exp-vbeln_va
vbeln_vf = itab_det_exp-vbeln_vf
posnr = itab_det_exp-posnr
codmat = itab_det_exp-codmat.
IF sy-subrc EQ 0.
MOVE 'X' TO itab_det_exp_final-vinc_tot.
MODIFY itab_det_exp_final TRANSPORTING vinc_tot WHERE
nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: MODULE TRATA_SCREEN_0304
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr
AND codmat = itab_det_exp-codmat.
ENDIF.
ELSE.
MOVE ' ' TO itab_det_exp-vinc_tot.
MODIFY itab_det_exp TRANSPORTING vinc_tot WHERE
nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: MODULE TRATA_SCREEN_0304
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr
AND codmat = itab_det_exp-codmat.
READ TABLE itab_det_exp_final WITH KEY
nrseqre = itab_det_exp-nrseqre
nrseq = itab_det_exp-nrseq
* >> Início da inclusão: MODULE TRATA_SCREEN_0304
nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
vbeln_va = itab_det_exp-vbeln_va
vbeln_vf = itab_det_exp-vbeln_vf
posnr = itab_det_exp-posnr
codmat = itab_det_exp-codmat.
IF sy-subrc EQ 0.
MOVE ' ' TO itab_det_exp_final-vinc_tot.
MODIFY itab_det_exp_final TRANSPORTING vinc_tot WHERE
nrseqre = itab_det_exp-nrseqre
AND nrseq = itab_det_exp-nrseq
* >> Início da inclusão: MODULE TRATA_SCREEN_0304
AND nrseqc = itab_det_exp-nrseqc
* << Fim da inclusão
AND vbeln_va = itab_det_exp-vbeln_va
AND vbeln_vf = itab_det_exp-vbeln_vf
AND posnr = itab_det_exp-posnr
AND codmat = itab_det_exp-codmat.
ENDIF.
ENDIF.
IF NOT itab_det_exp-nrseqc IS INITIAL.
v_ico_t = '@KY@'.
ELSEIF NOT itab_det_exp-nrseq IS INITIAL.
v_ico_t = '@KW@'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI064X01
...
v_tiires_0303 LIKE /pws/zycie260d-i_vlii ,
v_tipires_0303 LIKE /pws/zycie260d-i_vlipi ,
v_tbenef_0303 LIKE /pws/zycie260d-t_benef ,
v_errolog3(135) TYPE c ,
v_tabix LIKE sy-tabix ,
v_cent_ei TYPE /pws/zycit260-werks ,
v_desc_agr(35) TYPE c ,
v_ncent(35) TYPE c ,
v_verif_v TYPE c,
v_pct type i ,
* >> Início da inclusão:
v_count type i,
* << Fim da inclusão
v_ico_t TYPE icon-id .
DATA: BEGIN OF itab_cent_ei OCCURS 0.
DATA: werks TYPE /pws/zycit260-werks.
DATA: END OF itab_cent_ei .
DATA: BEGIN OF itab_botoes3 OCCURS 0.
DATA: bname(20) TYPE c .
DATA: END OF itab_botoes3 .
DATA: BEGIN OF itab_res_imp OCCURS 0,
codcomp TYPE /pws/zycie260-codcomp ,
qtd_di TYPE /pws/zycie260-qtd_di ,
...