Pular para o conteúdo principal

ST_VALIDABOXPLACAVEICULO – Validar Box e Placa do Veículo

Tela de configuração: OFI001 – Parâmetros de Oficina Localização: Parâmetros → aba Parâmetros → combo "Validar Box e Placa do Veículo" Tabela: PARMOFICINA.ST_VALIDABOXPLACAVEICULO Tipo: CHAR(1) Valor padrão: N (Não)


Comportamento geral​

Quando habilitado (S), o sistema impede a abertura, alteração ou reabertura de uma Ordem de Serviço se já existir outra OS aberta ou em andamento (status A ou B) com a mesma placa ou o mesmo número de box.

A validação ocorre em pontos-chave do fluxo de oficina (MOF001 e script de reabertura):

  1. Alterar o campo Placa na OS – valida placa imediatamente ao perder foco do campo.
  2. Alterar o campo Box na OS – valida box imediatamente ao perder foco do campo.
  3. Salvar OS na tela móvel (MOF001) – valida placa antes de confirmar a gravação.
  4. Reabrir OS na tela móvel (MOF001) – valida placa e box antes de permitir a reabertura.
  5. Reabrir OS via script (REABRE_OS.sql) – valida placa e box antes de permitir a reabertura.

Telas impactadas​

TelaArquivoContexto
MOF001source/MOF001/UMOF001.pasValidação de placa ao salvar e reabrir OS
MOF001source/MOF001/UdmMOF001.pasValidação de placa e box nos eventos Validate dos campos
Script SQLScripts/REABRE_OS.sqlValidação de placa e box na reabertura de OS

Campos envolvidos​

CampoTabelaPapel na validação
NR_PLACAORDEMSERVICOPlaca do veículo – comparada entre OSs abertas
NR_BOXORDEMSERVICONúmero do box – comparado entre OSs abertas da mesma empresa
ST_ORDEMSERVICOORDEMSERVICOStatus da OS – filtrado em 'A' (Aberta) ou 'B' (Em andamento)
CD_EMPRESAORDEMSERVICOEmpresa corrente – escopo da consulta de box

Opções disponíveis​

S – Sim (Validar)​

O que fazDetalhe
Validação de placaAo alterar o campo NR_PLACA ou salvar a OS, o sistema consulta se existe outra OS pendente (status A ou B) com a mesma placa. Se encontrar, bloqueia a operação.
Validação de boxAo alterar o campo NR_BOX ou reabrir a OS, o sistema consulta se existe outra OS pendente com o mesmo box na mesma empresa. Se encontrar, bloqueia a operação.
EscopoConsulta na tabela ORDEMSERVICO filtrando ST_ORDEMSERVICO IN ('A','B'), excluindo a OS atual (quando aplicável).
Editável / BloqueadoParâmetro editável. Não exige outros parâmetros.

Simulação passo a passo – Validação de Placa​

  1. Acesse a tela MOF001 (Oficina Móvel).
  2. Crie ou edite uma Ordem de Serviço.
  3. Informe a placa ABC1D23 no campo Placa.
  4. Saia do campo (perda de foco) ou clique em Salvar.
  5. O sistema consulta: existe outra OS com status A ou B e placa ABC1D23?
  6. Se existir OS nº 1050 na empresa 1 com essa placa → exibe mensagem de erro.

Resultado esperado: A operação é bloqueada e exibida a mensagem:

"Existe uma Ordem de Serviço Pendente com Esse Nr. de Placa. Verifique! Empresa: 1 / Nr. Ordem de Serviço: 1050"

Simulação passo a passo – Validação de Box​

  1. Acesse a tela MOF001 (Oficina Móvel).
  2. Crie ou edite uma Ordem de Serviço.
  3. Informe o número do box 03 no campo Box.
  4. Saia do campo (perda de foco) ou clique em Reabrir OS.
  5. O sistema consulta: existe outra OS com status A ou B, box 03, na mesma empresa?
  6. Se existir OS nº 1080 com esse box → exibe mensagem de erro.

Resultado esperado: A operação é bloqueada e exibida a mensagem:

"Existe uma Ordem de Serviço Pendente com esse Nr. de Box para a Empresa 1. Verifique! Nr. Ordem de Serviço: 1080"

Simulação passo a passo – Reabertura via Script (REABRE_OS.sql)​

  1. Execute o script REABRE_OS passando a empresa e a OS a reabrir.
  2. O script lê PARMOFICINA.ST_VALIDABOXPLACAVEICULO para a empresa informada.
  3. Se o valor for S, consulta se existe OS pendente com a mesma placa ou mesmo box.
  4. Se encontrar → retorna mensagem de erro e impede a reabertura.

Resultado esperado: O script retorna uma das mensagens:

"REABRE_OS: A Ordem de Serviço 1050 está Pendente com esse Nr. de Placa!" "REABRE_OS: A Ordem de Serviço 1080 está Pendente com esse Nr. de Box!"


N – Não (Padrão)​

O que fazDetalhe
Desabilita validaçãoNenhuma consulta de placa ou box é executada. Duplicidade é permitida.
Editável / BloqueadoParâmetro editável.

Simulação passo a passo​

  1. Acesse a tela OFI001 → aba Parâmetros.
  2. Defina o combo "Validar Box e Placa do Veículo" como Não.
  3. Salve os parâmetros.
  4. Acesse MOF001 e crie duas OSs com a mesma placa e/ou mesmo box.
  5. Nenhuma validação é executada; ambas as OSs são gravadas normalmente.

Resultado esperado: O sistema permite gravar múltiplas OSs com a mesma placa ou mesmo box sem restrições.


Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaContexto
TfrmMOF001.btnSalvarClicksource/MOF001/UMOF001.pas2481Valida placa ao salvar OS
TfrmMOF001.btnReabrirClicksource/MOF001/UMOF001.pas5251Valida placa e box ao reabrir OS
TdmMOF001.tabORDEMSERVICONR_PLACAValidatesource/MOF001/UdmMOF001.pas4647Valida placa ao alterar o campo
TdmMOF001.tabORDEMSERVICONR_BOXValidatesource/MOF001/UdmMOF001.pas6285Valida box ao alterar o campo
TdmOFI001.tabPARMOFICINAAfterInsertsource/OFI001/UdmOFI001.pas368Define valor padrão 'N' ao inserir registro

Referências SQL diretas ao campo​

Procedure/ViewArquivoLinhaContexto
REABRE_OSScripts/REABRE_OS.sql89Lê o parâmetro antes de validar placa e box na reabertura

Candidatas por uso da tabela​

Sem referência direta ao campo ST_VALIDABOXPLACAVEICULO encontrada em Scripts/. As procedures abaixo acessam PARMOFICINA para outros campos e não utilizam este parâmetro:

PARCELA_FINANC_MNF017, PARCELA_FINANCIAMENTO, RETORNA_MOTIVOBLOQUEIO, RETORNA_PRECOITEM, VERIFICA_BLOQUEIO, VIEW_DOCUMENTOSBLOQUEADOS, VIEW_ROF004, VIEW_ROF004B, VIEW_ROF004B_V2, VIEW_ROF008.