CE PLUS - Nota 010794

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Nota Fiscal

Data/Hora da Publicação: 06/12/2010 00:00:00

Data/Hora Última Alteração: 23/02/2011 09:14:35

Descrição da Nota: VALORES DE FUNDAP FICAM ERRADOS AO ALTERAR O TIPO DE NOTA FISCAL

Sintoma

Ao modificar o tipo de nota fiscal no processo de Fundap os valores da nota ficam incorretos.

 

 

Solução

Ajustado programa para recalcular os valores de Fundap ao modificar o tipo de nota fiscal.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

QUANDO ESTAMOS CRIANDO A NOTA FISCAL GLOBAL, PARA MAIS DE 10.

Informações Complementares

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

Nota Número 10794 Data: 06/12/2010 Hora: 09:15:26

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

 

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

Nota Número              : 10794

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00005

Agrupamento              : 00050

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

Referência às notas relacionadas:

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

 

01469  - 00001 - 6.0    - 00023  - QUANDO ESTAMOS CRIANDO A NOTA FISCAL GLOBAL, PARA MAIS DE 10.

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

VALORES DE FUNDAP FICAM ERRADOS AO ALTERAR O TIPO DE NOTA FISCAL

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

Palavras Chave:

ERRO - VALOR - FUNDAP - MODIFICAR - TIPO - NOTA - FISCAL

/PWS/SAPMZYCI016

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

Objetos da nota:

REPS /PWS/MZYCI016F02

REPS /PWS/MZYCI016I01

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F02

 

...

* >> Início da inclusão:

FORM modifica_fundap.

  LOOP AT itab_zycit480 WHERE ebeln = itab_zycit042-ebeln

                          AND ebelp = itab_zycit042-ebelp.

    READ TABLE itab_zycit003 WITH KEY

                 nrseq = itab_zycit480-nrseq

                 ebeln = itab_zycit480-ebeln

                 ebelp = itab_zycit480-ebelp.

    READ TABLE itab_zycit100 WITH KEY

                 nrseq = itab_zycit480-nrseq

                 ebeln = itab_zycit480-ebeln

                 ebelp = itab_zycit480-ebelp.

    READ TABLE itab_t001w WITH KEY werks = itab_zycit042-werks.

    IF sy-subrc EQ 0.

      READ TABLE itab_zycit033 WITH KEY tpnf = /pws/zycie042-tpnf

                                        regio = itab_t001w-regio.

      IF itab_zycit033-tribipi EQ '3'   .

        itab_zycit480-vl_custo_merc = itab_zycit480-vl_nf_ent.

      ELSE.

        itab_zycit480-vl_custo_merc =

           itab_zycit480-vl_nf_ent - itab_zycit100-vlipi.

      ENDIF.

    ENDIF.

    itab_zycit480-vl_base_ipi =

      ( ( itab_zycit480-vl_custo_merc *

      ( itab_zycit480-vl_basred / 100 ) ) /

      ( 1 - ( itab_zycit480-vl_aliqicms / 100 ) ) ) +

      itab_zycit480-vl_desp_acess.

    itab_zycit480-vl_ipi = itab_zycit480-vl_base_ipi *

          ( itab_zycit003-advalipi / 100 ) .

    itab_zycit480-vl_base_icms =

      ( ( ( itab_zycit480-vl_custo_merc *

              itab_zycit480-vl_basred ) /  100 )

      / ( 1 - ( itab_zycit480-vl_aliqicms / 100 ) ) ) +

                             itab_zycit480-vl_desp_acess.

    itab_zycit480-vl_icms = itab_zycit480-vl_base_icms *

       ( itab_zycit480-vl_aliqicms / 100 ) .

    IF NOT itab_zycit003-qtd_iten IS INITIAL.

      itab_zycit480-vl_unit =

    ( itab_zycit480-vl_base_icms - itab_zycit480-vl_desp_acess ) /

       itab_zycit003-qtd_iten  .

    ENDIF.

    itab_zycit480-vl_nf_transf =

     ( itab_zycit480-vl_base_ipi +  itab_zycit480-vl_ipi ).

    itab_zycit480-desconto = itab_zycit480-vl_custo_merc *

           ( /pws/zycit478-percent / 100 ).

    MODIFY itab_zycit480.

  ENDLOOP.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI016I01

 

MODULE altera_itab_zycit042 INPUT.

  itab_zycit042-nfglobal = /pws/zycie041-nfglobal.

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

  IF /pws/zycie001-modalidade EQ '05' AND

     /pws/zycie001-tpdecl EQ 'DI' AND

     itab_zycit042-tpnf NE /pws/zycie042-tpnf.

    PERFORM modifica_fundap.

  ENDIF.

* << Fim da inclusão

  itab_zycit042-tpnf     = /pws/zycie042-tpnf.

  itab_zycit042-ebeln    = /pws/zycie042-ebeln .

  itab_zycit042-ebelp    = /pws/zycie042-ebelp .

  itab_zycit042-qtd_iten = /pws/zycie042-qtd_iten.

  itab_zycit042-processado = ' '.

  IF /pws/zycie041-nfexterna = space.

    itab_zycit042-nfnum  = space.

    itab_zycit042-series = space.

    itab_zycit042-subser = space.

  ELSE.

...