CE PLUS - Nota 006203

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 19/03/2008 00:00:00

Data/Hora Última Alteração: 09/03/2010 11:57:34

Descrição da Nota: ERRO AO RATEAR O VALOR DO ICMS PARA O ÚLTIMO ITEM

Sintoma

 

Erro ao ratear o valor do ICMS para o último item

 

Solução

 

Ajustar rateio de icms.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 06203 Data: 19/03/2008 Hora: 11:18:23

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

 

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

Nota Número              : 06203

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00004

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

ERRO AO RATEAR O VALOR DO ICMS PARA O ÚLTIMO ITEM

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

Palavras Chave:

ERRO - RATEIO - VALOR DO ICMS -ÚLTIMO ITEM

 

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

Objetos da nota:

REPS /PWS/MZYCI023F03

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

...

  ENDIF.

  CLEAR v_nova.

  IF /pws/zycie085-dtuserc IS INITIAL.

    /pws/zycie085-dtuserc = sy-datlo.

  ENDIF.

  CLEAR : v_fatx, v_xa , v_xb , v_xc, v_faty, v_fatpc.

  LOOP AT itab_zycit049 WHERE baseicms EQ 'X' AND NOT vlreal IS initial.

    IF /pws/zycit000-flag_txsisc IS INITIAL OR v_dit NE 'N' OR

       wa_it000-cod_sisc NE itab_zycit049-tpdesp.

      IF NOT itab_zycit049-tipo EQ 'D'.

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

        IF v_idx EQ v_ipt AND v_ipt NE 1.

          t_ivdes2 = itab_zycit049-vlreal - itab_zycit049-vldp_aux.

        ELSE.

* << Fim da exclusão

          IF itab_zycit049-divabs EQ 'X'.

            t_ivdes2 = ( 1 / v_ipt ) * itab_zycit049-vlreal.

          ELSEIF itab_zycit049-peso EQ 'X'.

           t_ivdes2 = ( wa_it-ntgew / v_tntgew ) * itab_zycit049-vlreal.

          ELSEIF itab_zycit049-proporplan EQ 'X'.

            IF NOT v_tot_plan IS INITIAL.

              READ TABLE itab_zycit003 WITH KEY

                          nrseq = itab_it-nrseq

                          ebeln = itab_it-ebeln

                          ebelp = itab_it-ebelp.

...

 

...

                  t_ivdes2 =  ( itab_zycit003-vlreal *

                      itab_zycit003-qtd_iten

                     / v_tot_real  ) * itab_zycit049-vlreal.

                ENDIF.

              ENDIF.

            ENDIF.

          ENDIF.

          IF p_tipo = 'I'.

            itab_zycit049-vldp_aux = itab_zycit049-vldp_aux + t_ivdes2.

            MODIFY itab_zycit049 TRANSPORTING vldp_aux.

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

          ENDIF.

* << Fim da exclusão

        ENDIF.

      ENDIF.

      t_ivdesp = t_ivdesp + t_ivdes2.

    ENDIF.

  ENDLOOP.

  CLEAR: v_nr_itens, v_desp. CLEAR: itab_zycit100_temp.

  REFRESH itab_zycit100_temp.

  MOVE itab_it[] TO itab_zycit100_temp[].

  IF itab_it-adicao IS INITIAL AND NOT /pws/zycit000-flag_txsisc IS

 INITIAL.

...