CE PLUS - Nota 002659

Módulo: CÂMBIO FINANCEIRO

Funcionalidade: Rotina de Pagamento

Data/Hora da Publicação: 11/12/2006 00:00:00

Data/Hora Última Alteração: 18/02/2011 11:44:38

Descrição da Nota: COMPLEMENTO DO BOLETO DE REMESSA - TAXA AO RECONTABILIZAR IMPOSTOS

Sintoma

Quando o sistema está parametrizado para efetuar a recontabilização de impostos, ao fazer o

complemento do boleto de remessas financeiras, o programa está lançando os documentos contábeis de

impostos com a taxa da remessa financeira ao invés do complemento do boleto.

 

 

Solução

O programa passou a considerar a taxa do complemento do boleto ao gerar os documentos contábeis para

os impostos no complemento do boleto.

 

Versões Tratadas

6.0

Informações Complementares

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

Nota Número 02659 Data: 11/12/2006 Hora: 08:02:37

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

 

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

Nota Número              : 02659

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00026

Agrupamento              : 00144

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

COMPLEMENTO DO BOLETO DE REMESSA - TAXA AO RECONTABILIZAR IMPOSTOS

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

Palavras Chave:

REMESSA IMPOSTO COMPLEMENTO BOLETO TAXA RECONTABILIZAR

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCB110                        0100

REPS /PWS/MZYCA110F01

REPS /PWS/MZYGL110F01

REPS /PWS/MZYGL110TOP

 

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCB110                        0100

 

...

  ENDCHAIN.

 

  LOOP AT itab_zycbt031_tc.

    FIELD /pws/zycbe048-instituicao MODULE consiste_instituicao.

 

    MODULE altera_dados.

  ENDLOOP.

 

  CALL SUBSCREEN ss_dados.

 

* >> Início da exclusão: Tela 100

* MODULE: calcula_vlmi, "Chamado 185704 - Daniela N. 06/09/04

* << Fim da exclusão

* >> Início da inclusão: Tela 100

  MODULE:

* << Fim da inclusão

 

          user_command_0200,

          user_command_exit AT EXIT-COMMAND.

 

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

Modificações efetuadas em REPS /PWS/MZYCA110F01

 

...

    itab_zycbe033-contabreal = 'X'.

  ENDIF.

  itab_zycbe033-mandt = sy-mandt.

  itab_zycbe033-tcode = v_trans.

  itab_zycbe033-tabela = '/PWS/ZYCBT031'.

  itab_zycbe033-cpochv = /pws/zycbe031-nrseq.

  itab_zycbe033-bcorec = /pws/zycbe031-bco.

  itab_zycbe033-budat  = itab_dados_tc-dtlanc.

  IF /pws/zycbe031-contabreal IS INITIAL OR

     NOT p_recontabiliza IS INITIAL.

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

    IF NOT p_recontabiliza IS INITIAL.

      SELECT SINGLE kursf FROM bkpf INTO itab_zycbe033-kursf

                    WHERE bukrs = itab_zycbt124_aux-bukrs

                      AND belnr = itab_zycat025-belnr_pr

                      AND gjahr = itab_zycat025-dtlanc(4).

      itab_zycbe033-wrbtr  = itab_zycat025-vlimpme.

      itab_zycbe033-dmbtr  = itab_zycat025-vlimpmi.

    ELSE.

* << Fim da exclusão

      itab_zycbe033-kursf  = itab_dados_tc-kursf.

      itab_zycbe033-wrbtr  = itab_dados_tc-vlme.

      itab_zycbe033-dmbtr  = itab_dados_tc-vlmi.

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

    ENDIF.

* << Fim da exclusão

    itab_zycbe033-waersb = wa_zycbt007-waersb.

  ELSE.

    itab_zycbe033-wrbtr  = itab_dados_tc-vlme.

  ENDIF.

...

 

 

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

 

Modificações efetuadas em REPS /PWS/MZYGL110F01

 

...

    ELSE.

      itab_zycbt031_tc-belnr_p    = /pws/zycbe031-belnr_p.

      itab_zycbt031_tc-belnr_pi   = /pws/zycbe031-belnr_pi.

      itab_zycbt031_tc-belnr_cide = /pws/zycbe031-belnr_cide.

    ENDIF.

    MODIFY itab_zycbt031_tc.

  ENDLOOP.

ENDFORM.

FORM altera_dados.

  DATA: v_currdec LIKE tcurx-currdec.

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

  if tc_cont-current_line = 1.

    clear: v_vlmi_tot, v_vlmiir_tot.

  endif.

* << Fim da inclusão

  itab_zycbt031_tc-bukrs         = /pws/zycbt031-bukrs.

  itab_zycbt031_tc-gsber         = /pws/zycbe119-gsber.

  itab_zycbt031_tc-werks         = /pws/zycbe119-werks.

  itab_zycbt031_tc-j_1bbranch    = /pws/zycbe119-j_1bbranch.

  itab_zycbt031_tc-belnr_p       = /pws/zycbt031-belnr_p.

  itab_zycbt031_tc-belnr_pi      = /pws/zycbt031-belnr_pi.

  itab_zycbt031_tc-belnr_cide    = /pws/zycbt031-belnr_cide.

  itab_zycbt031_tc-belnr_c       = /pws/zycbe134-belnr_c.

  itab_zycbt031_tc-belnr_ci      = /pws/zycbe134-belnr_ci.

  itab_zycbt031_tc-v_belnr_cide  = v_belnr_cide.

...

 

...

  ENDIF.

  v_vlmeaux = itab_zycbt031_tc-v_vlme / ( 10 ** ( v_currdec - 2 ) ).

  IF ( NOT /pws/zycbe031-kursf IS INITIAL AND

       /pws/zycbe064-vlmi IS INITIAL ) OR v_taxa_alter_p = 'X'.

    itab_zycbt031_tc-v_vlmi = /pws/zycbe064-vlmi =

       ( ( /pws/zycbe031-kursf / v_dfact ) * v_pfact ) * v_vlmeaux.

    IF wa_tcurx-currdec = 0.

      itab_zycbt031_tc-v_vlmi = itab_zycbt031_tc-v_vlmi *

                                 ( 10 ** ( wa_tcurx-currdec - 2 ) ).

    ENDIF.

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

    v_vlmi_tot = v_vlmi_tot + itab_zycbt031_tc-v_vlmi.

    DESCRIBE TABLE itab_zycbt031_tc LINES v_linha.

    IF v_linha = tc_cont-current_line.

      IF v_vlmi_tot > /pws/zycbe031-vlmi.

        v_dif = v_vlmi_tot - /pws/zycbe031-vlmi.

        itab_zycbt031_tc-v_vlmi = itab_zycbt031_tc-v_vlmi - v_dif.

      ELSEIF v_vlmi_tot < /pws/zycbe031-vlmi.

        v_dif = /pws/zycbe031-vlmi - v_vlmi_tot.

        itab_zycbt031_tc-v_vlmi = itab_zycbt031_tc-v_vlmi + v_dif.

      ENDIF.

    ENDIF.

* << Fim da inclusão

  ELSE.

    itab_zycbt031_tc-v_vlmi = /pws/zycbe064-vlmi.

  ENDIF.

  v_vlmeaux = itab_zycbt031_tc-v_vlir / ( 10 ** ( v_currdec - 2 ) ).

  IF ( NOT /pws/zycbe031-taxair IS INITIAL AND

       /pws/zycbe064-vlmiir IS INITIAL ) OR v_taxa_alter_i = 'X'.

    itab_zycbt031_tc-v_vlmiir = /pws/zycbe064-vlmiir =

    ( ( /pws/zycbe031-taxair / v_dfact ) * v_pfact ) * v_vlmeaux.

    IF wa_tcurx-currdec = 0.

      itab_zycbt031_tc-v_vlmiir = itab_zycbt031_tc-v_vlmiir *

                                 ( 10 ** ( wa_tcurx-currdec - 2 ) ).

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

    ENDIF.

    v_vlmiir_tot = v_vlmiir_tot + itab_zycbt031_tc-v_vlmiir.

    DESCRIBE TABLE itab_zycbt031_tc LINES v_linha.

    IF v_linha = tc_cont-current_line.

      IF v_vlmiir_tot > /pws/zycbe031-vlmiir.

        v_dif = v_vlmiir_tot - /pws/zycbe031-vlmiir.

        itab_zycbt031_tc-v_vlmiir = itab_zycbt031_tc-v_vlmiir - v_dif.

      ELSEIF v_vlmiir_tot < /pws/zycbe031-vlmiir.

        v_dif = /pws/zycbe031-vlmiir - v_vlmiir_tot.

        itab_zycbt031_tc-v_vlmiir = itab_zycbt031_tc-v_vlmiir + v_dif.

* << Fim da inclusão

    ENDIF.

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

    ENDIF.

* << Fim da inclusão

  ELSE.

    itab_zycbt031_tc-v_vlmiir = /pws/zycbe064-vlmiir.

  ENDIF.

  v_vlmeaux = itab_zycbt031_tc-v_vlcide / ( 10 ** ( v_currdec - 2 ) ).

  IF ( NOT /pws/zycbe031-taxacide IS INITIAL AND

       /pws/zycbe064-vlmicide IS INITIAL ) OR v_taxa_alter_c = 'X'.

...

 

...

    EXIT.

  ENDIF.

  CLEAR: itab_zycbt064, itab_zycbt064.

  REFRESH: itab_zycbt064, itab_zycbt064.

  SELECT * FROM /pws/zycbt064

           INTO TABLE itab_zycbt064

           WHERE nrboleto = /pws/zycbe031-nrseq.

  itab_zycbt064[] = itab_zycbt064[].

  PERFORM seleciona_dados_gerais.

  PERFORM carrega_dados.

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

  IF /pws/zycbe031-mdcorresp NE 'IU'.

    CLEAR v_corrige.

    IF tcurx-currdec = 0.

      v_vlmeaux = /pws/zycbe031-vlme / ( 10 ** ( tcurx-currdec - 2 ) ).

      v_corrige = v_vlmeaux * /pws/zycbe031-kursf.

    ELSE.

      v_corrige = /pws/zycbe031-vlme * /pws/zycbe031-kursf.

    ENDIF.

    v_corrige = v_corrige - /pws/zycbe031-vlmi.

    /pws/zycbe031-vlmi = /pws/zycbe031-vlmi + v_corrige.

    IF NOT itab_zycbt031_tc[] IS INITIAL.

      DESCRIBE TABLE itab_zycbt031_tc LINES v_conta.

      READ TABLE itab_zycbt031_tc INDEX v_conta.

      itab_zycbt031_tc-v_vlmi = itab_zycbt031_tc-v_vlmi + v_corrige.

      MODIFY itab_zycbt031_tc INDEX v_conta TRANSPORTING v_vlmi.

    ENDIF.

  ENDIF.

* << Fim da exclusão

  IF /pws/zycbe031-mdcorresp EQ 'EL'.

    SELECT SINGLE parvw FROM /pws/zycbt017

         INTO v_parvw

         WHERE nrinvoic EQ /pws/zycbe031-nrcorresp.

    SELECT SINGLE * FROM /pws/zycbt007.

    IF ( v_parvw EQ 'CG'   OR

         v_parvw EQ 'AD'   OR

         v_parvw EQ 'DA' ) AND

         /pws/zycbt007-comis NE 'R'.

      MOVE 'X' TO v_comis.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL110TOP

 

...

  v_dtliquida        LIKE /pws/zycbt048-dtliquida,

  v_slpgfat          LIKE /pws/zycbt119-slpgfat,

  v_slfat            LIKE /pws/zycbt108-slfat,

  v_nrmsg              TYPE i VALUE 0 ,

  v_transacao          LIKE /pws/zycbe033-tcode,

  v_mode               TYPE c         ,

  v_update             TYPE c         ,

  v_msgno              LIKE t100-msgnr,

  v_nrseq1             LIKE /pws/zycie008-nrseq,

  v_indice(02)         TYPE n         ,

* >> Início da exclusão:

  v_indcampo(40)       TYPE c         .

* << Fim da exclusão

* >> Início da inclusão:

  v_indcampo(40)       TYPE c         ,

  v_vlmi_tot         type /pws/zycbe031-vlmi,

  v_vlmiir_tot       type /pws/zycbe031-vlmiir.

* << Fim da inclusão

DATA: v_codparc(03) TYPE c.

DATA: v_dfact         LIKE tcurr-ffact,

      v_pfact         LIKE tcurr-ffact,

      v_ctmoeda       LIKE tcurr-kurst.

DATA:

      v_taxa_dia      LIKE tcurr-ukurs,

      v_nrparc        LIKE /pws/zycbt113-nrparc,

      v_waers         LIKE /pws/zycbt112-waers,

      v_tipo2(30)     TYPE c,

      v_modifica,

...