Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal Complementar
Data/Hora da Publicação: 19/01/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 12:03:45
Descrição da Nota: REDUÇÃO DA BASE DE CÁLCULO DE ICMS NA NF COMPLEMENTAR
Sintoma
O PWCE não está reduzindo a base de cálculo de ICMS para a Nota Fiscal complementar, nos embarque
com base de cálculo reduzida.
Solução
Desenvolver tratamento ao lançar valores na NFC.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 00680 Data: 19/01/2006 Hora: 10:24:32
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 00680
Categoria : Melhoria
Prioridade : Baixa
Versão PW.CE : 6.0
Pacote : 00022
Agrupamento : 00097
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
REDUÇÃO DA BASE DE CÁLCULO DE ICMS NA NF COMPLEMENTAR
----------------------------------------------------------------------------------------------------
Palavras Chave:
BASE DE CÁLCULO REDUZIDA - NOTA FISCAL COMPLEMENTAR - ICMS
REDUÇÃO
----------------------------------------------------------------------------------------------------
Objetos da nota:
DTEL /PWS/ZYCIL827
FUGR /PWS/ZYCIGF1
RELE F6DK929047 20060118 155008 PWSCI
REPS /PWS/MZYCI029F01
TABD /PWS/ZYCIT062
TOBJ /PWS/ZYCIT062S
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCIL827
CRIADO ELEMENTO DE DADOS: /PWS/ZYCIL827
DESCRIÇÃO BREVE: GL - Redução Base ICMS na NFC
DEFINIÇÃO
CATEGORIA DE DADOS:
(X) - CATEGORIA ELEMENTAR
(X) - DOMÍNIO XFELD
CUMPRIMEN.1 DECIMAIS.0
N.
CARACTERÍSTICAS:
CLASSE DESENVOLV. /PWS/ZYGL
DENOM. DE CAMPO:
BREVE : 10 Red.ICMS
MÉDIO : 15 Red.BC ICMS NFC
LONGA : 20 Red.BC ICMS NFC
TÍTULO: 15 Red.BC ICMS NFC
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUGR /PWS/ZYCIGF1
* Gerada visão de atualização da tabela /PWS/ZYCIT062
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI029F01
...
CLEAR it_zycee007-taxval.
CASE itab_zycit033-tribicms.
WHEN 1.
IF /pws/zycit062-flag_icms = 'X'.
IF itab_zycit100-icms_dif NE 'X'.
* >> Início da exclusão: FORM ITENS_NFC
it_zycee007-taxval = ( itab_zycit265_c2-vldp_dif_icms +
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_NFC
it_zycee007-taxval = ( itab_zycit265_c2-vldp_dif_icms +
* << Fim da inclusão
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
* >> Início da exclusão: FORM ITENS_NFC
/ ( ( 100 - itab_zycit003-advalicms ) / 100 ) *
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_NFC
/ ( ( 100 - itab_zycit003-advalicms ) / 100 ) .
ENDIF.
IF NOT /pws/zycit062-bcnfc IS INITIAL AND
( NOT itab_zycit003-basred IS INITIAL OR
NOT itab_zycit003-basred EQ '100' ).
it_zycee007-base = it_zycee007-taxval *
( itab_zycit003-basred / 100 ) .
it_zycee007-taxval = it_zycee007-base *
( itab_zycit003-advalicms / 100 ).
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
it_zycee007-base.
else.
it_zycee007-taxval = it_zycee007-taxval *
* << Fim da inclusão
( itab_zycit003-advalicms / 100 ).
* >> Início da exclusão: FORM ITENS_NFC
ENDIF.
* << Fim da exclusão
it_zycee007-base = itab_zycit265_c2-vldp_dif_icms +
it_zycee007-taxval +
itab_zycit265_c2-vldp_pis +
itab_zycit265_c2-vldp_cofins .
* >> Início da inclusão: FORM ITENS_NFC
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
itab_zycit265_c2-vldp_dif_icms.
ENDIF.
ELSE.
IF NOT /pws/zycit062-bcnfc IS INITIAL AND
( NOT itab_zycit003-basred IS INITIAL OR
NOT itab_zycit003-basred EQ '100' ).
it_zycee007-base = ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
* ( itab_zycit003-basred / 100 ) .
it_zycee007-taxval = it_zycee007-base *
( itab_zycit003-advalicms / 100 ).
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
it_zycee007-base.
* << Fim da inclusão
ELSE.
it_zycee007-base = itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis +
itab_zycit265_c2-vldp_cofins .
IF itab_zycit100-icms_dif NE 'X'.
it_zycee007-taxval = ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
/ 100 * itab_zycit003-advalicms.
* >> Início da exclusão: FORM ITENS_NFC
ENDIF.
* << Fim da exclusão
ENDIF.
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
itab_zycit265_c2-vldp_dif_icms.
* >> Início da inclusão: FORM ITENS_NFC
endif.
ENDIF.
* << Fim da inclusão
WHEN 2.
* >> Início da inclusão: FORM ITENS_NFC
IF NOT /pws/zycit062-bcnfc IS INITIAL AND
( NOT itab_zycit003-basred IS INITIAL OR
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.
* << Fim da inclusão
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif.
* >> Início da inclusão: FORM ITENS_NFC
endif.
* << Fim da inclusão
WHEN 3.
IF /pws/zycit062-flag_icms = 'X'.
IF itab_zycit100-icms_dif NE 'X'.
it_zycee007-taxval = ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
* >> Início da exclusão: FORM ITENS_NFC
/ ( ( 100 - itab_zycit003-advalicms ) / 100 ) *
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_NFC
/ ( ( 100 - itab_zycit003-advalicms ) / 100 ) .
ENDIF.
IF NOT /pws/zycit062-bcnfc IS INITIAL AND
( NOT itab_zycit003-basred IS INITIAL OR
NOT itab_zycit003-basred EQ '100' ).
it_zycee007-taxval = ( it_zycee007-taxval *
( itab_zycit003-basred / 100 ) ) *
* << Fim da inclusão
( itab_zycit003-advalicms / 100 ).
* >> Início da inclusão: FORM ITENS_NFC
it_zycee007-othbas = ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
* ( itab_zycit003-basred / 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 ) ) .
* << Fim da inclusão
ENDIF.
* >> Início da exclusão: FORM ITENS_NFC
it_zycee007-othbas = ( itab_zycit265_c2-vldp_dif_icms +
it_zycee007-taxval + itab_zycit265_c2-vldp_pis +
itab_zycit265_c2-vldp_cofins ) .
* << Fim da exclusão
ELSE.
* >> Início da exclusão: FORM ITENS_NFC
it_zycee007-othbas = itab_zycit265_c2-vldp_dif_icms.
* << Fim da exclusão
IF itab_zycit100-icms_dif NE 'X'.
* >> Início da inclusão: FORM ITENS_NFC
IF NOT /pws/zycit062-bcnfc IS INITIAL AND
( NOT itab_zycit003-basred IS INITIAL OR
NOT itab_zycit003-basred EQ '100' ).
it_zycee007-taxval = ( ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
* ( itab_zycit003-basred / 100 ) )
* ( itab_zycit003-advalicms / 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 ) ) .
it_zycee007-othbas = itab_zycit265_c2-vldp_dif_icms
* ( itab_zycit003-basred / 100 ) .
ELSE.
* << Fim da inclusão
it_zycee007-taxval = ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins )
/ 100 * itab_zycit003-advalicms.
* >> Início da inclusão: FORM ITENS_NFC
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
itab_zycit265_c2-vldp_dif_icms.
it_zycee007-othbas = itab_zycit265_c2-vldp_dif_icms.
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
* >> Início da exclusão: FORM ITENS_NFC
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
itab_zycit265_c2-vldp_dif_icms.
* << Fim da exclusão
ENDCASE.
CASE itab_zycit033-tribipi.
WHEN 1.
it_zycee007-base2 = itab_zycit265_c2-vldp_dif.
IF /pws/zycit062-flag_icms = 'X' AND
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCIT062
MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCIT062
DESCRIÇÃO BREVE: CI - Param. de Calculo de ICMS "por Dentro"
CARACTERÍSTICAS
CATEGORIA DA TABELA: ___________________________
CLASSE DE ENTREGA: /PWS/ZYCI
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
*CAMPOS NOVOS
CAMPOS: BS_RAT_ICMS
TP. CAMPO CHAR 3
* ESTRUTURA ATUAL DA TABELA
MANDT
REGIO
FLAG_ICMS
BASE
BS_PIS_COF
BCNFC
BS_RAT_ICMS
USERNAMEC
DTUSERC
HRUSERC