Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DI
Data/Hora da Publicação: 09/10/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 13:02:22
Descrição da Nota: TRATAMENTO PARA MOTIVO DE ESTORNO DA FB08 NA DI
Sintoma
Ao estornar a DI não estava tratando o motivo de estorno de acordo com o parâmetro da /PWS/ZYCBT007.
Solução
Fazer tratamento para motivo de estorno da FB08 da DI.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02239 Data: 09/10/2006 Hora: 17:18:45
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02239
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 6.0
Pacote : 00025
Agrupamento : 00134
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
02033 - 00001 - 6.0 - 00024 - ESTORNO DE UMA FATURA, SE O MÊS DE LANÇAMENTO ORIGINAL ESTIVER FE
02158 - 00002 - 6.0 - 00025 - SISTEMA ACUSA ERRO DE MOTIVO AO ESTORNAR FB08 EM VÁRIAS FUNCIONAL
----------------------------------------------------------------------------------------------------
TRATAMENTO PARA MOTIVO DE ESTORNO DA FB08 NA DI
----------------------------------------------------------------------------------------------------
Palavras Chave:
MOTIVO DE ESTORNO - FB08 - DI - PARÂMETROS - /PWS/ZYCBT007
PERÍODO CONTÁBIL ABERTO / FECHADO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI023F03
REPS /PWS/MZYCI023X01
REPS /PWS/SAPMZYCI023
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F03
...
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM.
FORM deleta_variacao.
* >> Início da inclusão: FORM DELETA_VARIACAO
IF /pws/zycbt007 IS INITIAL.
SELECT SINGLE *
FROM /pws/zycbt007
WHERE bukrs EQ /pws/zycie085-bukrs.
ENDIF.
* << Fim da inclusão
IF NOT /pws/zycie085-belnr_0 IS INITIAL.
v_text = text-208.
PERFORM executa_fbra USING /pws/zycie085-belnr_0
/pws/zycie085-budat_0.
PERFORM executa_fb08 USING /pws/zycie085-belnr_0
...
...
/pws/zycie085-budat_3.
ENDIF.
PERFORM atualiza_historico.
IF NOT /pws/zycie085-belnr_0_f05 IS INITIAL.
v_text = text-208.
* >> Início da exclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_0_f05 v_datum.
* << Fim da exclusão
* >> Início da inclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_0_f05
/pws/zycie085-budat_0.
* << Fim da inclusão
ENDIF.
IF NOT /pws/zycie085-belnr_1_f05 IS INITIAL.
v_text = text-208.
* >> Início da exclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_1_f05 v_datum.
* << Fim da exclusão
* >> Início da inclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_1_f05
/pws/zycie085-budat_1.
* << Fim da inclusão
ENDIF.
IF NOT /pws/zycie085-belnr_2_f05 IS INITIAL.
v_text = text-208.
* >> Início da exclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_2_f05 v_datum.
* << Fim da exclusão
* >> Início da inclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_2_f05
/pws/zycie085-budat_2.
* << Fim da inclusão
ENDIF.
IF NOT /pws/zycie085-belnr_3_f05 IS INITIAL.
v_text = text-208.
* >> Início da exclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_3_f05 v_datum.
* << Fim da exclusão
* >> Início da inclusão: FORM DELETA_VARIACAO
PERFORM executa_fb08 USING /pws/zycie085-belnr_3_f05
/pws/zycie085-budat_3.
* << Fim da inclusão
ENDIF.
ENDFORM.
FORM executa_fb08 USING p_belnr
p_budat.
DATA: v_belnr_ant LIKE /pws/zycie085-belnr_0.
...
...
itab_zycbe033-tabela = '/PWS/ZYCIE085'.
itab_zycbe033-cpochv = /pws/zycie100a-nrseq.
itab_zycbe033-belnr = p_belnr.
itab_zycbe033-bukrs = /pws/zycie085-bukrs.
itab_zycbe033-bldat = p_budat.
* >> Início da exclusão: FORM EXECUTA_FB08
itab_zycbe033-budat = v_budat.
* << Fim da exclusão
itab_zycbe033-gjahs = itab_zycbe033-bldat+0(4).
v_belnr_ant = p_belnr.
* >> Início da exclusão: FORM EXECUTA_FB08
IF /pws/zycbt007 IS INITIAL.
SELECT SINGLE *
FROM /pws/zycbt007
WHERE bukrs EQ /pws/zycie085-bukrs.
* << Fim da exclusão
* >> Início da inclusão: FORM EXECUTA_FB08
CALL FUNCTION '/PWS/ZYGL_MOTIVO_ESTORNO'
EXPORTING
v_data = p_budat
v_bukrs = /pws/zycie085-bukrs
v_koart = 'K'
IMPORTING
v_subrc = vsubrc
v_gjahr = itab_zycbe033-gjahr.
IF vsubrc IS INITIAL.
itab_zycbe033-budat = p_budat.
itab_zycbe033-stgrd = /pws/zycbt007-percorr.
ELSE.
itab_zycbe033-budat = sy-datlo.
itab_zycbe033-stgrd = /pws/zycbt007-perencer.
* << Fim da inclusão
ENDIF.
* >> Início da exclusão: FORM EXECUTA_FB08
itab_zycbe033-stgrd = /pws/zycbt007-percorr.
* << Fim da exclusão
APPEND itab_zycbe033.
...
...
EXIT.
ENDIF.
ENDIF.
ENDIF.
IF e_subrc = '0'.
* >> Início da exclusão: FORM EXECUTA_FB08
CALL FUNCTION '/PWS/ZYCI_TRANSACAO_FB08'
* << Fim da exclusão
* >> Início da inclusão: FORM EXECUTA_FB08
CALL FUNCTION '/PWS/ZYCI_TRANSACAO_FB08_A'
* << Fim da inclusão
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
...
...
it_zycit270-nrseqemb = /pws/zycie100a-nrseq.
it_zycit270-tcode = sy-tcode.
it_zycit270-dtestorno = sy-datlo.
APPEND it_zycit270.
ENDFORM.
* >> Início da exclusão: FORM EXECUTA_FBRA
FORM executa_fbra USING p_belnr
* << Fim da exclusão
* >> Início da inclusão: FORM EXECUTA_FBRA
FORM executa_fbra USING p_belnr
* << Fim da inclusão
p_budat.
DATA: v_belnr_ant LIKE /pws/zycie006-belnr_p.
CLEAR itab_zycbe033. FREE itab_zycbe033.
itab_zycbe033-tcode = 'FBRA'.
itab_zycbe033-tabela = '/PWS/ZYCIE085'.
itab_zycbe033-cpochv = /pws/zycie100a-nrseq.
itab_zycbe033-belnr = p_belnr.
itab_zycbe033-bukrs = /pws/zycie085-bukrs.
itab_zycbe033-bldat = p_budat.
v_belnr_ant = p_belnr.
* >> Início da inclusão: FORM EXECUTA_FBRA
itab_zycbe033-bldat = p_budat.
* << Fim da inclusão
* >> Início da exclusão: FORM EXECUTA_FBRA
IF /pws/zycbt007 IS INITIAL.
SELECT SINGLE *
FROM /pws/zycbt007
WHERE bukrs EQ /pws/zycie085-bukrs.
* << Fim da exclusão
* >> Início da inclusão: FORM EXECUTA_FBRA
CALL FUNCTION '/PWS/ZYGL_MOTIVO_ESTORNO'
EXPORTING
v_data = p_budat
v_bukrs = /pws/zycie085-bukrs
v_koart = 'K'
IMPORTING
v_subrc = vsubrc
v_gjahr = itab_zycbe033-gjahr.
IF vsubrc IS INITIAL.
itab_zycbe033-budat = p_budat.
itab_zycbe033-stgrd = /pws/zycbt007-percorr.
ELSE.
itab_zycbe033-budat = sy-datlo.
itab_zycbe033-stgrd = /pws/zycbt007-perencer.
* << Fim da inclusão
ENDIF.
* >> Início da exclusão: FORM EXECUTA_FBRA
itab_zycbe033-stgrd = /pws/zycbt007-percorr.
* << Fim da exclusão
APPEND itab_zycbe033.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023X01
...
v_nova,
v_itad_plan LIKE /pws/zycit003-netpr,
v_ttad_plan LIKE /pws/zycit003-netpr ,
v_qtd_pis LIKE /pws/zycie003-qtd_iten ,
v_qtd_cof LIKE /pws/zycie003-qtd_iten .
* >> Início da inclusão:
DATA vsubrc LIKE sy-subrc.
* << Fim da inclusão
DATA v_existe_li.
DATA: v_cif_fat TYPE /pws/zycie085-vlfob,
v_tcif_fat TYPE /pws/zycie085-vlfob.
DATA: wa_it000 LIKE /pws/zycit000,
wa_zycit078 LIKE /pws/zycit078.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/SAPMZYCI023