CE PLUS - Nota 008734

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Mercadoria

Data/Hora da Publicação: 27/07/2009 00:00:00

Data/Hora Última Alteração: 03/02/2010 17:13:15

Descrição da Nota: AO TENTAR ESTORNAR FATURA PARCELADA, APAGA DOCUMENTO DO CÂMBIO.

Sintoma

 

Ao entramos alterando fatura parcelada, clicarmos no documento de câmbio e voltarmos, apaga

documento de câmbio.

 

Solução

 

Não tentar estornar fatura parcelada se não houver alterado valor de fatura.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 08734 Data: 27/07/2009 Hora: 11:25:31

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

 

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

Nota Número              : 08734

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00010

Agrupamento              : 00107

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

AO TENTAR ESTORNAR FATURA PARCELADA, APAGA DOCUMENTO DO CÂMBIO.

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

Palavras Chave:

ESTORNO - FATURA PARCELADA - DOCUMENTO DE PROVISÃO DE CÂMBIO

 

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

Objetos da nota:

REPS /PWS/MZYCI003F01

REPS /PWS/MZYCI003I01

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F01

 

...

 

  IF /pws/zycie006-tpfatura EQ '02' OR

     /pws/zycie006-tpfatura EQ '03' OR

     /pws/zycie006-tpfatura EQ '04'.

    PERFORM visualiza_rateio.

  ELSE.

    v_resp = 'S'.

  ENDIF.

  IF v_resp EQ 'S'.

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

    IF NOT itab_zycit132[] IS INITIAL.

      LOOP AT itab_zycit132 WHERE belnr_p IS initial.

      ENDLOOP.

      IF sy-subrc EQ 0.

         v_contabiliza = 'S'.

      ENDIF.

    ENDIF.

* << Fim da inclusão

    IF /pws/zycie006-frpagto NE 'A'.

      IF /pws/zycie006-frpagto EQ 'N' OR

         /pws/zycie006-frpagto EQ 'D' OR

       ( /pws/zycie006-frpagto EQ 'P' AND NOT v_di IS INITIAL ).

        IF wa_zycie006_ini-dtincl   NE /pws/zycie006-dtincl   OR

           wa_zycie006_ini-tpfatura NE /pws/zycie006-tpfatura OR

           wa_zycie006_ini-frpagto  NE /pws/zycie006-frpagto  OR

           wa_zycie006_ini-waers    NE /pws/zycie006-waers    OR

           wa_zycie006_ini-vltotal  NE /pws/zycie006-vltotal  OR

           wa_zycie006_ini-vlmerc NE /pws/zycie006-vlmerc OR

           wa_zycie006_ini-vlfre  NE /pws/zycie006-vlfre  OR

           wa_zycie006_ini-vlseg  NE /pws/zycie006-vlseg  OR

           wa_zycie006_ini-ratval NE /pws/zycie006-ratval  OR

           wa_zycie006_ini-zterm    NE /pws/zycie006-zterm    OR

           wa_zycie006_ini-lifnr    NE /pws/zycie006-lifnr    OR

           wa_zycie006_ini-j_1bbranch NE /pws/zycie006-j_1bbranch OR

           v_contabiliza            EQ 'S'               OR

           wa_zycie006_ini-dtvencto NE /pws/zycie006-dtvencto OR

           wa_zycie006_ini-ebene    NE /pws/zycie006-ebene    OR

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

           wa_zycie006_ini-dataprvtsr NE /pws/zycie006-dataprvtsr OR

           /pws/zycie006-belnr_p         IS INITIAL.

          IF v_congela IS INITIAL.

* << Fim da exclusão

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

           wa_zycie006_ini-dataprvtsr NE /pws/zycie006-dataprvtsr .

           if /pws/zycie006-belnr_p         IS INITIAL or

           v_congela IS INITIAL.

* << Fim da inclusão

            READ TABLE itab_zycit003 INDEX 1.

            SELECT SINGLE  *

              FROM /pws/zycit042

              WHERE nrseq  EQ itab_zycit003-nrseq

                AND docnum NE ''.                       "#EC CI_NOFIRST

            IF sy-subrc NE 0 OR /pws/zycie006-tpfatura NE '01'.

              IF v_pg_ant2 <> 'X'.

                PERFORM contabilizacao_f-02_ou_f-43.

              ENDIF.

            ELSE.

              MESSAGE i015 WITH text-169.

            ENDIF.

          ELSE.

            MESSAGE i015 WITH text-135.

          ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003I01

 

...

      WHEN 'BACK'.

        SELECT SINGLE *

          FROM /pws/zycit085

          WHERE nrbl  EQ /pws/zycie006-nrseqce

            AND nrdi  NE ''

            AND dtreg NE ''.                            "#EC CI_NOFIELD

        IF sy-subrc EQ 0.

          LEAVE PROGRAM.

        ENDIF.

* >> Início da exclusão: MODULE USER_COMMAND_0100

        FREE: itab_zycit132. REFRESH: itab_zycit132.

* << Fim da exclusão

     IF sy-tcode EQ '/PWS/ZYCI003_L' OR sy-tcode EQ '/PWS/ZYCI003_E' OR

                                          sy-tcode EQ '/PWS/ZYCI003_R' .

          PERFORM verifica_alteracoes.

          CLEAR: v_dbanco, v_dforn, v_dmoeda, v_dmoeda_emb,

                 v_dtpfatura, v_dfrpagto, /pws/zycie006.

          CLEAR v_livre.

          CLEAR v_existe_lc.

          CLEAR itab_zycit047[]. REFRESH itab_zycit047.

         CLEAR itab_zycit132. REFRESH itab_zycit132. FREE itab_zycit132.

          LEAVE TO SCREEN 0 .

        ELSEIF sy-tcode EQ '/PWS/ZYCI003_C' OR sy-tcode EQ

        '/PWS/ZYCI003_A'

            OR sy-tcode = '/PWS/ZYCI003_M'.

          PERFORM verifica_alteracoes.

          CLEAR v_livre.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        FREE: itab_zycit132. REFRESH: itab_zycit132.

* << Fim da inclusão

          LEAVE PROGRAM.

        ENDIF.

      WHEN 'ELIM'.

        LOOP AT itab_zycit003 WHERE marc = 'X'.

          DELETE itab_zycit003.

          v_nitens = v_nitens - 1.

          v_contabiliza = 'S'.

        ENDLOOP.

        IF sy-subrc NE 0.

          READ TABLE itab_zycit132 WITH KEY mark = 'X'.

...