Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DI
Data/Hora da Publicação: 10/10/2011 00:00:00
Data/Hora Última Alteração: 11/10/2011 14:51:11
Descrição da Nota: VALOR ICMS COM BASE REDUZIDA FICA INCORRETO
Sintoma
O valor de ICMS está incorreto quando está parametrizado para arredondamento com 4 casas decimais e
possui redução de base.
Solução
Atualizado calculo para utilizar diretamente o percentual de redução informado na tela.
8.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 11528 Data: 10/10/2011 Hora: 11:46:12
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 11528
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 8.0
Pacote : 00009
Agrupamento : 00089
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
08729 - 00001 - 7.0 - 00010 - NA DI ARREDONDAR O CALCULO DE ICMS BASE REDUZIDA PARA 4 CASAS
----------------------------------------------------------------------------------------------------
VALOR ICMS COM BASE REDUZIDA FICA INCORRETO
----------------------------------------------------------------------------------------------------
Palavras Chave:
VALOR - ICMS - BASE - REDUZIDA - ARREDONDAMENTO - INTERNO
/PWS/SAPMZYCI023
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI023F03
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F03
...
NOT /pws/zycie003-basred EQ '100'.
v_advicms = ( ( /pws/zycie003-advalicms / 100 ) *
( /pws/zycie003-basred / 100 ) ) .
v_trunc = v_advicms.
v_advicms = v_trunc.
ENDIF.
ENDIF.
IF NOT /pws/zycie003-advalicms IS INITIAL AND
NOT /pws/zycie100a-icms_dif EQ 'X'.
IF /pws/zycit062-icms_base_red_ar EQ 'X'.
* >> Início da exclusão: FORM LOAD_IICMS
v_advicms_c4 = ( v_advicms * 100 /
/pws/zycie003-advalicms ).
t_icmsbs_d2 = t_icmsbs = t_icmsbs * v_advicms_c4.
* << Fim da exclusão
* >> Início da inclusão: FORM LOAD_IICMS
t_icmsbs_d2 = t_icmsbs = t_icmsbs *
( /pws/zycie003-basred / 100 ).
* << Fim da inclusão
ELSE.
t_icmsbs_d2 = t_icmsbs = t_icmsbs *
( v_advicms * 100 / /pws/zycie003-advalicms ).
ENDIF.
ELSEIF NOT /pws/zycie100a-icms_dif EQ 'X'.
t_icmsbs_d2 = t_icmsbs = t_icmsbs *
( /pws/zycie003-basred / 100 ).
ENDIF.
IF NOT /pws/zycit062-flag_icms IS INITIAL AND
/pws/zycie100a-icms_dif NE 'X'.
...