CE PLUS - Nota 003178

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DSI

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

Data/Hora Última Alteração: 22/02/2011 14:57:07

Descrição da Nota: NECESSÁRIO FAZER TRATAMENTO DA DSI E NF GLOBAL COM REGIME SUSPENSO.

Sintoma

Necessário fazer tratamento da DSI e NF global com regime suspenso.

 

 

Solução

ajustar formação de base de icms considerando regime suspenso na DSI

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

VALOR DE ICMS DA DSI ESTÁ MENOR QUE O TOTAL DA NOTA FISCAL

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

DSI VALOR DO SISCOMEX ZERADO

Informações Complementares

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

Nota Número 03178 Data: 02/03/2007 Hora: 10:48:14

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

 

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

Nota Número              : 03178

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 6.0

Pacote                   : 00026

Agrupamento              : 00155

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

Referência às notas relacionadas:

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

 

02362  - 00001 - 6.0    - 00025  - DSI VALOR DO SISCOMEX ZERADO

03106  - 00002 - 6.0    - 00026  - VALOR DE ICMS DA DSI ESTÁ MENOR QUE O TOTAL DA NOTA FISCAL

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

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

NECESSÁRIO FAZER TRATAMENTO DA DSI E NF GLOBAL COM REGIME SUSPENSO.

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

Palavras Chave:

SUSPENSÃO - REGIME TRIBUTÁRIO - DSI - NF GLOBAL

 

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

Objetos da nota:

REPS /PWS/MZYCI016F01

REPS /PWS/MZYCI058F01

REPS /PWS/MZYCI058F03

REPS /PWS/ZYCIR035

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F01

 

...

  ENDIF.

ENDFORM.

FORM atualiza_icms_unitario.

  SELECT SINGLE * FROM /pws/zycit100

   WHERE nrseq = itab_zycit042-nrseq

     AND ebeln = itab_zycit042-ebeln

     AND ebelp = itab_zycit042-ebelp.

  IF NOT /pws/zycit100-vlicms IS INITIAL AND

     NOT /pws/zycit100-icms_dif = 'X'

     AND NOT /pws/zycit100-codregtriicms EQ '5'

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

     AND NOT /pws/zycit100-codregtri     EQ '6'.

* << Fim da exclusão

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

     AND NOT /pws/zycit100-codregtri     EQ '6'

     AND NOT /pws/zycit100-codregtriicms EQ ' '.

* << Fim da inclusão

    IF /pws/zycit062-tred IS INITIAL.

      itab_zycit042-netpr = itab_zycit042-netpr + ( (

          /pws/zycit100-vlicms / itab_zycit042-qtd_iten )

          * 100 ) / itab_zycit003-basred.

    ELSE.

      itab_zycit042-netpr = itab_zycit042-netpr +

      ( /pws/zycit100-vlicms / itab_zycit042-qtd_iten ).

    ENDIF.

  ENDIF.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI058F01

 

...

     '26'  NA /pws/zycie100a-codregtri.

    t_ipirec = a_ipidevi.

    IF p_tipo = 'A'.

      IF ' 35' NA /pws/zycie100a-codregtri.

      ELSE.

        CLEAR t_ipirec.

      ENDIF.

    ELSE.

      IF ' 35' NA /pws/zycie100a-codregtri.

        s_wipireco = s_wipireco + t_ipirec.

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

      ELSE.

        CLEAR t_ipirec.

* << Fim da exclusão

      ENDIF.

      s_wipidevi = s_wipidevi + a_ipidevi.

    ENDIF.

  ELSEIF ' 35' NA /pws/zycie100a-codregtri AND

        /pws/zycie085-ntimp NE '09'       AND

        /pws/zycie085-ntimp NE '11'.

    t_ipirec = a_ipidevi.

  ENDIF.

  CLEAR v_subrc.

  IF /pws/zycie100a-codregtri NE '7' .

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI058F03

 

...

  ELSE.

    t_icmsbs_d2 = t_icmsbs = ( t_iibas + v_vlipirec + v_vliirec +

         v_sisco3 + t_ivdesp + v_vlpisrec + v_vlcofrec ) *

             ( /pws/zycie003-basred / 100 ).

  ENDIF.

  IF NOT v_icms_especial IS INITIAL.

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

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

                               ( t_icmsbs / t_icmsx ) .

    t_icmsbs_d2 = t_icmsbs = t_icmsbs + t_icms.

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

    itab_it-vlicms   = t_icms.

    if /pws/zycit062 is initial.

      select single * from /pws/zycit062 where REGIO eq v_icms_regio.

    endif.

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

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

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - a_iicalc.

      ENDIF.

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

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - a_ipidevi.

      ENDIF.

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

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - t_pis_calc - t_cof_calc.

      ENDIF.

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

        t_icmsbs_d2 = t_icmsbs =

        t_icmsbs - t_icms.

      ENDIF.

      IF /pws/zycie100a-baseicms LT 0.

        CLEAR itab_zycit100-baseicms.

      ENDIF.

    ENDIF.

* << Fim da inclusão

  ELSE.

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

                                t_icmsbs.

  ENDIF.

  IF /PWS/ZYCIE100A-CODREGTRI EQ '6'.

    CLEAR: t_icms_d2, t_vlicms.

  ENDIF.

  itab_it-vlicms   = t_icms.

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

    CLEAR: t_icms_d2, t_vlicms.

...

 

...

    IF NOT /pws/zycie003-nrseqd IS INITIAL.

      CLEAR:  t_icms.

      screen-input = '0'.

    ELSEIF /pws/zycie003-nrseqd IS INITIAL.

      s_wicreco = s_wicdevi.

    ENDIF.

  ELSEIF p_tipo = 'A'.

    a_icdevi  = a_icdevi  + t_icms.

    a_icreco  = a_icdevi.

  ENDIF.

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

  IF /pws/zycie001-regime EQ '09'.

    IF NOT v_icms_especial IS INITIAL.

      t_icmsbs_d2 =

      t_icmsbs = t_icmsbs - t_icms.

    ENDIF.

    CLEAR: t_icms.

  ENDIF.

* << Fim da exclusão

  itab_it-baseicms = t_icmsbs.

  itab_it-pis_calc = t_pis_calc.

  itab_it-pis_dev = t_pis_dev.

  itab_it-cofi_calc = t_cof_calc.

  itab_it-cofi_dev = t_cof_dev.

  t_pisbs = itab_it-basepis.

  t_cofinsbs = itab_it-basecofins.

  t_vlicms   = s_wicreco.

  t_vlpis    = s_wpisreco.

  t_vlcofins = s_wcofreco.

  IF /pws/zycie001-regime EQ '09'.

    CLEAR: t_pis, t_cofins, t_icms, t_icms_d2.

  ENDIF.

  IF /PWS/ZYCIE100A-CODREGTRI EQ '5'.

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

    CLEAR: t_pis, t_cofins, t_icms, t_icms_d2.

* << Fim da exclusão

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

    CLEAR: t_icms, t_icms_d2.

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM data_sort.

  SORT itab_it BY

       j_1bnbm       fabric      lifnrfabr     lifnr          advalii

    advalipi      naladi      naladincca    codregtri      codregtriipi

       zterm         meinsest    pproc         nrseqli        aplicacao

       condmerc      inco1       codmat        cacl           codfunleg

       acordo        acordorate  reduzida      percreduz      notatipi

    reduzidaipi   unit_valor  unit_meins    unit_reccapac  unit_rectipo

...

 

 

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

Modificações efetuadas em REPS /PWS/ZYCIR035

 

...

      /pws/zycit093-waersfre     0                CHANGING wa_036.

      MOVE wa_036 TO itab_zycit036.

      PERFORM retorna_decimais USING itab_zycit036-waers_real

                              CHANGING itab_zycit036-vlreal.

      itab_zycit036-usernamec = sy-uname.

      itab_zycit036-dtuserc   = sy-datum.

      itab_zycit036-hruserc   = sy-uzeit.

      APPEND itab_zycit036.

    ENDIF.

    IF /pws/zycit100-codregtri NE '3' AND

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

       /pws/zycit100-codregtri NE '5'.

* << Fim da exclusão

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

       /pws/zycit100-codregtri NE '5' and

     ( /pws/zycit100-codregtri NE ' ' and

       /pws/zycit100-codregtri EQ '1' ).

* << Fim da inclusão

      PERFORM entra_despesa USING it_desp 'II'     it_desp-vlii

              /pws/zycbt007-waersb

              it_desp-advalii  CHANGING wa_036.

      MOVE wa_036 TO itab_zycit036.

      itab_zycit036-usernamec = sy-uname.

      itab_zycit036-dtuserc   = sy-datum.

      itab_zycit036-hruserc   = sy-uzeit.

      APPEND itab_zycit036.

    ENDIF.

    IF /pws/zycit100-codregtriipi NE '1' AND

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

       /pws/zycit100-codregtriipi NE '5'.

* << Fim da exclusão

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

       /pws/zycit100-codregtriipi NE '5' and

     ( /pws/zycit100-codregtriipi EQ ' ' and

       /pws/zycit100-CODREGTRI    EQ '1' ).

* << Fim da inclusão

      PERFORM entra_despesa USING it_desp 'IPI'    it_desp-vlipi

              /pws/zycbt007-waersb

            it_desp-advalipi CHANGING wa_036.

      MOVE wa_036 TO itab_zycit036.

      itab_zycit036-usernamec = sy-uname.

      itab_zycit036-dtuserc   = sy-datum.

      itab_zycit036-hruserc   = sy-uzeit.

      APPEND itab_zycit036.

    ENDIF.

    IF /pws/zycit100-codregtriicms NE '3' AND

       /pws/zycit100-codregtriicms NE '5' AND

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

       /pws/zycit100-codregtri     NE '6'.

* << Fim da exclusão

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

       /pws/zycit100-codregtri     NE '6' and

     ( /pws/zycit100-codregtriicms EQ ' ' and

       /pws/zycit100-CODREGTRI     EQ '1' ).

* << Fim da inclusão

      PERFORM entra_despesa USING it_desp 'ICMS'   it_desp-vlicms

                /pws/zycbt007-waersb

              it_desp-aliqicms CHANGING wa_036.

      MOVE wa_036 TO itab_zycit036.

      itab_zycit036-usernamec = sy-uname.

      itab_zycit036-dtuserc   = sy-datum.

      itab_zycit036-hruserc   = sy-uzeit.

      APPEND itab_zycit036.

    ENDIF.

    IF /pws/zycit100-codregtripiscofi NE '3' AND

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

       /pws/zycit100-codregtripiscofi NE '5'.

* << Fim da exclusão

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

       /pws/zycit100-codregtripiscofi NE '5' and

     ( /pws/zycit100-codregtripiscofi NE ' ' and

       /pws/zycit100-codregtripiscofi EQ '1' ).

* << Fim da inclusão

      PERFORM entra_despesa USING it_desp 'PIS' it_desp-vlpis

         /pws/zycbt007-waersb  v_aliq  CHANGING wa_036.

      MOVE wa_036 TO itab_zycit036. APPEND itab_zycit036.

      PERFORM entra_despesa USING it_desp 'COFINS'  it_desp-vlcofins

         /pws/zycbt007-waersb  v_aliq  CHANGING wa_036.

      MOVE wa_036 TO itab_zycit036. APPEND itab_zycit036.

    ENDIF.

  ENDLOOP.

  LOOP AT itab_zycit036.

    IF itab_zycit036-vlreal < '0'.

...