CE PLUS - Nota 003671

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 14/05/2007 00:00:00

Data/Hora Última Alteração: 22/02/2011 13:41:29

Descrição da Nota: ERRO NOS CÁLCULOS DA ADIÇÃO DA DI, DEPENDENDO DOS REGIMES TRIBUTÁRIOS.

Sintoma

ERRO NOS CÁLCULOS DA ADIÇÃO DA DI, DEPENDENDO DOS REGIMES TRIBUTÁRIOS, POR EXEMPLO IPI REDUÇÃO, PIS

E COFINS REDUÇÃO.

 

 

Solução

ATUALIZADO CÁLCULO DE VALORES DA DI.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

INCLUSÃO DA NOVA TELA PIS/COFINS NA DI

CRIAÇÃO DE TRATAMENTO PARA REG. TIB. NÃO INCIDENCIA

AJUSTES HOMOLOGAÇÃO DI - CÁLCULOS, DESPESAS, REGIMES

TRATAMENTO P/BASE DE PIS E COFINS QUANDO IPI POSSUI ALIQUOTA ESPECIFICA

RATEIO DE ICMS NA NF INCORRETO, NÃO CONSIDERANDO SUSPENSÃO DE IMPOSTOS.

Informações Complementares

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

Nota Número 03671 Data: 14/05/2007 Hora: 11:31:43

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

 

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

Nota Número              : 03671

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00001

Agrupamento              : 00166

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

Referência às notas relacionadas:

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

 

01520  - 00001 - 6.0    - 00023  - INCLUSÃO DA NOVA TELA PIS/COFINS NA DI

01602  - 00002 - 6.0    - 00023  - AJUSTES HOMOLOGAÇÃO DI - CÁLCULOS, DESPESAS, REGIMES

01915  - 00003 - 6.0    - 00024  - TRATAMENTO P/BASE DE PIS E COFINS QUANDO IPI POSSUI ALIQUOTA ESPE

02067  - 00004 - 6.0    - 00024  - RATEIO DE ICMS NA NF INCORRETO, NÃO CONSIDERANDO SUSPENSÃO DE IMP

03146  - 00005 - 6.0    - 00026  - CRIAÇÃO DE TRATAMENTO PARA REG. TIB. NÃO INCIDENCIA

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

ERRO NOS CÁLCULOS DA ADIÇÃO DA DI, DEPENDENDO DOS REGIMES TRIBUTÁRIOS.

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

Palavras Chave:

PASTA CÁLCULO -ADIÇÃO - DI - REGIME TRIBUTÁRIO

TRANSMISSÃO SISCOMEX

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

Objetos da nota:

REPS /PWS/MZYCI023F04

REPS /PWS/MZYCI023X01

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F04

 

 

FORM mp_nova.

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

  DATA: v_pisred LIKE t_icms,

        v_cofred LIKE t_icms,

        v_calcpc LIKE itab_it-basepis.

* << Fim da exclusão

...

 

...

    ENDIF.

  ENDIF.

  IF /pws/zycie100a-codregtriipi EQ '2'.

    v_advipi =  /pws/zycie100a-reduzidaipi / 100.

    IF /pws/zycie100a-reduzidaipi IS INITIAL.

      v_advipi =  /pws/zycie003-advalipi / 100.

    ENDIF.

  ELSEIF /pws/zycie100a-codregtriipi EQ '4' AND

      /pws/zycie003-advalipi IS INITIAL.

    v_advipi = itab_it-ipi_recolher / itab_it-baseipi .

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

  ELSEIF /pws/zycie100a-codregtriipi EQ '1' .

    clear v_advipi .

* << Fim da inclusão

  ENDIF.

  CASE /pws/zycie100a-codregtripiscofi.

    WHEN '4'.

      IF /pws/zycie100a-basredpis IS INITIAL OR

         /pws/zycie100a-basredpis GT '100' .

        v_pisred  = ( /pws/zycie100a-advalpis / 100 ).

      ELSE.

        v_pisred  = ( /pws/zycie100a-basredpis / 100 ).

      ENDIF.

      IF /pws/zycie100a-basredcof IS INITIAL OR

...

 

...

 

FORM calc_piscofins.

  CLEAR: a_piscalc, a_pisredu, a_pisdevi, a_pisrec,

         a_cofcalc, a_cofredu, a_cofdevi, a_cofrec.

  CASE /pws/zycie100a-codregtripiscofi.

    WHEN '3' OR '5' OR '6' .

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

      a_piscalc =

        ( ( /pws/zycie100a-advalpis  / 100 ) * /pws/zycie100a-basepis ).

      a_cofcalc =

           ( ( /pws/zycie100a-advalcofins  / 100 )

                    * /pws/zycie100a-basecofins ) .

* << Fim da inclusão

      IF /pws/zycie100a-aliqpis IS INITIAL.

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

        a_pisdevi = a_piscalc =

* << Fim da exclusão

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

        a_pisdevi =

* << Fim da inclusão

        ( ( /pws/zycie100a-advalpis  / 100 ) * /pws/zycie100a-basepis ).

      ELSE.

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

        a_pisdevi = a_piscalc =

* << Fim da exclusão

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

        a_pisdevi =

* << Fim da inclusão

        ( ( /pws/zycie100a-aliqpis  / 100 ) * /pws/zycie100a-aliqpis ).

      ENDIF.

      IF /pws/zycie100a-aliqcof IS INITIAL.

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

        a_cofdevi = a_cofcalc =

* << Fim da exclusão

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

        a_cofdevi =

* << Fim da inclusão

           ( ( /pws/zycie100a-advalcofins  / 100 )

                    * /pws/zycie100a-basecofins ) .

      ELSE.

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

        a_cofdevi = a_cofcalc =

* << Fim da exclusão

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

        a_cofdevi =

* << Fim da inclusão

        ( ( /pws/zycie100a-aliqcof  / 100 )

                    * /pws/zycie100a-basecofins ) .

      ENDIF.

      CLEAR : t_pis, a_pisredu , t_cofins , a_cofredu.

    WHEN '4'.

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

      IF /pws/zycie100a-basredpis IS INITIAL.

        IF /pws/zycie100a-aliqpis IS INITIAL.

          a_piscalc =

           ( ( /pws/zycie100a-advalpis  / 100 )

                    * /pws/zycie100a-basepis ) .

* << Fim da exclusão

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

      IF /pws/zycie100a-basredpis IS INITIAL OR

         /pws/zycie100a-basredpis GT '100' .

              t_pis = a_pisdevi = a_pisredu =

              ( /pws/zycie100a-advalpis / 100 )  *

             /pws/zycie100a-basepis.

* << Fim da inclusão

        ELSE.

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

          a_piscalc =

         ( ( /pws/zycie100a-aliqpis  / 100 )

                    * /pws/zycie100a-basepis ) .

* << Fim da exclusão

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

              t_pis = a_pisdevi = a_pisredu =

              ( /pws/zycie100a-basredpis / 100 )  *

             /pws/zycie100a-basepis.

* << Fim da inclusão

        ENDIF.

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

      IF /pws/zycie100a-basredcof IS INITIAL OR

         /pws/zycie100a-basredcof GT '100'.

            t_cofins = a_cofredu = a_cofdevi =

            ( /pws/zycie100a-advalcofins / 100 ) *

          /pws/zycie100a-basecofins.

* << Fim da inclusão

      ELSE.

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

        a_piscalc =

          ( ( /pws/zycie100a-basredpis  / 100 )

                    * /pws/zycie100a-basepis ) .

* << Fim da exclusão

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

            t_cofins = a_cofredu = a_cofdevi =

            ( /pws/zycie100a-basredcof / 100 ) *

           /pws/zycie100a-basecofins.

* << Fim da inclusão

      ENDIF.

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

  v_advpis = /PWS/ZYCIE100A-ADVALPIS / 100 .

  v_advcof = /PWS/ZYCIE100A-ADVALcofins / 100 .

  v_calcpc = ( t_ivadu * ( (  1 + v_advicms *  ( v_advii + v_advipi *

             ( 1 + v_advii ) ) ) / ( ( 1 - v_advpis - v_advcof ) *

             ( 1 - v_advicms ) ) ) ).

* << Fim da inclusão

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

      IF /pws/zycie100a-basredcof IS INITIAL.

        IF /pws/zycie100a-aliqcof IS INITIAL.

* << Fim da exclusão

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

      a_piscalc =   v_advpis *  v_calcpc .

* << Fim da inclusão

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

          a_cofcalc =

          ( ( /pws/zycie100a-advalcofins  / 100 )

                    * /pws/zycie100a-basecofins ) .

        ELSE.

          a_cofcalc =

    ( ( /pws/zycie100a-aliqcof / 100 )

                    * /pws/zycie100a-basecofins ) .

        ENDIF.

      ELSE.

        a_cofcalc =

          ( ( /pws/zycie100a-basredcof  / 100 )

                    * /pws/zycie100a-basecofins ) .

      ENDIF.

* << Fim da exclusão

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

      a_cofcalc  =  v_advcof * v_calcpc.

* << Fim da inclusão

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

      t_pis = a_pisdevi = a_pisredu =

       ( /pws/zycie100a-basepis / 100 ) * /pws/zycie100a-basredpis  .

      t_cofins = a_cofdevi = a_cofredu =

       ( /pws/zycie100a-basecofins / 100 ) * /pws/zycie100a-basredcof.

* << Fim da exclusão

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

    when '2' .

  CLEAR: a_piscalc, a_pisredu, a_pisdevi, a_pisrec,

         a_cofcalc, a_cofredu, a_cofdevi, a_cofrec,

         t_pis, t_cofins .

* << Fim da inclusão

    WHEN OTHERS.

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

    a_piscalc =  ( /pws/zycie100a-advalpis  / 100 ) *

                   /pws/zycie100a-basepis  .

    a_cofcalc =  ( /pws/zycie100a-advalcofins  / 100 )

                  * /pws/zycie100a-basecofins .

* << Fim da inclusão

      IF /pws/zycie100a-aliqpis IS INITIAL.

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

        t_pis =  a_pisredu = a_pisdevi = a_piscalc =

* << Fim da exclusão

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

        t_pis =  a_pisdevi =

* << Fim da inclusão

          ( ( /pws/zycie100a-advalpis  / 100 )

                    * /pws/zycie100a-basepis ) .

      ELSE.

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

        t_pis =  a_pisredu = a_pisdevi = a_piscalc =

* << Fim da exclusão

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

        t_pis =   a_pisdevi =

* << Fim da inclusão

         ( ( /pws/zycie100a-aliqpis  / 100 )

                    * /pws/zycie100a-basepis ) .

      ENDIF.

      IF /pws/zycie100a-aliqcof IS INITIAL.

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

        t_cofins = a_cofredu = a_cofdevi = a_cofcalc =

* << Fim da exclusão

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

        t_cofins =  a_cofdevi =

* << Fim da inclusão

           ( ( /pws/zycie100a-advalcofins  / 100 )

                    * /pws/zycie100a-basecofins ) .

      ELSE.

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

        t_cofins = a_cofredu = a_cofdevi = a_cofcalc =

* << Fim da exclusão

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

        t_cofins =  a_cofdevi =

* << Fim da inclusão

        ( ( /pws/zycie100a-aliqcof  / 100 )

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023X01

 

...

 

* >> Início da inclusão:

  DATA: v_pisred LIKE t_icms,

        v_cofred LIKE t_icms,

        v_calcpc LIKE itab_it-basepis.

* << Fim da inclusão

DATA: END OF COMMON PART.