Pular para o conteúdo principal

ST_EXIGEMOTIVOLIBERACAO — Exigir Motivo de Liberação da OS

Tela de configuração: OFI001 — Parâmetros de Oficina Localização: Aba Ordem 1 → Checkbox "Exigir motivo Liberação OS" Tabela / Campo: PARMOFICINA.ST_EXIGEMOTIVOLIBERACAO — CHAR(1), NOT NULL, DEFAULT 'N' Valor padrão: N (Não exige)


Telas impactadas​

TelaDescriçãoEfeito
MOF001Manutenção de Ordem de ServiçoAo clicar em Liberar uma OS bloqueada, valida se o motivo foi preenchido; torna o rótulo "Motivo de Liberação" em negrito
MOF007Ordem de Serviço (modelo 1)Torna o campo memoDS_LIBERACAO editável quando status = 'A'; valida no BeforePost
MOF008Ordem de Serviço (modelo 2)Mesmo comportamento do MOF007 — habilita memo e valida no BeforePost
VIEW_DOCUMENTOSBLOQUEADOSConsulta de documentos bloqueadosQuando documento é ORDEMSERVICO, lê po.ST_EXIGEMOTIVOLIBERACAO para determinar se o motivo é exigido na análise de liberação

Campos envolvidos​

CampoTabelaFunção
ST_EXIGEMOTIVOLIBERACAOPARMOFICINAParâmetro (este) — controla a obrigatoriedade
DS_LIBERACAOORDEMSERVICOCampo de texto onde o usuário digita o motivo da liberação
ST_OSTELAORDEMSERVICOStatus da OS na tela — quando 'A' (Aberta/Em Andamento), o memo é habilitado
ST_ORDEMSERVICOORDEMSERVICOStatus da OS — quando 'B' (Bloqueada), a ação de liberação é permitida

Opções disponíveis​

O que fazDetalhe
S — Exige motivo de liberaçãoO campo "Motivo de Liberação" (DS_LIBERACAO) torna-se obrigatório para liberar OS bloqueadas ou para salvar OS com status 'A'. O rótulo fica em negrito como indicador visual.
N — Não exige (padrão)O campo permanece somente leitura (fundo cinza) e não há validação de preenchimento.

S — Exigir Motivo de Liberação​

O que fazDetalhe
Editável / BloqueadoEditável pelo usuário na tela OFI001
ExigePreenchimento de DS_LIBERACAO ao liberar OS bloqueada ou salvar OS com status 'A'
RestriçãoSe DS_LIBERACAO estiver vazio, o sistema exibe erro e impede a operação

Simulação passo a passo​

Cenário 1 — Liberação direta pela MOF001 (OS bloqueada)

  1. Acesse OFI001 (Parâmetros de Oficina), aba Ordem 1.
  2. Marque o checkbox "Exigir motivo Liberação OS" e salve.
  3. Abra a tela MOF001 (Manutenção de Ordem de Serviço).
  4. Localize uma OS com status Bloqueada (ST_ORDEMSERVICO = 'B').
  5. Clique no botão Liberar sem preencher o campo "Motivo de Liberação".
  6. O sistema exibirá a mensagem: "É Obrigatório Informar o Motivo de Liberação da Ordem de Serviço!".
  7. Preencha o motivo (ex.: "Aprovado pelo gerente — chamado 12345").
  8. Clique novamente em Liberar.

Resultado esperado: A OS é liberada com sucesso. O campo DS_LIBERACAO é gravado com o texto informado e o autorizador (CD_AUTORIZADOR) é registrado automaticamente.


Cenário 2 — Edição de status na MOF007 / MOF008

  1. Com o parâmetro marcado como S, abra uma OS na tela MOF007 ou MOF008.
  2. Altere o campo de status da OS (ST_OSTELA) para 'A' (Aberta/Em Andamento).
  3. Observe que o campo "Motivo de Liberação" (memo) fica editável (fundo branco, texto preto) e o rótulo fica em negrito.
  4. Tente salvar (<Ctrl+S> ou botão Salvar) sem digitar nada no memo.
  5. O sistema exibirá a mensagem: "É Obrigatório Informar o Motivo de Liberação da Ordem de Serviço!".
  6. Digite o motivo (ex.: "Liberação parcial — aguardando peça").
  7. Salve novamente.

Resultado esperado: O registro é salvo com o motivo preenchido. O campo CD_AUTORIZADOR é preenchido automaticamente com o código do usuário logado.


N — Não Exigir (Padrão)​

O que fazDetalhe
Editável / BloqueadoEditável pelo usuário na tela OFI001
ExigeNenhuma validação sobre DS_LIBERACAO
RestriçãoO campo memo fica somente leitura (fundo cinza) nas telas MOF007/MOF008

Simulação passo a passo​

  1. Acesse OFI001 (Parâmetros de Oficina), aba Ordem 1.
  2. Certifique-se de que o checkbox "Exigir motivo Liberação OS" esteja desmarcado.
  3. Abra uma OS bloqueada na MOF001 e clique em Liberar sem preencher motivo.

Resultado esperado: A OS é liberada normalmente, sem exigir o motivo. O campo memo permanece somente leitura nas telas MOF007/MOF008.


Regra Geral de Liberação​

  • O parâmetro controla apenas a obrigatoriedade do campo DS_LIBERACAO; não interfere no fluxo de aprovação por autorizador.
  • Para que a liberação funcione, o usuário precisa ter perfil de Autorizador (iST_AUTORIZADOR = 'S'), configurado em ADM012 — Parâmetros do Usuário ou TFA008 — Autorizador.
  • A OS deve estar com status Bloqueada (ST_ORDEMSERVICO = 'B') para que a ação "Liberar" esteja disponível na MOF001.
  • Nas telas MOF007/MOF008, o memo só é habilitado quando ST_OSTELA = 'A'; para outros status, o campo permanece bloqueado independentemente deste parâmetro.
  • A VIEW_DOCUMENTOSBLOQUEADOS utiliza este parâmetro para determinar, no contexto de documentos bloqueados do tipo ORDEMSERVICO, se o motivo é exigido na análise de liberação.

Exceção / Importante: O parâmetro ST_EXIGEMOTIVOLIBERACAO é lido da tabela PARMOFICINA por empresa (CD_EMPRESA). Cada empresa pode ter uma configuração diferente. O valor é carregado em memória via parmOficina.Values[...] e aplicado em tempo de execução nas telas de manutenção de OS.