ST_PERMITEDEDUZIRDEVOLUCAO - Permite deduzir Devoluções da base de cálculo do crédito
Tela de configuração: MFI003 — Parâmetros Fiscais Localização: Aba Crédito Imobilizado Tabela:
PARMFISCAL.ST_PERMITEDEDUZIRDEVOLUCAOValor padrão:N(Desmarcado)
Resumo
Controla se o sistema deve deduzir os valores de devoluções da base de cálculo do crédito do imobilizado (CIAP). Quando ativado, permite vincular movimentações de entrada do tipo devolução e subtrai esses valores durante a apropriação mensal de crédito fiscal.
Telas impactadas
| Tela | Contexto |
|---|---|
| MFI003 — Parâmetros Fiscais | Aba Crédito Imobilizado, grid de Movimentações por Imposto |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
ST_PERMITEDEDUZIRDEVOLUCAO | PARMFISCAL | Checkbox que habilita a dedução de devoluções na base do crédito |
CD_MOVIMENTACAO | PARMFISCALMOVIMPOSTO | Código da movimentação fiscal vinculada ao imposto |
TP_OPERACAO | MOVIMENTACAO | Tipo de operação da movimentação (S = Saída, E = Entrada) |
ST_DEVOLUCAO | MOVIMENTACAO | Indicador de devolução (D = Devolução) |
Opções disponíveis
N - Desmarcado (padrão)
| O que faz | Detalhe |
|---|---|
| Bloqueia movimentações de entrada na aba Crédito Imobilizado | Não permite selecionar nenhuma movimentação com TP_OPERACAO = 'E' no grid de Movimentações por Imposto |
| Não deduz devoluções na apropriação de crédito | As procedures de crédito calculam a base sem subtrair notas de devolução |
| Validação ao salvar | Se já existirem movimentações de entrada cadastradas, impede desmarcar o checkbox |
Simulação passo a passo
- Acesse MFI003 — Parâmetros Fiscais para a empresa desejada.
- Certifique-se de que o checkbox "Permite deduzir Devoluções da base de cálculo do crédito" está desmarcado (padrão).
- Vá para a aba Crédito Imobilizado e tente incluir uma movimentação de entrada (
TP_OPERACAO = 'E') no grid de Movimentações por Imposto. - O sistema exibe a mensagem: "A Movimentação deve ser do tipo saída. [TCB001]".
- Selecione apenas movimentações de saída (
TP_OPERACAO = 'S') e salve normalmente.
Resultado esperado: Apenas movimentações de saída são aceitas. Na apropriação mensal de crédito, nenhuma dedução de devolução é realizada.
Exceção / Importante: Ao tentar desmarcar o checkbox (passar de
SparaN) com movimentações de entrada já cadastradas, o sistema bloqueia a operação com a mensagem: "Não é possível informar movimentações do tipo 'Entrada', quando o checkbox 'Permite deduzir Devoluções da base de cálculo do crédito' estiver desmarcado. Verifique!". É necessário remover as movimentações de entrada antes de desmarcar.
S - Marcado
| O que faz | Detalhe |
|---|---|
| Permite movimentações de entrada somente se forem devolução | Aceita TP_OPERACAO = 'E' apenas quando ST_DEVOLUCAO = 'D' |
| Deduz valores de devolução da base de cálculo do crédito | Subtrai VL_ISENTO, VL_TOTALSEMCFO e VL_EXTERIOR das notas de devolução |
| Expande o retorno de movimentações elegíveis | A procedure RETORNA_MOVCREDITOIMOB retorna também movimentações de entrada/devolução |
Simulação passo a passo
- Acesse MFI003 — Parâmetros Fiscais para a empresa desejada.
- Marque o checkbox "Permite deduzir Devoluções da base de cálculo do crédito".
- Vá para a aba Crédito Imobilizado e pressione
<F9>no campo de movimentação. - A busca retorna movimentações de saída e movimentações de entrada que sejam devolução (
ST_DEVOLUCAO = 'D'). - Selecione uma movimentação de entrada que não seja devolução — o sistema exibe: "A Movimentação do Tipo Entrada, só pode ser de devolução. Verifique! [TCB001]".
- Selecione uma movimentação de entrada que seja devolução e salve.
- Execute a apropriação mensal de crédito (CIAP). O sistema calcula a base de crédito deduzindo os valores das notas de devolução do período.
Resultado esperado: Movimentações de entrada/devolução são aceitas no cadastro. Na apropriação mensal de crédito, os valores de devolução (isentas, sem CFO, exterior) são subtraídos da base antes do cálculo do fator de crédito.
Exceção / Importante: A busca
<F9>no grid de movimentações envia o valor do parâmetro como filtro paraMOVIMENTACAODINAM. ComS, a busca inclui movimentações de entrada/devolução no resultado; comN, apenas saídas são retornadas.
Regra geral de dedução no crédito
Quando ST_PERMITEDEDUZIRDEVOLUCAO = 'S', as procedures GRAVA_CREDITOMENSALV2 e GRAVA_CREDITOMENSALGERALV2 aplicam a seguinte lógica de dedução em cada trecho do cálculo:
- Valor isento (outras + isento): Subtrai das notas de devolução o somatório de
VL_OUTRAS + VL_ISENTO. - Valor total sem CFO: Subtrai o
VL_LIQUIDOdas notas de devolução que não possuem CFO de crédito. - Valor exterior: Subtrai o
VL_LIQUIDOdas notas de devolução com CFO iniciando com7.
Em todos os casos, apenas notas com TP_NOTA = 'E', ST_NOTA = 'V', ST_FISCAL = 'S' e movimentações com ST_DEVOLUCAO = 'D' são consideradas como devolução.
Procedures impactadas
Rotinas Delphi com referência direta
| Rotina | Arquivo | Descrição |
|---|---|---|
TfrmMFI003.gridMovimentacaoKeyDown | UMFI003.pas:1776 | Passa o valor do parâmetro como filtro na busca <F9> de movimentações |
TdmMFI003.tabPARMFISCALAfterInsert | UdmMFI003.pas:341 | Inicializa o campo com valor padrão 'N' |
TdmMFI003.tabPARMFISCALBeforePost | UdmMFI003.pas:561 | Valida se existem movimentações de entrada ao desmarcar o checkbox |
TdmMFI003.tabPARMMOVIMPOSTOCD_MOVIMENTACAOValidate | UdmMFI003.pas:1399 | Valida tipo da movimentação selecionada (saída ou entrada/devolução) |
Procedures SQL com referência direta ao campo
| Procedure | Arquivo | Descrição |
|---|---|---|
GRAVA_CREDITOMENSALV2 | Scripts/GRAVA_CREDITOMENSALV2.sql | Deduz valores de devolução na base do crédito mensal do imobilizado |
GRAVA_CREDITOMENSALGERALV2 | Scripts/GRAVA_CREDITOMENSALGERALV2.sql | Mesma lógica de dedução aplicada ao crédito geral do imobilizado |
RETORNA_MOVCREDITOIMOB | Scripts/RETORNA_MOVCREDITOIMOB.sql | Retorna movimentações elegíveis para crédito: só saídas (N) ou saídas + entradas/devolução (S) |
RETORNA_CSTCREDITOIMOB | Scripts/RETORNA_CSTCREDITOIMOB.sql | Declara a variável mas não a utiliza diretamente (consulta CSTs do imobilizado) |