Pular para o conteúdo principal

ST_VALIDAPLACAJUNCAO — Validar Placa do Veículo [Junção]

Tela de configuração: OFI001 — Parâmetros da Oficina Localização: Aba Ordem 1 Componente: chkST_VALIDAPLACAJUNCAO (checkbox) Tabela / Campo: PARMOFICINA.ST_VALIDAPLACAJUNCAO Tipo: CHAR(1) — NOT NULL Valor padrão: N


Comportamento geral​

Quando habilitado (S), o sistema bloqueia a gravação de uma Ordem de Serviço se a placa informada já estiver vinculada a uma OS aberta como semi-reboque em uma junção de veículos.

A validação consulta a tabela JUNCAOVEICULO para verificar se a placa aparece como veículo secundário (posição ≠ 1) em alguma junção cujo veículo principal (posição = 1) possui OS com status A (Aberta) ou B (Baixada/pendente).

Quando desabilitado (N), nenhuma checagem de junção é realizada sobre a placa.


Telas impactadas​

TelaArquivoImpacto
OFI001source/OFI001/UOFI001.pasConfiguração do parâmetro (checkbox na aba Ordem 1)
MOF001 — Ordem de Serviçosource/MOF001/UMOF001.pasValidação no botão Salvar (btnSalvarClick)
MOF001 — Ordem de Serviçosource/MOF001/UdmMOF001.pasValidação no validate do campo placa (NR_PLACAValidate)

Campos envolvidos​

CampoTabelaPapel
NR_PLACAORDEMSERVICOPlaca informada na OS sendo salva
NR_JUNCAOJUNCAOVEICULONúmero da junção de veículos
NR_POSICAOJUNCAOVEICULOPosição na junção (1 = principal, <> 1 = semi-reboque)
ST_ORDEMSERVICOORDEMSERVICOStatus da OS (A = Aberta, B = Baixada)

Opções disponíveis​

S — Ativada (Validar Junção de Placa)​

O que fazDetalhe
Bloqueia gravaçãoSe a placa da OS está como semi-reboque em uma junção com OS pendente, a gravação é impedida com mensagem de erro
Quando validaAo salvar a OS (btnSalvarClick) e ao validar o campo placa (NR_PLACAValidate)
EditávelCheckbox na tela OFI001, aba Ordem 1

Simulação passo a passo​

  1. Acesse OFI001 → aba Ordem 1.
  2. Marque o checkbox Validar Placa do Véculo [Junção].
  3. Salve os parâmetros.
  4. Crie uma junção de veículos: veículo principal com placa ABC-1234 e semi-reboque com placa XYZ-5678.
  5. Abra uma OS para o veículo principal (ABC-1234) e deixe-a em status Aberta.
  6. Tente abrir uma nova OS informando a placa XYZ-5678 (semi-reboque) e clique em Salvar.

Resultado esperado: O sistema exibe a mensagem:

"Existe uma Ordem de Serviço Pendente com Esse Nr. de Placa Como Semi-Reboque. Verifique!"

Seguida de: Empresa: (código) / Nr. Ordem de Serviço: (número)

A gravação é bloqueada.

Exceção / Importante: A validação ocorre em dois pontos do código: no evento btnSalvarClick (linha 2499 de UMOF001.pas) e no evento NR_PLACAValidate do dataset (linha 4666 de UdmMOF001.pas). A checagem no validate é executada independentemente do flag iST_NOVO, ou seja, vale tanto para OS nova quanto para edição de OS existente. O parâmetro ST_VALIDAVEICULOSJUNCAO (configurado em OFI001 — Parâmetros da Oficina, aba Ordem 1) controla validação semelhante mas para o veículo principal da junção — são complementares.


N — Desativada (Não Validar)​

O que fazDetalhe
Sem bloqueioNenhuma verificação de junção é feita sobre a placa ao salvar a OS
EditávelCheckbox na tela OFI001, aba Ordem 1

Simulação passo a passo​

  1. Acesse OFI001 → aba Ordem 1.
  2. Desmarque o checkbox Validar Placa do Véculo [Junção] (ou mantenha o padrão N).
  3. Salve os parâmetros.
  4. Crie uma junção de veículos: veículo principal com placa ABC-1234 e semi-reboque com placa XYZ-5678.
  5. Abra uma OS para o veículo principal (ABC-1234) e deixe-a em status Aberta.
  6. Tente abrir uma nova OS informando a placa XYZ-5678 (semi-reboque) e clique em Salvar.

Resultado esperado: A OS é gravada normalmente, sem nenhum alerta ou bloqueio relacionado à junção de veículos.


Regra Geral​

AspectoDetalhe
EscopoPor empresa (CD_EMPRESA é chave primária de PARMOFICINA)
Status verificadosA (Aberta) e B (Baixada/pendente)
Tabelas consultadasJUNCAOVEICULO (junção), ORDEMSERVICO (OS existentes)
Parâmetro relacionadoST_VALIDAVEICULOSJUNCAO (configurado em OFI001 — Parâmetros da Oficina, aba Ordem 1) — valida a placa do veículo principal da junção

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaContexto
TfrmMOF001.btnSalvarClickUMOF001.pas2499Validação antes de gravar OS
TdmMOF001.tabORDEMSERVICONR_PLACAValidateUdmMOF001.pas4666Validação ao alterar o campo placa
TfrmOFI001.chkST_VALIDAPLACAJUNCAOMouseMoveUOFI001.pas826Hint/dica ao posicionar mouse no checkbox
TdmOFI001.tabPARMOFICINAAfterInsertUdmOFI001.pas374Valor padrão N ao inserir novo registro

Referências SQL em Scripts/​

Não foram encontradas referências diretas ao campo ST_VALIDAPLACAJUNCAO em procedures/views do diretório Scripts/. As candidatas por uso da tabela PARMOFICINA (ex: RETORNA_PRECOITEM, VERIFICA_BLOQUEIO, VIEW_ROF004, etc.) não citam este campo.