CD_MOVDEBITOVEND - Movimentação de Débito do Vendedor
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Aba Operação 2 → campo "Movimentos e Operações Padrão" Tabela:
PARMFATUR.CD_MOVDEBITOVEND(INTEGER) Campo na tela:edtCD_MOVIMENTACAOValor padrão: preenchido via lookup (result.getParam(0))
Resumo
Define a movimentação financeira usada como modelo para gerar débitos a receber do vendedor quando uma nota fiscal é gravada. A movimentação informa o CD_TIPOCONTA e o CD_HISTORICO do título gerado. Funciona exclusivamente em conjunto com o parâmetro ST_DEBITOVENDEDOR (configurado em MFA001 → Parâmetros, campo ST_DEBITOVENDEDOR).
Telas impactadas
| Tela | Arquivo | Uso |
|---|---|---|
| MFA001 / Parâmetros de Faturamento | source/MFA001/UMFA001.pas | Cadastro do parâmetro (aba Operação 2) |
| MNF002 / Nota Fiscal | source/MNF002/UMNF002.pas | Gera débito do vendedor ao salvar a nota |
| MNF032 | source/MNF032/UMNF032.pas | Gera débito do vendedor ao confirmar a nota |
| MCO006 | source/MCO006/UdmMCO006.pas | Carrega parâmetro para uso na rotina |
| MNF008 | source/MNF008/UdmMNF008.pas | Carrega parâmetro para uso na rotina |
Campos envolvidos
| Campo | Tabela | Tipo | Descrição |
|---|---|---|---|
CD_MOVDEBITOVEND | PARMFATUR | INTEGER | Código da movimentação de débito do vendedor |
DS_MOVDEBITOVEND | PARMFATUR | texto | Descrição da movimentação (preenchida automaticamente) |
CD_MOVIMENTACAO | MOVIMENTACAO | INTEGER | Chave primária da movimentação (tabela referenciada) |
Relação: PARMFATUR.CD_MOVDEBITOVEND → MOVIMENTACAO.CD_MOVIMENTACAO (FK RPARMFATUR_MOVDEBITOVEND)
Regras de validação
Ao preencher o campo, o sistema verifica na tabela MOVIMENTACAO:
- Movimentação deve existir — se não encontrada, exibe: "Movimentação Não Cadastrada! [TCB001]"
- Movimentação deve estar ativa (
ST_ATIVO = 'S') — se inativa, exibe: "A Movimentação Não Esta Ativa! [TCB001]" - Tipo de conta deve ser "Contas a Pagar" (
TP_TIPOCONTA = 'CP') — se diferente, exibe: "O Tipo de Contas da Movimentação é Diferente de Contas a Pagar!"
Se qualquer validação falhar, o campo e a descrição são limpos e o foco retorna ao campo.
Fluxo de uso (geração do débito)
Este parâmetro não tem opções discretas (S/N/T/etc.). Ele é um campo livre que aceita qualquer código de movimentação que satisfaça as validações acima. O fluxo funcional é:
Preenchimento do parâmetro
Simulação passo a passo
- Acesse MFA001 → aba Operação 2.
- Posicione no campo Movimentos e Operações Padrão (Opção 2 — "Mov de Débito Pendente p/ Vendedor").
- Digite o código de uma movimentação ativa do tipo Contas a Pagar ou use
<F9>para localizar. - O sistema valida a movimentação e preenche automaticamente a descrição ao lado.
- Salve os parâmetros.
Resultado esperado: O parâmetro CD_MOVDEBITOVEND fica gravado com o código da movimentação escolhida.
Geração do débito ao salvar uma nota fiscal
Simulação passo a passo
- Certifique-se de que
ST_DEBITOVENDEDOR(configurado em MFA001 → Parâmetros) esteja definido comoS. - Na tela de Nota Fiscal (MNF002 ou MNF032), preencha uma nota com vendedor vinculado.
- Ao gravar/salvar a nota, o sistema exibe a pergunta: "Deseja Gerar Débito para o Vendedor".
- Confirme clicando em Sim.
- O sistema busca
CD_TIPOCONTAeCD_HISTORICOda movimentação configurada emCD_MOVDEBITOVEND. - É gerado um título a receber (modo
'D'= débito) em nome do vendedor, com:- Valor: valor total da nota fiscal
- Vencimento: data de emissão + 30 dias
- Histórico fixo:
'DV'(Débito do Vendedor) - Tipo de conta e histórico: herdados da movimentação
Resultado esperado: Criado um título a receber para o vendedor no valor da nota, com vencimento em 30 dias, utilizando o tipo de conta e histórico da movimentação configurada.
Exceção / Importante:
- Se
CD_MOVDEBITOVENDestiver vazio, o sistema exibe o aviso "O Vendedor Não Possui Movimentação de Débito Cadastrada! [MFA001]" e nenhum título é gerado, mesmo que o operador confirme.- Se
ST_DEBITOVENDEDORforN, a pergunta de débito não é exibida ao gravar a nota.- A pergunta só aparece se a nota possuir vendedor informado (
CD_VENDEDORpreenchido).
Parâmetros relacionados
| Parâmetro | Onde configurar | Relação |
|---|---|---|
ST_DEBITOVENDEDOR | MFA001 → Parâmetros (PARMFATUR.ST_DEBITOVENDEDOR) | Flag que habilita o fluxo de débito (S/N). Sem ela em S, o débito nunca é perguntado. |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Descrição |
|---|---|---|
TfrmMFA001.edtCD_MOVIMENTACAOKeyDown | source/MFA001/UMFA001.pas:1841 | Atribui valor ao campo via lookup |
TdmMFA001.tabPARMFATURCD_MOVDEBITOVENDValidate | source/MFA001/UdmMFA001.pas:1507 | Validação: ativa, existente e tipo CP |
TfrmMNF002.btnSalvarClick | source/MNF002/UMNF002.pas:3992 | Gera débito ao salvar nota fiscal |
TfrmMNF032.btnConfirmaNotaClick | source/MNF032/UMNF032.pas:1612 | Gera débito ao confirmar nota |
TdmMCO006.BuscaParametros_MCO006 | source/MCO006/UdmMCO006.pas:2114 | Carrega parâmetro |
TdmMNF002.BuscaParametros_MNF002 | source/MNF002/UdmMNF002.pas:10505 | Carrega parâmetro |
TdmMNF008.BuscaParametros_MNF008 | source/MNF008/UdmMNF008.pas:770 | Carrega parâmetro |
Referência SQL direta ao campo
O campo é consultado via ParmFatur.Values['CD_MOVDEBITOVEND'] nas rotinas de geração de nota (MNF002, MNF032), que então executam:
SELECT CD_TIPOCONTA, CD_HISTORICO
FROM MOVIMENTACAO
WHERE CD_MOVIMENTACAO = :CD_MOVDEBITOVEND
E em seguida chamam GRAVA_CONTAS('D', ...) para criar o título.
Candidatas por uso da tabela
As procedures SQL listadas no inventário usam a tabela PARMFATUR mas não referenciam o campo CD_MOVDEBITOVEND diretamente. Nenhuma referência direta ao campo foi encontrada em Scripts/.