CE PLUS - Nota 006175

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Recebimento

Data/Hora da Publicação: 14/03/2008 00:00:00

Data/Hora Última Alteração: 23/02/2011 09:55:45

Descrição da Nota: AJUSTE PARA VERIFICAR ESTORNO DOS DOCUMENTOS DE RECEBIMENTO FORA DO CE

Sintoma

Ajuste para verificar estorno dos documentos realizados fora do programa de recebimento

 

 

Solução

Ajuste para verificar estorno dos documentos realizados fora do programa de recebimento

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ABERTO PONTOS DE EXIT NO ESTORNO DO RECEBIMENTO.

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 06175 Data: 14/03/2008 Hora: 16:31:48

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 06175

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00004

Agrupamento              : 00038

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

00101  - 00001 - 6.0    - 00021  - ABERTO PONTOS DE EXIT NO ESTORNO DO RECEBIMENTO.

----------------------------------------------------------------------------------------------------

AJUSTE PARA VERIFICAR ESTORNO DOS DOCUMENTOS DE RECEBIMENTO FORA DO CE

----------------------------------------------------------------------------------------------------

Palavras Chave:

ESTORNO - DOCUMENTO - FORA - RECEBIMENTO - CE

/PWS/SAPMZYCI017

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/MZYCI017F02

REPS /PWS/MZYCI017F03

REPS /PWS/MZYCI017X01

REPT /PWS/SAPMZYCI017

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI017F02

 

...

 

  IF NOT wa_nf-belnrf02fre IS INITIAL.

    PERFORM verifica_conta.

    IF v_bloq NE 'N'.

      PERFORM reverse_documento_provfre_fb08.

    ENDIF.

  ENDIF.

* >> Início da inclusão: FORM ESTORNA_IMPOSTO

  IF NOT wa_nf-belnrf02fre IS INITIAL.

    EXIT.

  ENDIF.

* << Fim da inclusão

  IF NOT wa_nf-belnrf02seg IS INITIAL.

    PERFORM verifica_conta.

    IF v_bloq NE 'N'.

      PERFORM reverse_documento_provseg_fb08.

* >> Início da inclusão: FORM ESTORNA_IMPOSTO

    ENDIF.

* << Fim da inclusão

    ENDIF.

* >> Início da inclusão: FORM ESTORNA_IMPOSTO

  IF NOT wa_nf-belnrf02seg IS INITIAL.

    EXIT.

* << Fim da inclusão

  ENDIF.

  IF NOT wa_nf-belnr_f_02 IS INITIAL.

    PERFORM verifica_conta.

    IF v_bloq NE 'N'.

      PERFORM reverse_documento_impos_fb08.

    ENDIF.

  ENDIF.

...

 

...

 

        PERFORM trata_retorno_fbra_contab.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_CONTAB_FBRA

        PERFORM popup_message USING text-041 text-025.

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_f_51,

                 wa_nf-belnr_f_51  ,

                 wa_nf-dt_f_51     .

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

          v_fbra_ok = 'S'.

        ENDIF.

* << Fim da exclusão

      ENDIF.

    ELSE.

      IF itab_zycbt034[] IS INITIAL.

        PERFORM trata_retorno_fbra_contab.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_CONTAB_FBRA

        PERFORM popup_message USING text-041 text-025.

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_f_51,

                 wa_nf-belnr_f_51  ,

                 wa_nf-dt_f_51     .

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

          v_fbra_ok = 'S'.

        ENDIF.

* << Fim da exclusão

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

...

          LOOP AT itab_zycit032.

            MESSAGE i015 WITH itab_zycit032-msg+0(50)

                              itab_zycit032-msg+50(50).

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FATURA_MR8M

          ENDLOOP.

          PERFORM verifica_estorno_r3 USING 'RBKP'

                                            wa_nf-belnr_f_02

                                            wa_nf-dt_f_02

                                   CHANGING v_answer.

          IF v_answer = 'J'.

            v_belnr_ant = wa_nf-belnr_mr1m.

            CLEAR: wa_nf-statusp_mr1m, wa_nf-belnr_mr1m, wa_nf-dt_mr1m.

            itab_zycit050-estorno = 'X'.

            IF v_existe_nfr NE 'S'.

              MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

              MODIFY /pws/zycit041 FROM /pws/zycie041.

              LOOP AT itab_itens_nf.

                CLEAR: v_nrseqdid.

               SELECT SINGLE nrseqdi INTO v_nrseqdid FROM /pws/zycit100

                   WHERE nrseq = itab_itens_nf-nrseq.   "#EC CI_NOFIRST

                SELECT SINGLE * FROM /pws/zycit085

                INTO wa_zycit085

                WHERE nrseqdi = v_nrseqdid.

                MOVE: itab_itens_nf-mandt    TO itab_itens_002-mandt,

                      wa_nf-bukrs            TO itab_itens_002-bukrs,

                      itab_itens_nf-matnr    TO itab_itens_002-matnr,

                      v_belnr_ant            TO itab_itens_002-belnr,

                      t001-land1             TO itab_itens_002-land1,

                      itab_itens_nf-qtd_item TO itab_itens_002-qtdini,

                      itab_itens_nf-qtd_item TO itab_itens_002-qtddisp,

                      itab_itens_nf-nrseq    TO itab_itens_002-feidi,

                      sy-datlo               TO itab_itens_002-erdat.

                APPEND itab_itens_002.

                CLEAR itab_itens_002.

              ENDLOOP.

            ELSE.

              MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

              MODIFY /pws/zycit043 FROM /pws/zycie043.

              LOOP AT itab_itens_nf.

                CLEAR: v_nrseqdid.

               SELECT SINGLE nrseqdi INTO v_nrseqdid FROM /pws/zycit100

                   WHERE nrseq = itab_itens_nf-nrseq.   "#EC CI_NOFIRST

                SELECT SINGLE * FROM /pws/zycit085

                INTO wa_zycit085

                WHERE nrseqdi = v_nrseqdid.

                MOVE: itab_itens_nf-mandt    TO itab_itens_002-mandt,

                      wa_nf-bukrs            TO itab_itens_002-bukrs,

                      itab_itens_nf-matnr    TO itab_itens_002-matnr,

                      v_belnr_ant            TO itab_itens_002-belnr,

                      t001-land1             TO itab_itens_002-land1,

                      itab_itens_nf-qtd_item TO itab_itens_002-qtdini,

                      itab_itens_nf-qtd_item TO itab_itens_002-qtddisp,

                      itab_itens_nf-nrseq    TO itab_itens_002-feidi,

                      sy-datlo               TO itab_itens_002-erdat.

                APPEND itab_itens_002.

                CLEAR itab_itens_002.

* << Fim da inclusão

          ENDLOOP.

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FATURA_MR8M

              UPDATE /pws/zycit041 SET statusp_j1b2 = ' '

                            WHERE nrseq        = /pws/zycie043-nrseq

                              AND nfglobal     = /pws/zycie043-nfglobal

                             AND docnum       = /pws/zycie043-docnumnfg.

            ENDIF.

            COMMIT WORK.

            v_mr8m_ok = 'S'.

            CLEAR v_mr1m_ok.

          ENDIF.

* << Fim da inclusão

        ENDIF.

      ENDIF.

    ELSE.

 

...

 

...

                          AND nfglobal     = /pws/zycie043-nfglobal

                          AND docnum       = /pws/zycie043-docnumnfg.

        ENDIF.

        COMMIT WORK.

        v_mr8m_ok = 'S'.

        CLEAR v_mr1m_ok.

      ELSE.

        LOOP AT itab_zycit032.

          MESSAGE i015 WITH itab_zycit032-msg+0(50)

                            itab_zycit032-msg+50(50).

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FATURA_MR8M

        ENDLOOP.

        PERFORM verifica_estorno_r3 USING 'RBKP'

                                          wa_nf-belnr_f_02

                                          wa_nf-dt_f_02

                                 CHANGING v_answer.

        IF v_answer = 'J'.

          v_belnr_ant = wa_nf-belnr_mr1m.

          CLEAR: wa_nf-statusp_mr1m, wa_nf-belnr_mr1m, wa_nf-dt_mr1m.

          itab_zycit050-estorno = 'X'.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

            LOOP AT itab_itens_nf.

              CLEAR: v_nrseqdid.

              SELECT SINGLE nrseqdi INTO v_nrseqdid FROM /pws/zycit100

              WHERE nrseq = itab_itens_nf-nrseq.        "#EC CI_NOFIRST

              SELECT SINGLE * FROM /pws/zycit085

              INTO wa_zycit085

              WHERE nrseqdi = v_nrseqdid.

              MOVE: itab_itens_nf-mandt    TO itab_itens_002-mandt,

                    wa_nf-bukrs            TO itab_itens_002-bukrs,

                    itab_itens_nf-matnr    TO itab_itens_002-matnr,

                    v_belnr_ant            TO itab_itens_002-belnr,

                    t001-land1             TO itab_itens_002-land1,

                    itab_itens_nf-qtd_item TO itab_itens_002-qtdini,

                    itab_itens_nf-qtd_item TO itab_itens_002-qtddisp,

                    itab_itens_nf-nrseq    TO itab_itens_002-feidi,

                    sy-datlo               TO itab_itens_002-erdat.

              APPEND itab_itens_002.

              CLEAR itab_itens_002.

            ENDLOOP.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

            LOOP AT itab_itens_nf.

              CLEAR: v_nrseqdid.

              SELECT SINGLE nrseqdi INTO v_nrseqdid FROM /pws/zycit100

              WHERE nrseq = itab_itens_nf-nrseq.        "#EC CI_NOFIRST

              SELECT SINGLE * FROM /pws/zycit085

              INTO wa_zycit085

              WHERE nrseqdi = v_nrseqdid.

              MOVE: itab_itens_nf-mandt    TO itab_itens_002-mandt,

                    wa_nf-bukrs            TO itab_itens_002-bukrs,

                    itab_itens_nf-matnr    TO itab_itens_002-matnr,

                    v_belnr_ant            TO itab_itens_002-belnr,

                    t001-land1             TO itab_itens_002-land1,

                    itab_itens_nf-qtd_item TO itab_itens_002-qtdini,

                    itab_itens_nf-qtd_item TO itab_itens_002-qtddisp,

                    itab_itens_nf-nrseq    TO itab_itens_002-feidi,

                    sy-datlo               TO itab_itens_002-erdat.

              APPEND itab_itens_002.

              CLEAR itab_itens_002.

* << Fim da inclusão

        ENDLOOP.

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FATURA_MR8M

            UPDATE /pws/zycit041 SET statusp_j1b2 = ' '

                          WHERE nrseq        = /pws/zycie043-nrseq

                            AND nfglobal     = /pws/zycie043-nfglobal

                           AND docnum       = /pws/zycie043-docnumnfg.

          ENDIF.

          COMMIT WORK.

          v_mr8m_ok = 'S'.

          CLEAR v_mr1m_ok.

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDIF.

...

 

...

 

        PERFORM trata_retorno_fbra_fisico.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA

        PERFORM popup_message USING text-026 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA

        PERFORM verifica_estorno_r3 USING 'MSEG'

                                          wa_nf-mblnr_mb01

                                          wa_nf-dt_mb01

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_mb01, wa_nf-mblnr_mb01, wa_nf-dt_mb01.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

          v_mbst_ok = 'S'.

        ENDIF.

      ENDIF.

    ELSE.

      IF itab_zycbt034[] IS INITIAL.

        PERFORM trata_retorno_fbra_fisico.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA

        PERFORM popup_message USING text-026 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA

        PERFORM verifica_estorno_r3 USING 'MSEG'

                                          wa_nf-mblnr_mb01

                                          wa_nf-dt_mb01

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_mb01, wa_nf-mblnr_mb01, wa_nf-dt_mb01.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

...

 

...

                t_zycbt032      = itab_zycbt032

           EXCEPTIONS

                campo_em_branco = 1

                OTHERS          = 2.

      IF sy-subrc = 0.

        PERFORM trata_retorno_fb08_imposto.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_IMPOS_FB08

        PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_IMPOS_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnr_f_02

                                          wa_nf-dt_f_02

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_f_02 , wa_nf-belnr_f_02, wa_nf-dt_f_02.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

        ENDIF.

      ENDIF.

    ELSE.

      IF itab_zycbt034[] IS INITIAL.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_IMPOS_FB08

        PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_IMPOS_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnr_f_02

                                          wa_nf-dt_f_02

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_f_02 , wa_nf-belnr_f_02, wa_nf-dt_f_02.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

...

 

...

 

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_PROVSEG_FB08

        PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_PROVSEG_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnrf02seg

                                          wa_nf-dt_f02seg

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-belnrf02seg, wa_nf-dt_f02seg.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

...

 

...

 

      IF itab_zycbt034[] IS INITIAL.

        PERFORM trata_retorno_fb08_seguro.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_PROVSEG_FB08

        PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_PROVSEG_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnrf02seg

                                          wa_nf-dt_f02seg

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-belnrf02seg, wa_nf-dt_f02seg.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            UPDATE /pws/zycit041 SET belnrf02seg   = wa_nf-belnrf02seg

...

 

...

                t_zycbt032      = itab_zycbt032

           EXCEPTIONS

                campo_em_branco = 1

                OTHERS          = 2.

      IF sy-subrc = 0.

        PERFORM trata_retorno_fb08_contab.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da inclusão: FORM REVERSE_COCUMENTO_CONTAB_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnr_f_51

                                          wa_nf-dt_f_51

                                 CHANGING v_answer.

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_f_51,

                 wa_nf-belnr_f_51  ,

                 wa_nf-dt_f_51     .

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

          v_fbra_ok = 'S'.

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ELSE.

      IF itab_zycbt034[] IS INITIAL.

        PERFORM trata_retorno_fb08_contab.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da inclusão: FORM REVERSE_COCUMENTO_CONTAB_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnr_f_51

                                          wa_nf-dt_f_51

                                 CHANGING v_answer.

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_f_51,

                 wa_nf-belnr_f_51  ,

                 wa_nf-dt_f_51     .

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

          v_fbra_ok = 'S'.

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDIF.

...

 

...

 

        PERFORM trata_retorno_fb08_frete.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_PROVFRE_FB08

        PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_PROVFRE_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnrf02fre

                                          wa_nf-dt_f02fre

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-belnrf02fre, wa_nf-dt_f02fre.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

 

...

 

...

 

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016 WITH itab_zycbt034-descricao.

        ENDLOOP.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_PROVFRE_FB08

        PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM REVERSE_DOCUMENTO_PROVFRE_FB08

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnrf02fre

                                          wa_nf-dt_f02fre

                                 CHANGING v_answer.

* << Fim da inclusão

        IF v_answer = 'J'.

          CLEAR: wa_nf-belnrf02fre, wa_nf-dt_f02fre.

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            UPDATE /pws/zycit041 SET belnrf02fre   = wa_nf-belnrf02fre

...

 

...

 

  READ TABLE itab_zycbt032 WITH KEY tcode  = 'FBRA'

                                    tabela = 'WA_NF'

                                    cpochv = wa_nf-nrseq

                                    tpmsg  = 'S'.

  IF sy-subrc EQ 0.

    MESSAGE i030 WITH v_belnr_ant.

* >> Início da exclusão: FORM TRATA_RETORNO_FBRA_CONTAB

    CLEAR: wa_nf-statusp_f_51 , wa_nf-belnr_f_51, wa_nf-dt_f_51.

    itab_zycit050-estorno = 'X'.

    IF v_existe_nfr NE 'S'.

      MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

      MODIFY /pws/zycit041 FROM /pws/zycie041.

    ELSE.

      MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

      MODIFY /pws/zycit043 FROM /pws/zycie043.

    ENDIF.

    COMMIT WORK.

* << Fim da exclusão

    v_fbra_ok = 'S'.

  ELSE.

    LOOP AT itab_zycbt032.

      MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                                          itab_zycbt032-msg+50(50).

    ENDLOOP.

* >> Início da exclusão: FORM TRATA_RETORNO_FBRA_CONTAB

    PERFORM popup_message USING text-041 text-025.

    IF v_answer = 'J'.

      CLEAR: wa_nf-statusp_f_51,

             wa_nf-belnr_f_51  ,

             wa_nf-dt_f_51

             .

      IF v_existe_nfr NE 'S'.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

        MODIFY /pws/zycit041 FROM /pws/zycie041.

      ELSE.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

        MODIFY /pws/zycit043 FROM /pws/zycie043.

      ENDIF.

      COMMIT WORK.

      v_fbra_ok = 'S'.

* << Fim da exclusão

    ENDIF.

* >> Início da exclusão: FORM TRATA_RETORNO_FBRA_CONTAB

  ENDIF.

* << Fim da exclusão

ENDFORM.

...

 

...

      MODIFY /pws/zycit043 FROM /pws/zycie043.

    ENDIF.

    COMMIT WORK.

    v_mbst_ok = 'S'.

  ELSE.

    LOOP AT itab_zycit032.

      MESSAGE i015 WITH itab_zycit032-msg+0(50)

                        itab_zycit032-msg+50(50).

    ENDLOOP.

    PERFORM clear_date_batch.

* >> Início da exclusão: FORM TRATA_RETORNO_FBRA_FISICO

    PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM TRATA_RETORNO_FBRA_FISICO

    PERFORM verifica_estorno_r3 USING 'MSEG'

                                      wa_nf-mblnr_mb01

                                      wa_nf-dt_mb01

                             CHANGING v_answer.

* << Fim da inclusão

    IF v_answer = 'J'.

      CLEAR: wa_nf-statusp_mb01, wa_nf-mblnr_mb01, wa_nf-dt_mb01.

      IF v_existe_nfr NE 'S'.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

        MODIFY /pws/zycit041 FROM /pws/zycie041.

      ELSE.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

        MODIFY /pws/zycit043 FROM /pws/zycie043.

      ENDIF.

      COMMIT WORK.

...

 

...

      WHERE nrseq    = /pws/zycie041-nrseq

        AND nfglobal = /pws/zycie041-nfglobal

        AND docnum   = /pws/zycie043-docnumnfg.

    ENDIF.

    COMMIT WORK.

  ELSE.

    LOOP AT itab_zycbt032.

      MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                        itab_zycbt032-msg+50(50).

    ENDLOOP.

* >> Início da exclusão: FORM TRATA_RETORNO_FB08_IMPOSTO

    PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM TRATA_RETORNO_FB08_IMPOSTO

    PERFORM verifica_estorno_r3 USING 'F-02'

                                      wa_nf-belnr_f_02

                                      wa_nf-dt_f_02

                             CHANGING v_answer.

* << Fim da inclusão

    IF v_answer = 'J'.

      CLEAR: wa_nf-statusp_f_02, wa_nf-belnr_f_02, wa_nf-dt_f_02.

      IF v_existe_nfr NE 'S'.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

        MODIFY /pws/zycit041 FROM /pws/zycie041.

      ELSE.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

        MODIFY /pws/zycit043 FROM /pws/zycie043.

      ENDIF.

      COMMIT WORK.

...

 

...

                           dt_f02seg    = wa_nf-dt_f02seg

                        WHERE nrseq     = wa_nf-nrseq

                          AND nfglobal  = wa_nf-nfglobal.

    ENDIF.

    COMMIT WORK.

  ELSE.

    LOOP AT itab_zycbt032.

      MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                        itab_zycbt032-msg+50(50).

    ENDLOOP.

* >> Início da exclusão: FORM TRATA_RETORNO_FB08_SEGURO

    PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM TRATA_RETORNO_FB08_SEGURO

    PERFORM verifica_estorno_r3 USING 'F-02'

                                      wa_nf-belnrf02seg

                                      wa_nf-dt_f02seg

                             CHANGING v_answer.

* << Fim da inclusão

    IF v_answer = 'J'.

      CLEAR: wa_nf-belnrf02seg, wa_nf-dt_f02seg.

      IF v_existe_nfr NE 'S'.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

        MODIFY /pws/zycit041 FROM /pws/zycie041.

      ELSE.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

        MODIFY /pws/zycit043 FROM /pws/zycie043.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

        UPDATE /pws/zycit041 SET belnrf02seg   = wa_nf-belnrf02seg

...

 

...

      MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

      MODIFY /pws/zycit043 FROM /pws/zycie043.

    ENDIF.

    COMMIT WORK.

    v_fb08_ok = 'S'.

  ELSE.

    LOOP AT itab_zycbt032.

      MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                                          itab_zycbt032-msg+50(50).

    ENDLOOP.

* >> Início da inclusão: FORM TRATA_RETORNO_FB08_CONTAB

        PERFORM verifica_estorno_r3 USING 'F-02'

                                          wa_nf-belnr_f_51

                                          wa_nf-dt_f_51

                                 CHANGING v_answer.

        IF v_answer = 'J'.

          CLEAR: wa_nf-statusp_f_51,

                 wa_nf-belnr_f_51  ,

                 wa_nf-dt_f_51     .

          IF v_existe_nfr NE 'S'.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

            MODIFY /pws/zycit041 FROM /pws/zycie041.

          ELSE.

            MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

            MODIFY /pws/zycit043 FROM /pws/zycie043.

          ENDIF.

          COMMIT WORK.

          v_fbra_ok = 'S'.

        ENDIF.

* << Fim da inclusão

  ENDIF.

ENDFORM.

...

 

...

 

  ELSE.

    LOOP AT itab_zycbt032.

      MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                        itab_zycbt032-msg+50(50).

    ENDLOOP.

* >> Início da exclusão: FORM TRATA_RETORNO_FB08_FRETE

    PERFORM popup_message USING text-041 text-025.

* << Fim da exclusão

* >> Início da inclusão: FORM TRATA_RETORNO_FB08_FRETE

    PERFORM verifica_estorno_r3 USING 'F-02'

                                      wa_nf-belnrf02fre

                                      wa_nf-dt_f02fre

                             CHANGING v_answer.

* << Fim da inclusão

    IF v_answer = 'J'.

      CLEAR: wa_nf-belnrf02fre, wa_nf-dt_f02fre.

      IF v_existe_nfr NE 'S'.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

        MODIFY /pws/zycit041 FROM /pws/zycie041.

      ELSE.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie043.

        MODIFY /pws/zycit043 FROM /pws/zycie043.

        MOVE-CORRESPONDING wa_nf TO /pws/zycie041.

        UPDATE /pws/zycit041 SET belnrf02fre   = wa_nf-belnrf02fre

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI017F03

 

...

 

* >> Início da inclusão:

FORM verifica_estorno_r3 USING    p_ver

                                  p_belnr

                                  p_data

                         CHANGING v_answer.

  CLEAR: v_answer.

  IF p_ver = 'RBKP'.

    SELECT SINGLE * FROM rbkp

              WHERE belnr EQ p_belnr

              AND   gjahr EQ p_data(4).

    IF sy-subrc EQ 0 AND NOT rbkp-stblg IS INITIAL.

      PERFORM popup_message USING text-026 text-025.

      IF v_answer = 'J'.

      ELSE.

      ENDIF.

    ELSE.

      MESSAGE i015 WITH text-111.

    ENDIF.

  ELSEIF p_ver = 'MSEG'.

    SELECT  SINGLE * FROM mseg

        WHERE smbln EQ p_belnr

        AND   sjahr EQ p_data(4).                       "#EC CI_NOFIRST

    IF sy-subrc EQ 0.

      PERFORM popup_message USING text-026 text-025.

      IF v_answer = 'J'.

      ELSE.

      ENDIF.

    ELSE.

      MESSAGE i015 WITH text-111.

    ENDIF.

  ELSE.

    IF /pws/zycie001-bukrs IS INITIAL.

      /pws/zycie001-bukrs = /pws/zycit001-bukrs.

    ENDIF.

    SELECT SINGLE * FROM bkpf

              WHERE bukrs EQ /pws/zycie001-bukrs

              AND   belnr EQ p_belnr

              AND   gjahr EQ p_data(4).

    IF sy-subrc EQ 0 AND NOT bkpf-stblg IS INITIAL.

      PERFORM popup_message USING text-026 text-025.

      IF v_answer = 'J'.

      ELSE.

      ENDIF.

    ELSE.

      MESSAGE i015 WITH text-111.

    ENDIF.

  ENDIF.

ENDFORM.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI017X01

 

...

 

* >> Início da inclusão:

 tables mseg.

* << Fim da inclusão

DATA: BEGIN OF COMMON PART a.

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPT /PWS/SAPMZYCI017

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 111

 

Texto: (33 caracteres)

"Documento não pode ser estornado."

 

Comprimento máximo: 40

 

------------------------------------------------------------------------

Tradução

 

Idioma: EN

 

Símbolo: 111

 

Texto: (29 caracteres)

"Document can not be reversed."

 

Comprimento máximo: 40