CE PLUS - Nota 003303

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 23/03/2007 00:00:00

Data/Hora Última Alteração: 22/02/2011 13:40:19

Descrição da Nota: VERIFICAR A TABELA ZYCIT062 PARA TRATAR NÃO INCIDÊNCIA NA DI

Sintoma

Favor ajustar a DI para verificar a coluna regsusp.NF da tabela /PWS/ZYCIT062 quando for não

incidência, assim como suspensão.

 

 

 

Solução

verificar a coluna regsusp.NF da tabela zycit062 quando for não incidência, para tratar valores de

impostos

 

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

DI E DA COM PARAMETRO DA 062

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

TRATAR SUSPENSÃO DE REGIME TRIBUTÁRIO NAS NOTAS FISCAIS.

ESTÁ RECOLHENDO VALOR DO ICMS MESMO QUANDO ISENÇÃO NA DI.

A NF GLOBAL E COMPLEMENTAR NÃO ESTÁ TRATANDO ICMS DIFERIDO E SUSPENSÃO.

TRATAMENTO PARA SUSPENSÃO DE ICMS NA DI POR REGIÃO

Informações Complementares

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

Nota Número 03303 Data: 23/03/2007 Hora: 10:07:58

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

 

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

Nota Número              : 03303

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00001

Agrupamento              : 00158

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

Referência às notas relacionadas:

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

 

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

02261  - 00005 - 6.0    - 00025  - A NF GLOBAL E COMPLEMENTAR NÃO ESTÁ TRATANDO ICMS DIFERIDO E SUSP

02325  - 00006 - 6.0    - 00025  - TRATAMENTO PARA SUSPENSÃO DE ICMS NA DI POR REGIÃO

02340  - 00001 - 6.0    - 00025  - TRATAR SUSPENSÃO DE REGIME TRIBUTÁRIO NAS NOTAS FISCAIS.

03158  - 00002 - 6.0    - 00026  - DI E DA COM PARAMETRO DA 062

03226  - 00003 - 6.0    - 00026  - ESTÁ RECOLHENDO VALOR DO ICMS MESMO QUANDO ISENÇÃO NA DI.

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

VERIFICAR A TABELA ZYCIT062 PARA TRATAR NÃO INCIDÊNCIA NA DI

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

Palavras Chave:

REGIME TRIBUTÁRIO - NÃO INCIDÊNCIA - /PWS/ZYCIT062

DI - SUSPENSÃO - VALOR A RECOLHER

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

Objetos da nota:

REPS /PWS/MZYCI023F01

REPS /PWS/MZYCI023F03

REPS /PWS/MZYCI023F04

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F01

 

...

 

FORM load_iipi USING p_tipo.

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

  IF itab_it-codregtri EQ '5' .

* << Fim da exclusão

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

  IF '56' ca itab_it-codregtri .

* << Fim da inclusão

    t_ipibas  = ( t_ivadu + itab_it-ii_calculado ).

  ELSE.

    t_ipibas  = ( t_ivadu + t_iirec ).

  ENDIF.

  a_ipidevi = ( ( /pws/zycie003-advalipi / 100 ) * t_ipibas ).

  IF v_dit = 'N'.

    IF /pws/zycie100a-codregtriipi ne '1' AND

       /pws/zycie003-advalipi IS INITIAL.

      a_ipidevi = ( /pws/zycie100a-unit_valor *

     /pws/zycie100a-unit_qtde ).

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

 

...

      CLEAR v_nova.

    ENDIF.

    IF v_nova IS INITIAL.

      PERFORM mp_antiga.

    ELSE.

      PERFORM mp_nova.

    ENDIF.

  ENDIF.

  v_divisor =  ( 1 - v_advicms - v_advpis - v_advcof ).

  PERFORM calc_piscofins.

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

  IF '56' CA /pws/zycie100a-codregtri.

* << Fim da inclusão

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

  IF '5' CA /pws/zycie100a-codregtri.

* << Fim da exclusão

    v_vliirec = a_iidevi.

  ELSE.

    v_vliirec = t_iirec.

  ENDIF.

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

  IF '56' CA /pws/zycie100a-codregtriipi .

* << Fim da inclusão

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

  IF '5' CA /pws/zycie100a-codregtriipi .

* << Fim da exclusão

    v_vlipirec = a_ipidevi.

  ELSE.

    v_vlipirec = t_ipirec.

  ENDIF.

  CLEAR: v_vlpisrec , v_vlcofrec.

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

  IF '56' CA  /pws/zycie100a-codregtripiscofi.

* << Fim da inclusão

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

  IF '5' CA  /pws/zycie100a-codregtripiscofi.

* << Fim da exclusão

    v_vlpisrec   = a_pisdevi.

    v_vlcofrec   = a_cofdevi.

  ELSE.

    v_vlpisrec   = t_pis   .

    v_vlcofrec   = t_cofins.

  ENDIF.

  IF v_nr_itens GT 1.

    t_icmsbs_d2 = t_icmsbs = ( t_ivadu +  v_vliirec + v_vlipirec +

        t_ivdesp + v_desp + v_vlpisrec + v_vlcofrec ) *

        ( /pws/zycie003-basred / 100 ).

...

 

...

  ENDIF.

  IF NOT /pws/zycit062-flag_icms IS INITIAL AND

     /pws/zycie100a-icms_dif NE 'X'.

    t_icmsx = ( 100 - /pws/zycie003-advalicms ) / 100.

    t_icms_d2 = t_icms = ( /pws/zycie003-advalicms / 100 ) *

                               ( t_icmsbs / t_icmsx ) .

    itab_it-vlicms   = t_icms.

    t_icmsbs_d2 = t_icmsbs = t_icmsbs + t_icms.

    itab_it-vlicms   = t_icms.

    IF /pws/zycit062-susp_nf EQ 'S'.

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

      IF /pws/zycie100a-codregtri EQ '5'.

* << Fim da exclusão

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

      IF '56' ca /pws/zycie100a-codregtri .

* << Fim da inclusão

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - a_iicalc.

      ENDIF.

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

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

* << Fim da exclusão

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

      IF '56' ca /pws/zycie100a-codregtriipi .

* << Fim da inclusão

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - a_ipidevi.

      ENDIF.

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

      IF /pws/zycie100a-codregtripiscofi EQ '5'.

* << Fim da exclusão

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

      IF '56' ca /pws/zycie100a-codregtripiscofi .

* << Fim da inclusão

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - a_piscalc - a_cofcalc.

      ENDIF.

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

      IF '56' ca /pws/zycie100a-codregtriicms .

* << Fim da inclusão

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

      IF /pws/zycie100a-codregtriicms EQ '5'.

* << Fim da exclusão

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - t_icms.

      ENDIF.

      IF /pws/zycie100a-baseicms LT 0.

        CLEAR itab_zycit100-baseicms.

      ENDIF.

    ENDIF.

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

    IF '35' CA /pws/zycie100a-codregtriicms .

* << Fim da exclusão

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

    IF '356' CA /pws/zycie100a-codregtriicms .

* << Fim da inclusão

      CLEAR: t_icmsx, t_icms_d2, t_icms.

    ENDIF.

  ELSE.

    t_icms_d2 = t_icms = ( /pws/zycie003-advalicms / 100 ) *

                                 t_icmsbs.

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

    IF '35' CA /pws/zycie100a-codregtriicms .

* << Fim da exclusão

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

    IF '356' CA /pws/zycie100a-codregtriicms .

* << Fim da inclusão

      CLEAR: t_icmsx, t_icms_d2, t_icms.

    ENDIF.

  ENDIF.

  IF p_tipo = 'I' OR p_tipo = 'T'     .

    s_wicdevi = s_wicdevi + t_icms    .

    s_wpisreco = s_wpisreco + t_pis   .

    s_wcofreco = s_wcofreco + t_cofins.

    IF NOT /pws/zycie003-nrseqd IS INITIAL OR

       NOT v_nratoc IS INITIAL.

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

      IF '35' CA /pws/zycie100a-codregtriicms .

* << Fim da exclusão

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

      IF '356' CA /pws/zycie100a-codregtriicms .

* << Fim da inclusão

        CLEAR: t_icms.

        screen-input = '0'.

      ELSE.

      ENDIF.

    ELSEIF /pws/zycie003-nrseqd IS INITIAL.

    ENDIF.

    s_wicreco = s_wicreco + t_icms  .

  ELSEIF p_tipo = 'A'.

    a_icdevi  = a_icdevi  + t_icms.

    a_icreco  = a_icreco + a_icdevi.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F04

 

...

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

      ELSE.

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

      ENDIF.

      IF /pws/zycie100a-basredcof IS INITIAL OR

         /pws/zycie100a-basredcof GT '100'.

        v_cofred  = ( /pws/zycie100a-advalcofins / 100 ).

      ELSE.

        v_cofred  = ( /pws/zycie100a-basredcof / 100 ).

      ENDIF.

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

    WHEN '1' OR '3' OR '5'.

* << Fim da exclusão

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

    WHEN '1' OR '3' OR '5' or '6' .

* << Fim da inclusão

      IF /pws/zycie100a-aliqpis IS INITIAL.

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

      ELSE.

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

      ENDIF.

      IF /pws/zycie100a-aliqcof IS INITIAL.

        v_cofred  = ( /pws/zycie100a-advalcofins / 100 ).

      ELSE.

        v_cofred  = ( /pws/zycie100a-aliqcof / 100 ).

      ENDIF.

...

 

...

 

FORM calc_piscofins.

  CLEAR: a_piscalc, a_pisredu, a_pisdevi, a_pisrec,

         a_cofcalc, a_cofredu, a_cofdevi, a_cofrec.

  CASE /pws/zycie100a-codregtripiscofi.

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

    WHEN '3' OR '5'.

* << Fim da exclusão

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

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

* << Fim da inclusão

      IF /pws/zycie100a-aliqpis IS INITIAL.

        a_pisdevi = a_piscalc =

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

      ELSE.

        a_pisdevi = a_piscalc =

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

      ENDIF.

      IF /pws/zycie100a-aliqcof IS INITIAL.

        a_cofdevi = a_cofcalc =

           ( ( /pws/zycie100a-advalcofins  / 100 )

...

 

...

        ENDIF.

      ELSE.

        a_cofcalc =

          ( ( /pws/zycie100a-basredcof  / 100 )

                    * /pws/zycie100a-basecofins ) .

      ENDIF.

      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.

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

    when '6'.

      CLEAR : t_pis, a_pisredu , t_cofins , a_cofredu.

* << Fim da exclusão

    WHEN OTHERS.

      IF /pws/zycie100a-aliqpis IS INITIAL.

        t_pis =  a_pisredu = a_pisdevi = a_piscalc =

          ( ( /pws/zycie100a-advalpis  / 100 )

                    * /pws/zycie100a-basepis ) .

      ELSE.

        t_pis =  a_pisredu = a_pisdevi = a_piscalc =

         ( ( /pws/zycie100a-aliqpis  / 100 )

                    * /pws/zycie100a-basepis ) .

      ENDIF.

...

 

...

            screen-input = 0.

          ENDIF.

        ELSEIF /pws/zycie100a-codregtri EQ '7'.

          CLEAR: t_ipibas         ,

                 /pws/zycie003-advalipi,

                 a_ipidevi        ,

                 t_ipirec         .

          IF screen-name EQ '/PWS/ZYCIE003-ADVALIPI'.

            screen-input = 0.

          ENDIF.

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

        ELSEIF /pws/zycie100a-codregtri EQ '5'.

* << Fim da exclusão

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

        ELSEIF '56' ca /pws/zycie100a-codregtri .

* << Fim da inclusão

          CLEAR: t_iirec ,

                 t_ipirec.

        ENDIF.

        IF screen-name = '/PWS/ZYCIE003-ADVALICMS' AND

           /pws/zycie093-meiotransp = 'PS'.

          screen-input = 1.

        ENDIF.

        IF screen-name = '/PWS/ZYCIE003-ADVALIPI' AND

           /pws/zycie093-meiotransp = 'PS'.

          screen-input = 1.

...