Pular para o conteúdo principal

Parâmetro de Obrigatoriedade de Preposto/Vendedor

Tela de configuração: MFA001 - Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 1 (rótulo "Obriga a Ter Preposto") Tabela: PARMFATUR.ST_CADPREPOSTO Valor padrão: N (Não)

Telas impactadas​

MóduloCódigoDescrição
Cadastro de PessoasTFA001Cadastro de Pessoas (clientes, fornecedores, etc.)

Campos envolvidos​

CampoDescrição
PESSOA.CD_PREPOSTOCódigo do preposto (vendedor) vinculado à pessoa (cliente)
VENDEDORESPESSOA.CD_PESSOAVendedores associados à pessoa (modo múltiplos vendedores)
TIPOPESSOA.TP_TIPOPESSOATipo da pessoa - 'C' indica Cliente
PARMFATUR.ST_VARIOSVENDEDORESParâmetro auxiliar que controla qual fluxo de validação é executado

Opções disponíveis​

S - Sim (Obriga a Ter Preposto)​

O que fazDetalhe
Obriga preposto/vendedor?SIM, mas apenas para pessoas do tipo Cliente (TIPOPESSOA.TP_TIPOPESSOA = 'C')
Modo único vendedor (ST_VARIOSVENDEDORES = 'N')Exige o preenchimento do campo PESSOA.CD_PREPOSTO. Se vazio, bloqueia o salvamento
Modo múltiplos vendedores (ST_VARIOSVENDEDORES = 'S')Exige pelo menos um vendedor cadastrado na grade tabVENDEDORES (tabela auxiliar VENDEDORESPESSOA)
Qual aba/foco em caso de erro (modo único)Vai para aba pagREPRESENTANTE, abre a grade MARCAREPRESENTADA e foca em edtCD_PREPOSTO
Qual aba/foco em caso de erro (modo múltiplos)Vai para aba pagVENDEDORES e foca em gridVENDEDORES
Mensagem (modo único)"Pessoa do Tipo "Cliente" - É Obrigatório Informar um Preposto."
Mensagem (modo múltiplos)"É Obrigatório Informar Pelo Menos um Vendedor!"
Aplica-se a outros tipos de pessoa?Não - somente clientes (TP_TIPOPESSOA = 'C')

Simulação passo a passo (modo único vendedor — ST_VARIOSVENDEDORES = 'N')​

  1. Vá em MFA001 → Parâmetros → Ambos → Opção 1 → "Obriga a Ter Preposto" = "Sim"
  2. Confirme que ST_VARIOSVENDEDORES = 'N' na mesma tela
  3. Salve os parâmetros (F6)
  4. Abra o Cadastro de Pessoas (TFA001)
  5. Inclua uma nova pessoa (F2) e selecione um Tipo de Pessoa cujo TP_TIPOPESSOA = 'C' (Cliente)
  6. Preencha os dados básicos mas deixe o campo "Preposto" (CD_PREPOSTO) em branco
  7. Tente salvar (F6) → ERRO: "Pessoa do Tipo "Cliente" - É Obrigatório Informar um Preposto."
  8. O sistema navega automaticamente para a aba pagREPRESENTANTE e foca em edtCD_PREPOSTO
  9. Informe um preposto válido → Salva normalmente

Resultado esperado: Toda pessoa do tipo Cliente cadastrada exige obrigatoriamente um preposto vinculado.

Simulação passo a passo (modo múltiplos vendedores — ST_VARIOSVENDEDORES = 'S')​

  1. MFA001 → ST_CADPREPOSTO = "Sim" e ST_VARIOSVENDEDORES = "Sim"
  2. Salve os parâmetros (F6)
  3. Abra o Cadastro de Pessoas (TFA001)
  4. Inclua uma nova pessoa do tipo Cliente
  5. Preencha os dados básicos mas não adicione nenhum vendedor na grade da aba "Vendedores"
  6. Tente salvar (F6) → ERRO: "É Obrigatório Informar Pelo Menos um Vendedor!"
  7. O sistema navega para a aba pagVENDEDORES e foca em gridVENDEDORES
  8. Adicione pelo menos um vendedor na grade → Salva normalmente

Resultado esperado: No modo múltiplos vendedores, todo cliente exige pelo menos um vendedor cadastrado na tabela auxiliar VENDEDORESPESSOA.


N - Não (Não Obriga Preposto)​

O que fazDetalhe
Obriga preposto/vendedor?Não, ambas as validações são puladas
Campo CD_PREPOSTOPermanece editável, mas não obrigatório
Grade de vendedores (modo múltiplos)Pode ficar vazia sem impedir o salvamento
Aplica-se a qual tipo de pessoa?Indiferente - nenhuma validação de preposto é executada

Simulação passo a passo​

  1. MFA001 → ST_CADPREPOSTO = "Não"
  2. Salve os parâmetros (F6)
  3. Abra o Cadastro de Pessoas (TFA001)
  4. Inclua uma nova pessoa do tipo Cliente
  5. Não informe preposto e não adicione vendedores
  6. Tente salvar (F6) → Salva normalmente, sem cobrança de preposto/vendedor

Resultado esperado: Total liberdade. O cadastro de pessoa não exige preposto nem vendedor, independentemente do tipo de pessoa.

Este é o valor padrão ao criar um novo registro no MFA001.


Observação Importante: Interação com ST_VARIOSVENDEDORES​

O parâmetro ST_CADPREPOSTO muda o alvo da validação dependendo do valor de ST_VARIOSVENDEDORES:

ST_VARIOSVENDEDORESST_CADPREPOSTO = 'S' valida...Tabela alvoAba focada em erro
N (único vendedor)Campo PESSOA.CD_PREPOSTO preenchidoPESSOApagREPRESENTANTE
S (múltiplos vendedores)Pelo menos 1 registro em VENDEDORESPESSOAVENDEDORESPESSOApagVENDEDORES

Em ambos os casos, a validação só é disparada para pessoas do tipo Cliente (TIPOPESSOA.TP_TIPOPESSOA = 'C').


Regra Geral de Aplicação​

A validação de preposto/vendedor só é executada quando todas as condições abaixo são verdadeiras:

  1. PARMFATUR.ST_CADPREPOSTO = 'S'
  2. A pessoa sendo cadastrada/alterada possui TIPOPESSOA.TP_TIPOPESSOA = 'C' (Cliente)
  3. O salvamento (btnSalvar.Click) foi disparado

Se qualquer uma das condições falhar, o cadastro é salvo sem cobrança de preposto.


Tabela Comparativa Resumida​

OpçãoDescriçãoObriga preposto?Tipo de pessoa afetadoCampo/grade exigido
SSim (Obriga a Ter Preposto)SimApenas Cliente (TP_TIPOPESSOA = 'C')CD_PREPOSTO (modo único) ou VENDEDORESPESSOA (modo múltiplos)
NNãoNão--