CD_TROCAENT - Movimentação de Troca de Entrada (Devolução)
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Parâmetros → Operação 1 → Movimentos e Operações Padrão Tabela:
PARMFATUR.CD_TROCAENT(tipoINTEGER) Campo na tela:edtCD_TROCAENTValor padrão: nenhum (campo livre, editável)
Resumo
Define o código de movimentação contábil/estoque utilizado como padrão nas operações de troca de entrada (devolução). O valor informado deve corresponder a um registro válido na tabela MOVIMENTACAO com tipo de operação Entrada (TP_OPERACAO = 'E') e status ativo.
Telas impactadas
| Tela | Rotina | Uso |
|---|---|---|
| MNF009 — Troca de Mercadoria | Busca_Parametros | Carrega CD_TROCAENT para iCD_MOVENTRADA; se vazio, bloqueia Novo/Salvar/Excluir e exibe alerta |
| MNF026 — Devolução PDV | Busca_Parametros | Carrega CD_TROCAENT para iCD_MOVENTRADA; mesmo comportamento de bloqueio |
| MPD043 — Troca de Locação | btnConfirmaTroca | Busca CD_TROCAENT para identificar a operação de estoque de entrada na devolução de item locado |
| LDP018 — Layout Duplicata | ExecLayout | Consulta CD_TROCAENT para determinar o tipo de movimentação no filtro de relatório |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
CD_TROCAENT | PARMFATUR | Código da movimentação de troca de entrada |
DS_TROCAENT | PARMFATUR (lookup) | Descrição da movimentação (via JOIN com MOVIMENTACAO) |
CD_MOVIMENTACAO | MOVIMENTACAO | Chave primária validada |
TP_OPERACAO | MOVIMENTACAO | Deve ser 'E' (Entrada) |
ST_ATIVO | MOVIMENTACAO | Deve ser 'S' (Ativa) |
Opções disponíveis
Este parâmetro é um campo numérico editável que aceita o código de uma movimentação cadastrada. Não possui opções fixas (como S/N).
| O que faz | Detalhe |
|---|---|
| Aceita | Qualquer código de MOVIMENTACAO ativa e com TP_OPERACAO = 'E' |
| Rejeita | Código inexistente, movimentação inativa ou com TP_OPERACAO = 'S' (Saída) |
| Pesquisa | Pressione <F9> para abrir a janela de pesquisa de movimentações filtrada (Entrada + Ativa) |
| Obrigatoriedade | Exigido pelas telas de troca (MNF009, MNF026, MPD043). Ausência gera bloqueio e alerta |
Preenchimento passo a passo
- Acesse MFA001 — Parâmetros de Faturamento e selecione a aba Operação 1.
- Posicione o cursor no campo Movimentos e Operações Padrão junto ao rótulo de troca de entrada.
- Digite o código da movimentação de entrada desejada ou pressione
<F9>para abrir a janela de pesquisa. - Na janela de pesquisa, selecione a movimentação desejada — apenas movimentações ativas com tipo Entrada são listadas.
- Salve os parâmetros (
<Ctrl+S>ou botão correspondente).
Resultado esperado: O campo é preenchido com o código válido, a descrição aparece ao lado e as telas de troca (MNF009, MNF026, MPD043) passam a utilizar essa movimentação automaticamente nas devoluções.
Exceção / Importante:
- Se o código informado não existir em
MOVIMENTACAO, o sistema exibe: "A Movimentação não está Cadastrada [TCB001]!".- Se a movimentação estiver inativa (
ST_ATIVO = 'N'): "A Movimentação não está Ativa!".- Se a movimentação for de saída (
TP_OPERACAO = 'S'): "A Operação da Movimentação não pode ser de Saída!".- Nas telas MNF009 e MNF026, se
CD_TROCAENTestiver vazio emPARMFATUR, o formulário bloqueia as ações de Novo, Salvar e Excluir e exibe: "Os Parâmetros de Faturamento [Movimentação de Troca Entrada] para a Empresa X não estão Cadastrados [MFA001]!".- No MPD043 (Locação), a ausência do parâmetro impede a confirmação da troca com o erro: "Movimentação de Troca de Devolução não Cadastrada. Verifique [MFA001]!".
Validações na configuração (MFA001)
A validação ocorre no evento tabPARMFATURCD_TROCAENTValidate (UdmMFA001.pas):
- Se o campo não estiver vazio, consulta
MOVIMENTACAOpelo código informado. - Verifica
TP_OPERACAO: se'S', rejeita com erro (não pode ser saída). - Verifica
ST_ATIVO: se'N', rejeita com erro (deve estar ativa). - Se válido, preenche automaticamente
DS_TROCAENTcom a descrição.
Relacionamentos
| Parâmetro relacionado | Tabela | Descrição |
|---|---|---|
CD_TROCASAI | PARMFATUR | Movimentação de troca de saída (par complementar, mesma aba) |
CD_TROCAENTLOC | PARMFATUR | Movimentação de troca de entrada para locações (aba Locações) |
CD_TROCASAILOC | PARMFATUR | Movimentação de troca de saída para locações (aba Locações) |
CD_LAYTROCA | PARMFATUR | Layout de impressão utilizado na troca |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Uso |
|---|---|---|
tabPARMFATURCD_TROCAENTValidate | UdmMFA001.pas | Validação ao editar o campo |
edtCD_TROCAENTKeyDown | UMFA001.pas | Pesquisa <F9> de movimentação |
Busca_Parametros | UdmMNF009.pas | Carrega parâmetro para iCD_MOVENTRADA (MNF009) |
Busca_Parametros | UdmMNF026.pas | Carrega parâmetro para iCD_MOVENTRADA (MNF026) |
btnConfirmaTroca | UMPD043.pas | Busca código para operação de estoque de devolução (MPD043) |
ExecLayout | ULDP018.pas | Consulta no filtro de relatório de duplicata (LDP018) |
Scripts SQL com referência direta ao campo
| Script | Uso |
|---|---|
source/CPD008/UdmCPD008.dfm | Consulta que compara CD_MOVIMENTACAO com PA.CD_TROCAENT para determinar tipo de operação |
Candidatas por uso da tabela
As procedures/views abaixo utilizam PARMFATUR mas não referenciam CD_TROCAENT diretamente: ATUALIZA_PESSOA, ATUALIZA_PRECOVENDA, BUSCAPRECORECAP, CALCULA_CENTRORESULT, CALCULA_CENTRORESULTITEM, CALCULA_COMISSAO, CALCULA_COMISSAO_V2, CALCULA_JUROVENDA, CALCULA_MAQUINA, CALCULA_MAQUINAFICHA, CANCELA_MESTRA, CANCELA_NOTAFISCAL, CONFIRMA_ORDEMSERVICO, CONFIRMA_ORDEMSERVICOMETAL, CONSOME_LOTEMATERIAPRIMA, CREDITOPERIODICO_AI0, CREDITOPERIDICOGRUPO_AI0, EXPORTACAO_ALLABOR, EXPORTACAO_DOMINIOCADASTROS, EXPORTACAO_DOMINIOCUPOM. Sem impacto direto identificado no campo.