Página em Construção


01. Visão Geral

Esta documentação tem como finalidade centralizar as informações e modificações realizadas nas soluções de controladoria, em alinhamento com as exigências da Reforma Tributária.

O conteúdo reúne de forma organizada e objetiva as principais adaptações aplicadas aos processos de contabilização de tributos, bem como às funcionalidades relacionadas à inclusão e gestão de bens do Ativo Fixo.

Ao consolidar essas atualizações em um único material, esta documentação se estabelece como um referencial estratégico para as equipes de controladoria, oferecendo maior segurança na tomada de decisões, agilidade na adequação às novas obrigações legais e suporte à gestão eficiente dos impactos fiscais e contábeis decorrentes da reforma.

02. Contabilização

Método 1: 

A normalização do banco de dados adotada pelo time Fiscal para o Configurador de Tributos organizou as informações em tabelas menores e mais específicas, ao invés de concentrá-las em estruturas maiores e mais complexas.

Essa nova abordagem, trás ganhos em organização e performance.

A tabela F2D – Tributos Genéricos Calculados é a tabela responsável por armazenas os tributos calculados dos itens das Notas Fiscais, sendo documentos de Entrada/Saída "SD1/SD2".
A tabela contem diversos campos e informações, mas no contexto de Contabilização, existe dois campos ao qual podemos nos basear para Contabilizar, sendo eles:

F2D_IDREL  - Id relacionamento Tabela 

F2D_TRIB  - Sigla do Tributo         

O campo F2D_IDREL é o campo responsável pelo relacionamento entre a F2D e SD1 e SD2, por meio dos campos D1_IDTRIB e D2_IDTRIB. Ou seja,  F2D_IDREL  é igual ao D1_IDTRIB/D2_IDTRIB (Item Documento E/S)

O Campo F2D_TRIB  é o campo responsável por gravar a Sigla do Tributo, ou até podemos dizer "apelido" definido na Regra de Cálculo - Documentos Fiscais.

Por exemplo:

No Configurador de Tributos Regras Fiscais → Regras de Calculo Documento Fiscal → Regra de Cálculo - Documentos Fiscais













Através do índice 7 da tabela F2D, é possível posicionar em uma determinada regra de tributo F2D_TRIB "Sigla Tributo/Apelido" que foi calculada para um item de Nota Fiscal F2D_IDREL "D1_IDTRIB/D2_IDTRIB"

Exemplo:


POSICIONE("F2D",7,SD1->D1_IDTRIB+"ATF001","F2D_VALOR")


    1. POSICIONE: É o comando em si, que permite posicionar (buscar) em uma tabela do banco de dados.
    2. "F2D": É a tabela onde será feita a busca das informações.
    3. 7: É o número do índice da tabela F2D que será utilizado para fazer a busca. Cada tabela pode ter diversos índices organizados de formas diferentes.
    4. SD1->D1_IDTRIB+"ATF001": É a chave de busca composta por:
      • SD1->D1_IDTRIB: O valor do campo D1_IDTRIB da tabela SD1
      • "ATF001": A string literal "ATF001" (sigla do tributo)
      • Estes são concatenados para formar a chave completa de busca
    5. "F2D_VALOR": É o campo cujo valor será retornado após o posicionamento na tabela.

O resultado deste comando será o valor do campo F2D_VALOR do registro encontrado na tabela F2D que tenha como chave o valor composto por SD1->D1_IDTRIB+"ATF001".


Exemplo Configuração do Lançamento Padrão:


Método 2: 

Com o intuito de permitir que a contabilização utilize a Classificação do Tributo (Definida na regra de Cálculo - Documentos Fiscais) como base, em vez do código da sigla específico do tributo (F2D_TRIB). Com isso, torna-se possível configurar sequências contábeis mais genéricas, reutilizáveis e de fácil manutenção.

Foi desenvolvida uma função de contabilização chamada CTBVLTRIB, que pode ser utilizada diretamente nos lançamentos padrões de contabilização para obter o valor do tributo desejado.

Sintaxe:
CTBVLTRIB(<ID_TRIBUTO>, <TRIBUTO>)


Exemplo: CTBVLTRIB(SD2->D2_IDTRIB, "ICMSST")


A função CTBVLTRIB procura no <ID_TRIBUTO> informado se há a regra que corresponda ao tributo desejado <TRIBUTO>. Caso encontre, e o mesmo possui valor maior que zero, o valor do tributo é retornado como resultado da função.


A função CTBVLTRIB possui um terceiro argumento chamado <OPERACAO>, cujo funcionamento está vinculado à regra de Custo definida para o tributo informado no segundo parâmetro <TRIBUTO>.

O parâmetro <OPERACAO> é do tipo booleano, podendo assumir os valores verdadeiro .T. (true) ou falso .F. (false).

Quando definido como verdadeiro .T., a função considerará a operação especificada para o tributo informado no segundo parâmetro. Nesse caso, o comportamento da função será o seguinte:

Se, para o tributo ICMS, a regra de Custo estiver definida como Operação 0 – Sem ação, o retorno da função será zero.

Se a regra for Operação 1 – Somar, o retorno será o valor do tributo.

Se a regra for Operação 2 – Subtrair, o retorno será o valor do tributo, porém com sinal negativo. "Ao não ser que para o <ID_TRIBUTO> informado possua outro Tributo ICMS com a Operação 1 - Somar"

Observação: Para a Operação 2 – Subtrair, recomenda-se utilizar a função ABS(), pois caso o valor retorne negativo não será possível considerar a Contabilização do mesmo. 


Caso o terceiro argumento não seja informado, o valor padrão (default) para a operação será falso (.F.). Isso significa que a operação definida para o tributo não será considerada, e a função retornará o valor do tributo, independentemente da operação associada a ele.

Sintaxe:
CTBVLTRIB(<ID_TRIBUTO>, <TRIBUTO>,<OPERACAO>)


Exemplo: CTBVLTRIB(SD2->D2_IDTRIB, "ICMSST",.T.)

O nome do Tributo deve ser informado conforme a Regra de Cálculo - Documentos Fiscais.

Exemplo Configuração do Lançamento Padrão:


03. Novo Mecanismo Valor do Ativo Imobilizado 

Com o Configurador de Tributos e descontinuação de campos da SF4 : CFGTRIB - Campos que Permanecem no TES - Linha Microsiga Protheus - TDN

Foi necessário criar um novo parâmetro para definir o valor do Ativo Imobilizado na Integração Compras x Ativo Fixo junto com um novo conceito para essa definição de valor.

Novo mecanismo Valor do Ativo Imobilizado

Com a chegada do Configurador de Tributos e o projeto de descontinuidade de diversos campos da tabela SF4, não será mais possível utilizar esses campos em parâmetros atualmente permitidos, como no parâmetro MV_VLRATF.

Atualmente, o conteúdo padrão do parâmetro MV_VLRATF é o seguinte:

(SD1->D1_TOTAL - SD1->D1_VALDESC) + IIf(SF4->F4_CREDIPI == "S", 0, SD1->D1_VALIPI) - IIf(SF4->F4_CREDICM == "S", SD1->D1_VALICM, 0)


No entanto, o uso dos campos da SF4, como F4_CREDIPI e F4_CREDICM, deixará de ser permitido, uma vez que esses campos serão descontinuados.

Diante disso, tornou-se necessário a adoção de um novo conceito para definir o valor do bem imobilizado.


Novo parâmetro : MV_VLATFCT

NomeMV_VLATFCT
DescriçãoDefine o valor do bem imobilizado conforme o Configurador de Tributos.
TipoCaractere
DefaultVazio (Em Branco)


Esse parâmetro terá o comportamento similar em partes, ao do parâmetro MV_VLRATF, porem apenas será funcional para campos da SD1. Ou seja, o parâmetro possibilitará que uma formula possa ser utilizada para definição do valor do Ativo com base nos campos da SD1.

Exemplo:

O novo parâmetro MV_VLATFCT, em conjunto com as funcionalidades do Configurador de Tributos, não tem como objetivo substituir o conceito anterior, seja ele teórico ou prático. Ou seja, não existe uma correspondência direta entre o novo conceito e o conceito legado.

O parâmetro MV_VLATFCT, aliado ao Configurador de Tributos, representa um novo mecanismo e abordagem para a definição do valor do bem imobilizado.

Apesar do parâmetro ser do tipo Caractere, não é necessário utilizar Aspas para iniciar e finalizar a Formula.


O parâmetro MV_VLATFCT e o novo método para definir o valor do bem imobilizado apenas entrará em funcionamento caso o Documento de Entrada possua o campo D1_IDTRIB preenchido ou seja, os tributos estão sendo calculados pelo Configurador de Tributos e o parâmetro MV_VLATFCT deve estar diferente de vazio.

O parâmetro MV_VLATFCT junto as configurações da regra de calculo do Configurador de Tributos definira o valor do bem imobilizado em todas inclusões envolvendo o Ativo, sendo notas de entrada do tipo Normal, Complemento ou Garantia Estendida.


Com o resultado dessa fórmula, o valor do Ativo será atualizado.

A partir desse valor atualizado, o sistema verificará internamente se a Nota Fiscal de Entrada que está gerando o Ativo possui tributos a serem calculados pelo Configurador de Tributos, ou seja, se o campo D1_IDTRIB está preenchido.

Caso haja tributos definidos, eles poderão ser somados, subtraídos ou não impactar o valor do bem imobilizado, conforme estabelecido na regra de Custo da Regra de Cálculo de Documentos Fiscais.


 Regra de Custo x Ativo Fixo

No Configurador de Tributos, é possível definir a operação de Custo na Regra de Cálculo de Documentos Fiscais.

As opções disponíveis para essa operação são:

Para configurar, acesse: Configurador de Tributos → Regras Estoque/Custos → Regra de Custo.


Exemplo de Inclusão:

Exemplo Cadastros:



Vinculo do Custo a Regra de Cálculo Documentos Fiscais:



Funcionalidade

Com o valor do bem imobilizado atualizado por meio da execução da fórmula definida no parâmetro MV_VLATFCT, as regras de cálculo configuradas no momento da inclusão do Documento de Entrada, caso possuam uma operação de Custo definida, irão ajustar esse valor conforme a operação escolhida:

Exemplo prático:

Fórmula base (MV_VLATFCT):

(SD1->D1_TOTAL - SD1->D1_VALDESC)

Valores utilizados:

Cálculo passo a passo:

    1. Valor inicial do bem imobilizado (pela fórmula):
      1.000,00 - 100,00 = 900,00

    2. Aplicando a operação de custo (subtrair o ICMS):
      900,00 - 120,00 = 780,00

Resultado final:
O valor do bem imobilizado será de R$ 780,00.



Mas e o conceito de Credita ICMS / Credita IPI ( F4_CREDICM / F4_CREDIPI) no Ativo fixo ? 


ICMS 

✅ 1. "Soma = Debita" → Operação igual a "1"

➡️ Por isso, quando escolhido "Soma" o crédito de ICMS é entendido como Não "N" → Não pode se creditar, apenas debitar esse ICMS. Ou seja, o valor do ICMS será somado ao valor do bem imobilizado ou:

 3. Sem ação → Operação igual a "0"

 ➡️ Não terá ação/não irá compor o valor do bem imobilizado.


📌 Exemplo:

🛠️ Configuração da operação no sistema: "Soma = Debita"

📉 Resultado:


2. "Subtrai = Credita" → Operação igual a "2"

➡️  Por isso, quando escolhido "Subtrai", o crédito de ICMS será Sim "S" → Pode se creditar do valor do ICMS da nota de entrada. Ou seja, o valor do ICMS será subtraído do valor do bem imobilizado caso o tributo faça parte do total da nota ou:

 3. Sem ação → Operação igual a "0"

 ➡️ Não terá ação/não irá compor o valor do bem imobilizado.


📌 Exemplo:

🛠️ Configuração da operação no sistema: "Subtrai = Credita"

📈 Resultado esperado:


IPI 

1. "Soma = Debita" no caso do IPI:

➡️ Por isso, quando escolhido "Soma" o crédito de IPI será Não "N"Não pode se creditar porque está gerando IPI a pagar. Ou seja, o valor do IPI será somado ao valor do bem imobilizado ou:

 3. Sem ação → Operação igual a "0"

 ➡️ Não terá ação/não irá compor o valor do bem imobilizado.


📌 Exemplo:

🛠️ Configuração da operação: "Soma = Debita"

📉 Resultado:


2. "Subtrai = Credita" no caso do IPI:

➡️ Por isso, quando escolhido "Subtrai" o crédito de IPI será Sim "S"Pode se creditar, porque é entrada com direito a crédito. Ou seja, o valor do IPI será subtraído do valor do bem imobilizado caso o tributo faça parte do total da nota ou:

 3. Sem ação → Operação igual a "0"

 ➡️ Não terá ação/não irá compor o valor do bem imobilizado.


📌 Exemplo:

🛠️ Configuração da operação: "Subtrai= Credita"

📉 Resultado:


O novo conceito para definição do valor do ativo imobilizado tem como objetivo simplificar tanto tecnicamente quanto visualmente a composição do bem, além de oferecer uma solução escalável para a aplicação de quaisquer tributos envolvidos.

Dessa forma, qualquer tributo calculado com base nas regras dos documentos fiscais pode ser considerado na formação do ativo fixo — podendo ser somado, subtraído ou não ter impacto no valor do bem, conforme a parametrização definida.