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_VALIDAPLACAJUNCAOTipo:CHAR(1)—NOT NULLValor 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
| Tela | Arquivo | Impacto |
|---|---|---|
| OFI001 | source/OFI001/UOFI001.pas | Configuração do parâmetro (checkbox na aba Ordem 1) |
| MOF001 — Ordem de Serviço | source/MOF001/UMOF001.pas | Validação no botão Salvar (btnSalvarClick) |
| MOF001 — Ordem de Serviço | source/MOF001/UdmMOF001.pas | Validação no validate do campo placa (NR_PLACAValidate) |
Campos envolvidos
| Campo | Tabela | Papel |
|---|---|---|
NR_PLACA | ORDEMSERVICO | Placa informada na OS sendo salva |
NR_JUNCAO | JUNCAOVEICULO | Número da junção de veículos |
NR_POSICAO | JUNCAOVEICULO | Posição na junção (1 = principal, <> 1 = semi-reboque) |
ST_ORDEMSERVICO | ORDEMSERVICO | Status da OS (A = Aberta, B = Baixada) |
Opções disponíveis
S — Ativada (Validar Junção de Placa)
| O que faz | Detalhe |
|---|---|
| Bloqueia gravação | Se a placa da OS está como semi-reboque em uma junção com OS pendente, a gravação é impedida com mensagem de erro |
| Quando valida | Ao salvar a OS (btnSalvarClick) e ao validar o campo placa (NR_PLACAValidate) |
| Editável | Checkbox na tela OFI001, aba Ordem 1 |
Simulação passo a passo
- Acesse OFI001 → aba Ordem 1.
- Marque o checkbox Validar Placa do Véculo [Junção].
- Salve os parâmetros.
- Crie uma junção de veículos: veículo principal com placa
ABC-1234e semi-reboque com placaXYZ-5678. - Abra uma OS para o veículo principal (
ABC-1234) e deixe-a em status Aberta. - 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 deUMOF001.pas) e no eventoNR_PLACAValidatedo dataset (linha 4666 deUdmMOF001.pas). A checagem no validate é executada independentemente do flagiST_NOVO, ou seja, vale tanto para OS nova quanto para edição de OS existente. O parâmetroST_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 faz | Detalhe |
|---|---|
| Sem bloqueio | Nenhuma verificação de junção é feita sobre a placa ao salvar a OS |
| Editável | Checkbox na tela OFI001, aba Ordem 1 |
Simulação passo a passo
- Acesse OFI001 → aba Ordem 1.
- Desmarque o checkbox Validar Placa do Véculo [Junção] (ou mantenha o padrão
N). - Salve os parâmetros.
- Crie uma junção de veículos: veículo principal com placa
ABC-1234e semi-reboque com placaXYZ-5678. - Abra uma OS para o veículo principal (
ABC-1234) e deixe-a em status Aberta. - 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
| Aspecto | Detalhe |
|---|---|
| Escopo | Por empresa (CD_EMPRESA é chave primária de PARMOFICINA) |
| Status verificados | A (Aberta) e B (Baixada/pendente) |
| Tabelas consultadas | JUNCAOVEICULO (junção), ORDEMSERVICO (OS existentes) |
| Parâmetro relacionado | ST_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
| Rotina | Arquivo | Linha | Contexto |
|---|---|---|---|
TfrmMOF001.btnSalvarClick | UMOF001.pas | 2499 | Validação antes de gravar OS |
TdmMOF001.tabORDEMSERVICONR_PLACAValidate | UdmMOF001.pas | 4666 | Validação ao alterar o campo placa |
TfrmOFI001.chkST_VALIDAPLACAJUNCAOMouseMove | UOFI001.pas | 826 | Hint/dica ao posicionar mouse no checkbox |
TdmOFI001.tabPARMOFICINAAfterInsert | UdmOFI001.pas | 374 | Valor 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.