Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal Complementar
Data/Hora da Publicação: 14/11/2007 00:00:00
Data/Hora Última Alteração: 23/02/2011 09:15:22
Descrição da Nota: NF COMPLEMENTAR NÃO ESTÁ CALCULANDO CORRETAMENTE O VALOR DA BASE EXCLUID
Sintoma
Quando crio a NF complementar o sistema não está calculando corretamente o valor da base excluida.
Aparentemente o sistema não está incluindo o valor do ICMS por dentro na base excluida.
Consequentemente a base do IPI e total da NF também está incorreto.
Solução
Atualização do programa de Nota Fiscal Complementar para que o sistema efetue o cálculo da Base de
ICMS Reduzida corretamente.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 05223 Data: 14/11/2007 Hora: 10:53:05
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 05223
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00003
Agrupamento : 00021
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
02486 - 00001 - 6.0 - 00025 - O ICMS COM BASE REDUZIDA ESTA SENDO CALCULADO ERRADO NA NF COMPLE
----------------------------------------------------------------------------------------------------
NF COMPLEMENTAR NÃO ESTÁ CALCULANDO CORRETAMENTE O VALOR DA BASE EXCLUID
----------------------------------------------------------------------------------------------------
Palavras Chave:
NF COMPLEMENTAR - CÁLCULO ICMS - BASE EXCLUÍDA
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI029F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI029F01
...
endif.
IF ( /pws/zycit062-susp_nf EQ 'S' AND
itab_zycit100-codregtriICMS EQ '5' ) or
/pws/zycit062-flag_icms NE 'X' or
( /pws/zycit062-BS_CHEIA_DIF NE 'X' and
itab_zycit100-icms_dif EQ 'X' ) or
itab_zycit100-codregtriICMS EQ '3' .
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
it_zycee007-base.
ELSE.
* >> Início da exclusão: FORM ITENS_NFC
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
( itab_zycit265_c2-vldp_dif * ( itab_zycit003-basred / 100 ) ).
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_NFC
it_zycee007-c_excbas = ( itab_zycit265_c2-vldp_dif -
itab_zycit265_c2-vldp_dif_icms ) +
( itab_zycit265_c2-vldp_dif_icms /
( ( 100 - itab_zycit003-advalicms ) / 100 ) )
- it_zycee007-base.
* << Fim da inclusão
ENDIF.
WHEN 2.
IF NOT /pws/zycit062-bcnfc IS INITIAL AND
( NOT itab_zycit003-basred IS INITIAL AND
NOT itab_zycit003-basred EQ '100' ).
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
( ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
* ( itab_zycit003-basred / 100 ) ) .
ELSE.
...
...
IF ( /pws/zycit062-susp_nf EQ 'S' AND
itab_zycit100-codregtriICMS EQ '5' ) or
/pws/zycit062-flag_icms NE 'X' or
( /pws/zycit062-BS_CHEIA_DIF NE 'X' and
itab_zycit100-icms_dif EQ 'X' ) or
itab_zycit100-codregtriICMS EQ '3' .
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
it_zycee007-othbas.
ELSE.
* >> Início da exclusão: FORM ITENS_NFC
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
( ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
* ( itab_zycit003-basred / 100 ) ) .
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_NFC
it_zycee007-c_excbas = ( itab_zycit265_c2-vldp_dif -
itab_zycit265_c2-vldp_dif_icms ) +
( itab_zycit265_c2-vldp_dif_icms /
( ( 100 - itab_zycit003-advalicms ) / 100 ) )
- it_zycee007-othbas.
* << Fim da inclusão
ENDIF.
ENDCASE.
* >> Início da exclusão: FORM ITENS_NFC
IF itab_zycit100-codregtri = '3' OR
itab_zycit100-codregtri = '5'.
CLEAR it_zycee007-taxval.
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_NFC
IF itab_zycit100-codregtriICMS = '3' OR
itab_zycit100-codregtriICMS = '5'.
CLEAR it_zycee007-taxval.
ENDIF.
* << Fim da inclusão
...
...
it_zycee007-p_excbas = it_zycee007-p_excbas + it_zycee007-taxval.
ENDIF.
WHEN 3.
it_zycee007-othbas2 = itab_zycit265_c2-vldp_dif +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins.
IF /pws/zycit062-flag_icms = 'X' AND
itab_zycit100-icms_dif NE 'X'.
it_zycee007-p_excbas = it_zycee007-taxval.
ENDIF.
ENDCASE.
it_zycee007-taxtyp2 = itab_zycit033-taxtyp2.
* >> Início da exclusão: FORM ITENS_NFC
IF /pws/zycit062-flag_icms = 'X' AND
itab_zycit100-icms_dif NE 'X'.
it_zycee007-netoth = it_zycee007-netoth + it_zycee007-taxval.
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_NFC
IF /pws/zycit062-flag_icms = 'X' AND
itab_zycit100-icms_dif NE 'X'.
IF NOT /pws/zycit062-tred IS INITIAL.
it_zycee007-netoth = it_zycee007-netoth +
( ( it_zycee007-taxval * 100 ) / itab_zycit003-basred ).
else.
it_zycee007-netoth = it_zycee007-netoth + it_zycee007-taxval.
endif.
ENDIF.
* << Fim da inclusão
ENDIF.
IF it_zycee007-taxval IS INITIAL.
CLEAR it_zycee007-rate.
ENDIF.
CLEAR: v_tabix_exit.
CONCATENATE itab_zycit265_c2-ebeln '/' itab_zycit265_c2-ebelp
INTO it_zycee007-msg1.
APPEND it_zycee007.
v_tabix_exit = sy-tabix.
READ TABLE itab_zycit001 INDEX 1.
...