ST_OBRIGAMECANICO — Obrigar Equipe/Mecânico
Tela de configuração: OFI001 — Parâmetros de Oficina Localização na UI: Aba Ordem 2 → Checkbox "Obriga informar Equipe/Mecânico (MOF001/WebOS)" Tabela / Campo:
PARMOFICINA.ST_OBRIGAMECANICOTipo:CHAR(1)— Checkbox (valoresS/N) Valor padrão:N(Não)
Telas impactadas
| Tela | Função | Impacto |
|---|---|---|
| MOF001 — Ordem de Serviço | Abertura / edição de OS | Ao salvar o item de peça ou serviço, exige preenchimento de Equipe (CD_EQUIPEOFICINA) e Mecânico (CD_MECANICO); lança exceção se ambos estiverem vazios e o item não for de terceiro. |
| WebOS | Abertura de OS via portal web | Rótulo do parâmetro indica impacto equivalente ao MOF001. |
Campos envolvidos
| Campo (grid MOF001) | Descrição | Obrigatório quando |
|---|---|---|
CD_EQUIPEOFICINA | Equipe mecânica | ST_OBRIGAMECANICO = 'S' e item não é terceiro |
CD_MECANICO | Mecânico responsável | ST_OBRIGAMECANICO = 'S' e item não é terceiro |
ST_TERCEIRO | Flag de serviço de terceiros | Quando 'S', isenta da obrigatoriedade |
Opções disponíveis
S — Obrigatório
| O que faz | Detalhe |
|---|---|
| Exige Equipe e Mecânico | Campos CD_EQUIPEOFICINA e CD_MECANICO devem estar preenchidos ao salvar cada item/serviço da OS. |
| Exceção para terceiros | Itens com ST_TERCEIRO = 'S' são dispensados da validação. |
| Condicionado a módulo | A validação só é aplicada quando ST_MODULOVARIOSVENDEDORES está desmarcado ('N'). |
Simulação passo a passo
- Acesse OFI001 → aba Ordem 2.
- Marque o checkbox "Obriga informar Equipe/Mecânico (MOF001/WebOS)".
- Salve os parâmetros.
- Abra MOF001 e crie ou edite uma Ordem de Serviço.
- No grid de Itens (Peças), adicione um item de peça deixando Equipe e Mecânico vazios.
- Tente confirmar a linha (saia da célula ou pressione um atalho de gravação).
- Observe que o sistema exibe a mensagem: "A Equipe Mecânica deve ser informada. Verifique!" e impede a gravação.
- Preencha a Equipe mas deixe o Mecânico vazio e tente confirmar novamente.
- Observe a mensagem: "O Mecânico deve ser informado. Verifique!"
- Preencha ambos os campos e confirme — o item é salvo normalmente.
- Repita o teste no grid de Serviços — as mesmas validações ocorrem.
- Adicione um item com Terceiro marcado (
ST_TERCEIRO = 'S') — a validação de equipe/mecânico é ignorada.
Resultado esperado: Ao tentar salvar um item ou serviço de equipe própria sem informar Equipe e/ou Mecânico, o sistema impede a gravação e exibe mensagem de advertência. Itens de terceiros são dispensados.
Exceção / Importante: Quando
ST_MODULOVARIOSVENDEDORES(configurado em OFI001 — Parâmetros de Oficina, aba Ordem 2) estiver habilitado ('S'), os campos de equipe/mecânico ficam ocultos na tela e a validação deST_OBRIGAMECANICOé ignorada, mesmo que esteja marcado como'S'.
N — Não Obrigatório (padrão)
| O que faz | Detalhe |
|---|---|
| Não exige Equipe nem Mecânico | Os campos ficam disponíveis para preenchimento, mas não são obrigatórios ao salvar o item/serviço. |
Simulação passo a passo
- Acesse OFI001 → aba Ordem 2.
- Certifique-se de que o checkbox "Obriga informar Equipe/Mecânico (MOF001/WebOS)" esteja desmarcado.
- Salve os parâmetros.
- Abra MOF001 e crie ou edite uma Ordem de Serviço.
- Adicione um item de peça sem preencher Equipe ou Mecânico.
- Confirme a linha.
- Observe que o item é gravado normalmente, sem mensagens de advertência.
Resultado esperado: O item/serviço é salvo independentemente de Equipe e Mecânico estarem preenchidos ou não.
Regra de interação com ST_MODULOVARIOSVENDEDORES
A validação de ST_OBRIGAMECANICO possui uma dependência direta com ST_MODULOVARIOSVENDEDORES:
ST_OBRIGAMECANICO | ST_MODULOVARIOSVENDEDORES | Resultado |
|---|---|---|
| S | N | Validação ativa — Equipe e Mecânico são obrigatórios (exceto terceiros). |
| S | S | Validação ignorada — Campos ficam ocultos; não há exigência. |
| N | — | Sem validação, independentemente do outro parâmetro. |
ST_MODULOVARIOSVENDEDORES é configurado em OFI001 — Parâmetros de Oficina.
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Comportamento |
|---|---|---|---|
TdmMOF001.tabORDEMSERVITEMBeforePost | source/MOF001/UdmMOF001.pas | 2224 | Valida CD_EQUIPEOFICINA e CD_MECANICO no grid de peças/itens antes de gravar a linha. |
TdmMOF001.tabSERVICOITEMBeforePost | source/MOF001/UdmMOF001.pas | 3144 | Valida CD_EQUIPEOFICINA e CD_MECANICO no grid de serviços antes de gravar a linha. |
TdmOFI001.tabPARMOFICINAAfterInsert | source/OFI001/UdmOFI001.pas | 389 | Atribui valor padrão 'N' ao criar novo registro de PARMOFICINA. |
Referências SQL diretas ao campo em Scripts/
Nenhuma referência direta ao campo ST_OBRIGAMECANICO foi encontrada em procedures/views SQL. O campo é lido exclusivamente pelo lado Delphi via ParmOficina.Values['ST_OBRIGAMECANICO'].
Candidatas por uso da tabela (PARMOFICINA)
As procedures/views abaixo fazem JOIN ou leitura da tabela PARMOFICINA, mas não citam o campo ST_OBRIGAMECANICO diretamente. Não há impacto funcional documentado para este campo:
PARCELA_FINANC_MNF017·PARCELA_FINANCIAMENTO·REABRE_OS·RETORNA_MOTIVOBLOQUEIO·RETORNA_PRECOITEM·VERIFICA_BLOQUEIO·VIEW_DOCUMENTOSBLOQUEADOS·VIEW_ROF004·VIEW_ROF004B·VIEW_ROF004B_V2·VIEW_ROF008