Pular para o conteúdo principal

ST_OBRIGACADASTROCLIENTE - Obrigar Cadastro de Cliente no Pedido/Orçamento

Tela de configuração: MFA001 - Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 2 Tabela: PARMFATUR.ST_OBRIGACADASTROCLIENTE (CHAR(1), NOT NULL) Valor padrão: N (Não)

Define se o usuário deve informar um cliente cadastrado (em vez do consumidor padrão) ao salvar orçamentos e/ou pedidos na tela MPD002 - Pedidos.

Telas impactadas​

TelaArquivoImpacto
MPD002 - Pedidossource/MPD002/UMPD002.pasBloqueia salvar/atualizar quando o cliente é o consumidor padrão e o parâmetro exige cadastro

Campos envolvidos​

CampoTabelaPapel
CD_PESSOAPEDIDOCódigo do cliente informado no pedido/orçamento
CD_CONSUMIDORPARMFATURCódigo do consumidor padrão — usado como referência para decidir se o cliente foi devidamente cadastrado (CD_CONSUMIDOR configurado em MFA001 - Parâmetros de Faturamento)

Opções disponíveis​

N - Não​

O que fazDetalhe
Não exige cadastro de clientePermite usar o consumidor padrão livremente em pedidos e orçamentos
EditávelSem bloqueio ao salvar

Simulação passo a passo​

  1. Acesse MPD002 - Pedidos.
  2. Abra um novo orçamento ou pedido.
  3. Deixe o cliente como Consumidor Padrão (sem alterar).
  4. Adicione itens e clique em Salvar (ou <F9>).
  5. O documento é salvo normalmente.

Resultado esperado: Orçamento ou pedido salvo sem restrição, mesmo com o cliente consumidor padrão.


P - Pedido​

O que fazDetalhe
Exige cadastro de cliente no PedidoBloqueia salvar pedido com consumidor padrão
Orçamento liberadoOrçamentos continuam aceitando consumidor padrão

Simulação passo a passo​

  1. Acesse MPD002 - Pedidos.
  2. Crie um novo Pedido com o cliente igual ao consumidor padrão.
  3. Adicione itens e clique em Salvar (ou <F9>).
  4. O sistema exibe a mensagem: "Cadastro do cliente obrigatório para Pedido. Verifique!".
  5. Troque o cliente por um cadastro específico (ex.: cliente "João da Silva").
  6. Clique em Salvar novamente.

Resultado esperado: Pedido só é salvo após informar um cliente diferente do consumidor padrão. Orçamentos não são afetados.


O - Orçamento​

O que fazDetalhe
Exige cadastro de cliente no OrçamentoBloqueia atualizar orçamento com consumidor padrão
Pedido liberadoPedidos continuam aceitando consumidor padrão

Simulação passo a passo​

  1. Acesse MPD002 - Pedidos.
  2. Abra ou crie um Orçamento com o cliente igual ao consumidor padrão.
  3. Adicione itens e clique em Atualizar (ou <F9>).
  4. O sistema exibe a mensagem: "Cadastro do cliente obrigatório para Orçamento. Verifique!".
  5. Troque o cliente por um cadastro específico (ex.: cliente "Maria Oliveira").
  6. Clique em Atualizar novamente.

Resultado esperado: Orçamento só é salvo após informar um cliente diferente do consumidor padrão. Pedidos não são afetados.


A - Ambos​

O que fazDetalhe
Exige cadastro de cliente em ambosBloqueia salvar pedidos e orçamentos com consumidor padrão
Restrição totalNenhum documento aceita consumidor padrão

Simulação passo a passo​

  1. Acesse MPD002 - Pedidos.
  2. Crie um novo Pedido com o cliente igual ao consumidor padrão.
  3. Adicione itens e clique em Salvar.
  4. O sistema exibe: "Cadastro do cliente obrigatório para Pedido. Verifique!".
  5. Troque o cliente por um cadastro específico e salve — pedido é gravado.
  6. Agora crie um Orçamento com o cliente igual ao consumidor padrão.
  7. Clique em Atualizar.
  8. O sistema exibe: "Cadastro do cliente obrigatório para Orçamento. Verifique!".
  9. Troque o cliente e atualize — orçamento é gravado.

Resultado esperado: Nem pedidos nem orçamentos são salvos enquanto o cliente informado for o consumidor padrão.

Tabela Comparativa Resumida​

ValorNomeOrçamentoPedido
NNão✅ Liberado✅ Liberado
PPedido✅ Liberado🚫 Exige cadastro
OOrçamento🚫 Exige cadastro✅ Liberado
AAmbos🚫 Exige cadastro🚫 Exige cadastro

Regra Geral​

O parâmetro compara o campo CD_PESSOA do pedido com CD_CONSUMIDOR cadastrado em PARMFATUR. Se forem iguais e o tipo de documento estiver coberto pelo parâmetro, o salvamento é bloqueado com mensagem de aviso. Isso garante que o usuário cadastre o cliente real em vez de utilizar o consumidor genérico.

Exceção / Importante: O bloqueio ocorre apenas nas rotinas de salvar pedido (btnSalvarClick) e atualizar orçamento (btnAtualizarClick) da tela MPD002. Outras telas ou processos não são afetados diretamente por este parâmetro.

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaAção
TfrmMPD002.btnAtualizarClicksource/MPD002/UMPD002.pas1195Verifica se ST_OBRIGACADASTROCLIENTE é O ou A; bloqueia orçamento com consumidor padrão
TfrmMPD002.btnSalvarClicksource/MPD002/UMPD002.pas1988Verifica se ST_OBRIGACADASTROCLIENTE é P ou A; bloqueia pedido com consumidor padrão
TdmMPD002.BuscaParametros_MPD002source/MPD002/UdmMPD002.pas5757Carrega o campo na lista de parâmetros parmfatur

Referências SQL diretas ao campo​

Nenhuma procedure/view SQL em Scripts/ referencia diretamente a coluna ST_OBRIGACADASTROCLIENTE.

Candidatas por uso da tabela​

As procedures abaixo utilizam a tabela PARMFATUR mas não referenciam este campo 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, CREDITOPERIODICOGRUPO_AI0, EXPORTACAO_ALLABOR, EXPORTACAO_DOMINIOCADASTROS, EXPORTACAO_DOMINIOCUPOM.