01. VISÃO GERAL


Incluído Rotina FISA116 para calculo da base e valor de ICMS para registro H020 SPED FISCAL

Esta rotina terá objetivo de realizar a composição dos valores a serem gerados no registro H020 do SPED Fiscal. Os valores serão compostos basicamente considerando inventario conforme data de fechamento de estoque informada, e as opções de regras pré definidas, já que a forma de obter os valores é diferente em alguns Estados.

Uma vez os valores já calculados, serão gravados em tabela, ficando assim disponíveis para a geração do SPED Fiscal no registro H020.
Para o processamento da rotina, o usuário deverá informar a data de fechamento do estoque, e definir das opções do combo, qual será a regra aplicada para processar os valores de ICMS. Após confirmação destas informações, a rotina deverá processar todos os produtos em estoque que tiverem alteração de tributos, ou seja, que tiver o campo B5_ALTTRIB igual a “1-Sim”, aplicar a regra selecionada e gravar as informações na tabela.
Esta rotina deverá ser processada por cada filial que irá entregar o SPED Fiscal, já que o mesmo produto poderá ser processado com regras diferentes dependendo do estado do Cliente, pois pode ser o caso de possuir filiais em vários Estados, e o cadastro de produto for compartilhado. O processamento é baseado na regra pré definida, que pode ser utilizada para mais de um Estado.


02. PROCEDIMENTO DE CONFIGURAÇÃO

No Configurador (SIGACFG) acesse Ambiente/Cadastros/Menus e inclua no menu do módulo Livros Fiscais (SIGAFIS) a opção para execução do Cadastro, conforme especificação a seguir:  


Menu

Atualizações

Submenu

SPED

Nome da Rotina

Comp. Val. ICMS H020

Programa

FISA116

Módulo

09

Tipo

01

Tabelas

F0M

  1. Criação de Índices no arquivo SIX
    1. F0M – Composição dos valores de ICMS

      OrdemChaveDescrição
      1F0M_FILIAL+F0M_DTFECH+F0M_CODIGO+F0M_CST+F0M_SITUA+F0M_CLIFOR+F0M_LOJA+F0M_REGRADt. Fecham.+Codigo+CST+Situacao+Clifor+Loja+Regra
  2. Criação de Perguntas no arquivo SX1 – Cadastro de Perguntes:

    Grupo

    FISA116

    Ordem

    01

    Pergunta

    Data de Fechamento Inventario

    Tipo

    Data

    Tamanho

    8

    Grupo

    FISA116

    Ordem

    02

    Pergunta

    Regra a ser Aplicada

    Tipo

    Caracter

    Tamanho

    1

    Opções

    1-Md.Pd.ICMS/ST

    2-Cust.Méd. MVA

    3-Pr+Seg+fret–IPI

    4-Legis. Esp.

    Grupo

    FSR116

    Ordem

    01

    Pergunta

    Data de Fechamento Inventario

    Tipo

    Data

    Tamanho

    8



  3. Criação do Campo no arquivo SX2

    Chave

    Nome

    Modo

    Pyme

    F0M

    Composição dos valores de ICMS

    Exclusivo

    Sim

  4. Criação do Campo no arquivo SX3 – Campos:


    Campo

    F0M_FILIAL

    Tipo

    Caracter

    Tamanho

    2

    Decimal

    0

    Formato

    @!

    Título

    Filial

    Descrição

    Filial do Sistema

    Usado

    Não

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Grupo de Campos

    033 - Tamanho da Filial

    Campo

    F0M_REGRA

    Tipo

    Caracter

    Tamanho

    1

    Decimal

    0

    Formato

    @!

    Título

    Regra Calc

    Descrição

    Regra de Calculo

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Opções

    1=Méd. Pond. Base de ICMS ST; 2=Custo Méd. com MVA; 3=Pr+Seg+fret – IPI; 4=Leg. Específica

    Val. Sistema

    Pertence("1234")

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_SITUA

    Tipo

    Caracter

    Tamanho

    1

    Decimal

    0

    Formato

    @!

    Título

    Situação

    Descrição

    Situação

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Opções

    0=Item em seu poder; 1=Item em posse de terceiros; 2=Item de terc. em posse do informante

    Val. Sistema

    Pertence("012")

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_DTFECH

    Tipo

    Data

    Tamanho

    8

    Decimal

    0

    Formato

    99/99/9999

    Título

    Dt. Fecham.

    Descrição

    Dt. Fechamento de estoque

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Val. Sistema

    DataValida()

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_CODIGO

    Tipo

    Caracter

    Tamanho

    15

    Decimal

    0

    Formato

    @!

    Título

    Codigo

    Descrição

    Codigo do Produto

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Val. Sistema

    ExistCpo("SB1")

    Contexto

    Real

    Propriedade

    Alterar

    Cons. Padrão

    SB1

    Campo

    F0M_CST

    Tipo

    Caracter

    Tamanho

    3

    Decimal

    0

    Formato

    @!

    Título

    Sit.Tribut.

    Descrição

    Situacao Tributaria

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_BASICM

    Tipo

    Numérico

    Tamanho

    14

    Decimal

    2

    Formato

    @E 999,999,999.99

    Título

    Base Unit

    Descrição

    Base unitaria de ICM

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Val. Sistema

    Positivo()

    Contexto

    Real

    Propriedade

    Alterar

    Gatilhos

    Sim

    Campo

    F0M_ALIQ

    Tipo

    Numérico

    Tamanho

    6

    Decimal

    2

    Formato

    @E 999.99

    Título

    Aliq. ICM

    Descrição

    Aliquota de ICMS

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_VALICM

    Tipo

    Numérico

    Tamanho

    14

    Decimal

    2

    Formato

    @E 999,999,999.99

    Título

    Vlr.Unit.ICM

    Descrição

    Valor unitario ICMS

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Gatilhos

    Sim

    Campo

    F0M_MVA

    Tipo

    Numérico

    Tamanho

    6

    Decimal

    2

    Formato

    @E 999.99

    Título

    MVA

    Descrição

    Margem Vlr. ICMS/ST

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Val. Sistema

    Positivo()

    Contexto

    Real

    Propriedade

    Alterar

    Gatilhos

    Sim

    Campo

    F0M_QUANT

    Tipo

    Numérico

    Tamanho

    14

    Decimal

    2

    Formato

    @E 999,999,999.99

    Título

    Quantidade

    Descrição

    Quantidade em estoque

    Usado

    Sim

    Obrigatório

    Sim

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_VALCMD

    Tipo

    Numérico

    Tamanho

    18

    Decimal

    4

    Formato

    @E 9,999,999,999,999.9999

    Título

    V. C. Med.

    Descrição

    Valor Custo Médio

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_CLIFOR

    Tipo

    Caracter

    Tamanho

    6

    Decimal

    0

    Formato

    @!

    Título

    Cli/For

    Descrição

    Cliente / Fornecedor

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Real

    Validaçãovazio() .Or. (ExistCpo('SA1') .Or. ExistCpo('SA2'))

    Propriedade

    Alterar

    Grupo de Campos

    001 - Codigo Cliente/Fornecedor

    Campo

    F0M_LOJA

    Tipo

    Caracter

    Tamanho

    4

    Decimal

    0

    Formato

    @!

    Título

    Loja

    Descrição

    Loja Cliente / Fornecedor

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Grupo de Campos

    002 - Loja Cliente/Fornecedor

    Campo

    F0M_TOTICM

    Tipo

    Numérico

    Tamanho

    18

    Decimal

    4

    Formato

    @E 9,999,999,999,999.9999

    Título

    Total ICMS

    Descrição

    Valor total de ICMS

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Real

    Propriedade

    Alterar

    Campo

    F0M_DESPRO

    Tipo

    Caracter

    Tamanho

    50

    Decimal

    0

    Formato

    @!

    Título

    Des. Produto

    Descrição

    Descrição Produto

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Virtual

    Propriedade

    Visualizar

    RelaçãoIif( INCLUI , "" , Posicione ( "SB1" , 1 , xFilial("SB1") + F0M_CODIGO , "B1_DESC" ) )

    Campo

    F0M_UM

    Tipo

    Caracter

    Tamanho

    15

    Formato

    @!

    Título

    Unidade

    Descrição

    Unidade de Medida

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Virtual

    Consulta PadrãoSAH

    Propriedade

    Visualizar

    Help

    Unidade de Medida

    ValidaçãoExistCpo("SAH")

    Campo

    F0M_VUNIT

    Tipo

    Numérico

    Tamanho

    18

    Decimal

    6

    Formato

    @E 99,999,999,999.999999

    Título

    Valor Unit.

    Descrição

    Valor Unitário

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Real

    HelpValor Unitário do produto

    Propriedade

    Alterar

    Campo

    F0M_TPCF

    Tipo

    Caracter

    Tamanho

    1

    Formato

    @!

    Título

    Cli/For

    Descrição

    Cliente/Fornecedor

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Virtual

    OpçõesC=Cliente;F=Fornecedor

    Propriedade

    Visualizar

    Help

    Indica se participante é cliente ou fornecedor.

    ValidaçãoVazio().or. Pertence("CF")

    Campo

    F0M_CONTA

    Tipo

    Caracter

    Tamanho

    20

    Formato

    @!

    Título

    Cta Contabil

    Descrição

    Conta Contábil

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Sim

    Contexto

    Virtual

    Consulta PadrãoCT1
    Grupo033

    Propriedade

    Visualizar

    Help

    Indica se participante é cliente ou fornecedor.

    Validaçãovazio().or. Ctb105Cta()



  5. Criação do parâmetro no arquivo SX6 – parâmetros:

    Item/PastasDescrição

    Nome

    MV_TXTH020

    Tipo

    Caracter

    Descrição

    Informe texto complementar para compor campo 09-TXT_COMPL do registro H010 quando existir Registro H020 correspondente


  6. Criação do parâmetro no arquivo SX6 – Gatilhos

    Campo

    F0M_BASICM

    Sequência

    001

    Cnt. Domínio

    F0M_VALICM

    Tipo

    P - Primário

    Regra

    (M->F0M_BASICM * (M->F0M_ALIQ/100))

    Campo

    F0M_MVA

    Sequência

    001

    Cnt. Domínio

    F0M_BASICM

    Tipo

    P - Primário

    Regra

    ((M->F0M_VALCMD*(1 + M->F0M_MVA))/M->F0M_QUANT)

    Campo

    F0M_VALICM

    Sequência

    001

    Cnt. Domínio

    F0M_TOTICM

    Tipo

    P - Primário

    Regra

    (M->F0M_VALICM * M->F0M_QUANT)



03. PROCEDIMENTO PARA IMPORTAÇÃO E SPED ICMS IPI

As regras disponíveis serão as:

As informações a serem processadas por produto são:


Definição das regras

A base de cálculo será calculada em função da regra selecionada pelo usuário, porém a alíquota interna será gerada da mesma forma em todas as regras, considerando alíquota informada no cadastro de produto B1_PICM, ou então a do parâmetro MV_ICMPAD caso o campo B1_PICM estiver zerado. 


Média Ponderada da Base de ICMS ST

Esta regra basicamente irá fazer a média ponderada da base de cálculo do ICMS ST das últimas aquisições do produto processado, considerando a quantidade em estoque, ou seja, se houver 100 unidades do produto em estoque, então deverão ser consideradas tantas notas fiscais necessárias para compor a quantidade de 100 unidades, e então fazer a média ponderada:
Base de cálculo unitária = Somatório da Base de Cálculo ICMS ST / Quantidade em estoque


Custo Médio com MVA

Nesta regra o cálculo será feito considerando o valor do custo médio já calculado pelo estoque, devendo somente aplicar o MVA. Então ficará da seguinte maneira:
Base de cálculo unitária = Valor do Custo Médio * (1 + (MVA do produto / 100) )
Lembrando que o MVA poderá ser informado nos cadastros de Produto, Exceção Fiscal e UFxUF, porém não conseguimos obter o MVA destes cadastros, por exemplo se o MVA for definido na Exceção Fiscal, não conseguiremos posicionar na linha correta somente com código de produto, não podemos utilizar MVA gravados na nota, pois é o valor utilizado na época, pode ter sido alterado, além do cenário da exclusão do ST, os cadastros não terão mais o MVA preenchido. Por este motivo para esta regra de cálculo o usuário deverá informar manualmente o valor do MVA vigente após o processamento do do inventario.


Preço + seguro + frete – IPI

Já para esta regra, a base de cálculo será obtida pelo somatório do valor do preço + seguro + frete – IPI das últimas aquisições do produto. As notas de aquisições a serem consideradas deverão ser as mais recentes, e as notas deverão ser suficientes para compor a quantidade informada em estoque, ou seja, se houver 100 unidades do produto em estoque, então deverão ser consideradas tantas notas fiscais necessárias para compor a quantidade de 100 unidades, e então fazer a média ponderada, já que a base de cálculo é unitária.
Base de Cálculo unitária = (Somatório do preço de aquisição + seguro + frete – IPI) / Quantidade em estoque


Valor definido através de legislação específica

Esta regra será aplicada para as situações onde a base de cálculo unitária deverá ser definida através de valores publicados na legislação que trata deste produto no regime de ST, que podem ser diversas legislações de diversos produtos variando ainda por Estado, além de poderem ser alteradas, ficando assim inviável realizar o mapeamento destas informações no sistema. Por este motivo, quando selecionada esta regra, a rotina irá preencher somente o CST de ICMS e alíquota interna do produto, ficando por conta do usuário informar o valor da base de cálculo unitária da legislação específica.


Média ponderada da base de ICMS ST rec. anteriormente 

Esta regra basicamente irá fazer a média ponderada da base de cálculo do ICMS ST das últimas aquisições do produto processado, considerando a quantidade em estoque, ou seja, se houver 100 unidades do produto em estoque, então deverão ser consideradas tantas notas fiscais necessárias para compor a quantidade de 100 unidades, e então fazer a média ponderada:
Base de cálculo unitária = Somatório da Base de Cálculo ICMS ST / Quantidade em estoque


Esta regra considera apenas produtos cujo classificação fiscal de estoque (B1_CLASFIS) seja 60 - Recolhido anteriormente


Relatório com Listagem dos valores calculados

Este relatório irá buscar as informações da nova tabela populada pela rotina que calcula as informações de ICMS


Geração do Registro H020

Atualmente o registro H020 é gerado com o valor do custo médio, gerado pelo inventario, considerando também a opção de alteração de tributação no complemento do produto o B5_ALTTRIB. Porém com esta implementação, teremos mais de uma forma de geração.
A primeira delas será através de ponto de entrada, o SPEDH020, onde o usuário irá retornar todos os valores do H020. A segunda forma é verificar se existe informação gravada para o produto e data de fechamento de estoque, se houver, então H020 deverá ser gerado com informações já processadas pela nova rotina. Se não houver ponto de entrada e nem informações na nova tabela, então deverá processar como sempre fez com o custo médio. Lembrando que a data de fechamento do estoque informada no SPED Fiscal deverá ser a mesma data informada no processamento da nota rotina.


Da demonstração dos créditos ou débitos mediante alteração da tributação

Quando um determinado produto é excluído do regime de ST, trata-se de hipótese de crédito para o contribuinte, pois as saídas destes produtos serão agora tributadas, porém ele não tomou crédito quando comprou a mercadoria, já que estava prevista no regime ST, então para compensar o contribuinte ele terá direito aos créditos destes produtos levantados no estoque.


Já quando um determinado produto é incluído no regime de ST, então trata-se de hipótese de débito, pois as saídas não serão mais tributadas, porém o contribuinte tomou crédito na aquisição, e como o produto está no regime de ST não tem direito ao crédito de ICMS.


Cada Estado irá determinar como proceder na utilização dos créditos e pagamento destes débitos, se será através de ajuste, através de nota, parcelado ou integral.

Na nesta implementação, os seguintes estados estavam vinculados:ES, AM, SC, RS, SP e MS.






 

Documento sobre ponto de entrada SPEDH020

SPEDH020 - SPEDFISCAL - Registro H020


Passos para a geração H020 via FISA116.

Verificar se para os produtos movimentados o campo "Alter. Trib" (B5_ALTTRIB) no Complemento de Produto esta preenchido (deve estar = 1) ou produto deve estar cadastrado na rotina de motivo de inventario (FISA120) com mesma data de fechamento de estoque informada na rotina F0M.

Caso campos de Unidade(F0M_UM) ou conta contábil (F0M_CONTA) estejam em branco, no processamento do SPED FISCAL sera considerado conteúdo cadastrado no produto (SB1)

Processar inventario.

Ao selecionar opção de processar inventario será processado inventario através da função SPDBlocH que retornara estoque com base na data de fechamento informada .

Gerar o SPED Fiscal.

Para que os dados contidos na tabela F0M sejam consideradas no arquivo SPED FISCAL devem seguir as seguintes regras:


Quando for necessário informa mais de um fechamento de inventario deve ser utiliza rotina de motivo de inventario (FISA120)

SPDFIS - Motivo de Inventário Bloco H

Incluído ponto de entrada SPEDALTH para processamento do registro H010 SPED FISCAL.

Através desde ponto de entrada é possível enviar tabela temporária que sera processada pela rotina SPED FISCAL e Composição do registro H020 (FISA116) sem que seja processado Estoque.

SPEDALTH para processamento do registro H010 SPED FISCAL.