DS_OBRIGATORIEDADE - Descrição de Obrigatoriedade
sidebar_label: DS_OBRIGATORIEDADE title: DS_OBRIGATORIEDADE - Parâmetro de Descrição de Obrigatoriedade parametro: DS_OBRIGATORIEDADE tabela: PARMOFICINA displayed_sidebar: tecnicaSidebar
Tela de configuração: OFI001 — Parâmetros da Oficina
Tabela:PARMOFICINA.DS_OBRIGATORIEDADE
Tipo:VARCHAR(30)
Valor padrão: — (campo livre, sem padrão predefinido)
Visão geral
DS_OBRIGATORIEDADE é um campo de texto livre (até 30 caracteres) na tabela PARMOFICINA usado para armazenar uma descrição textual que indica qual regra ou campo está configurado como obrigatório no módulo de Ordem de Serviço (Oficina).
Diferente dos campos com prefixo ST_ (que são chaves S/N), este campo armazena uma descrição legível — por exemplo, um resumo daquilo que o sistema exige em determinadas operações (como "Preencher placa do veículo", "Informar quilometragem", etc.).
Como é exibido na UI
O campo é mapeado no TStringField tabPARMOFICINADS_OBRIGATORIEDADE do DataModule UdmOFI001. Ele aparece como uma coluna de texto editável na grade de parâmetros da tela OFI001.
Telas impactadas
| Tela | Nome | Tipo de impacto |
|---|---|---|
| OFI001 | Parâmetros da Oficina | Tela de configuração direta — campo é editado aqui |
Campos envolvidos
| Campo | Tabela | Tipo |
|---|---|---|
DS_OBRIGATORIEDADE | PARMOFICINA | VARCHAR(30) |
Opções disponíveis
| O que faz | Detalhe |
|---|---|
| Campo de texto livre | O usuário pode digitar qualquer descrição de até 30 caracteres |
| Não é enum / switch | Diferente de ST_*, não possui valores fixos (S/N, T/F etc.) |
| Editável na OFI001 | Gravado diretamente via INSERT/UPDATE na tabela PARMOFICINA |
| Sem validação rígida no schema | O tamanho máximo é limitado pelo DOM_VARCHAR30 (30 caracteres) |
Simulação passo a passo
- Acesse a tela OFI001 — Parâmetros da Oficina.
- Localize a coluna referente à Descrição de Obrigatoriedade (
DS_OBRIGATORIEDADE) na grade de parâmetros. - Digite o texto desejado (ex.: "Preencher placa do veículo", "Informar km obrigatória").
- Salve o registro.
Resultado esperado: A descrição informada é persistida na coluna PARMOFICINA.DS_OBRIGATORIEDADE e poderá ser consultada por outras rotinas ou relatórios que leiam essa tabela.
Exceção / Importante: Este campo é uma coluna de descrição — não existe nenhum switch na tela OFI001 que "ative" ou "desative" opções dentro dele. O comportamento de obrigatoriedade real é controlado por outros parâmetros
ST_OBRIGA*(ex.:ST_OBRIGAPLACA,ST_OBRIGAKM,ST_OBRIGAVENDEDOR,ST_OBRIGAMECANICO,ST_OBRIGAORIGEMCLIENTE,ST_OBRIGAORCAMENTOOS,ST_OBRIGAMARCATIPOMODELO), todos configurados na mesma tela OFI001.
Exemplo de uso
-- Exemplo: registrar qual campo é obrigatório
INSERT INTO PARMOFICINA (CD_EMPRESA, DS_OBRIGATORIEDADE, ...)
VALUES (1, 'Placa do veículo obrigatória', ...);
| Antes | Depois |
|---|---|
DS_OBRIGATORIEDADE = '' (vazio) | DS_OBRIGATORIEDADE = 'Placa do veículo obrigatória' |
Procedures impactadas
Referências diretas ao campo no código-fonte
Nenhuma referência direta ao campo DS_OBRIGATORIEDADE foi encontrada em Scripts/. O campo é utilizado exclusivamente pela tela OFI001 para leitura e persistência do parâmetro.
Rotinas Delphi que operam o campo
| Arquivo | Linha | Evidência |
|---|---|---|
UdmOFI001.pas | 42 | tabPARMOFICINADS_OBRIGATORIEDADE: TStringField; |
UdmOFI001.dfm | 252–255 | Definição do TStringField (FieldName = 'DS_OBRIGATORIEDADE', Size = 30) |
UdmOFI001.dfm | 67 | SELECT: PO.DS_OBRIGATORIEDADE |
UdmOFI001.dfm | 535 | INSERT: colunas incluem DS_OBRIGATORIEDADE |
UdmOFI001.dfm | 575 | INSERT: parâmetro :DS_OBRIGATORIEDADE |
UdmOFI001.dfm | 622 | UPDATE: DS_OBRIGATORIEDADE = :DS_OBRIGATORIEDADE |
UdmOFI001.dfm | 686 | SELECT alternativo: PO.DS_OBRIGATORIEDADE |
Candidatas por uso da tabela PARMOFICINA (campo não validado)
As stored procedures/views abaixo fazem JOIN com
PARMOFICINA, mas não referenciamDS_OBRIGATORIEDADEexplicitamente. Não há impacto funcional direto comprovado.
| Procedure/View | Arquivo | Impacto provável |
|---|---|---|
PARCELA_FINANC_MNF017 | Scripts/PARCELA_FINANC_MNF017.sql | Sem uso direto do campo |
PARCELA_FINANCIAMENTO | Scripts/PARCELA_FINANCIAMENTO.sql | Sem uso direto do campo |
REABRE_OS | Scripts/REABRE_OS.sql | Sem uso direto do campo |
RETORNA_MOTIVOBLOQUEIO | Scripts/RETORNA_MOTIVOBLOQUEIO.sql | Sem uso direto do campo |
RETORNA_PRECOITEM | Scripts/RETORNA_PRECOITEM.sql | Sem uso direto do campo |
VERIFICA_BLOQUEIO | Scripts/VERIFICA_BLOQUEIO.sql | Sem uso direto do campo |
VIEW_DOCUMENTOSBLOQUEADOS | Scripts/VIEW_DOCUMENTOSBLOQUEADOS.sql | Sem uso direto do campo |
VIEW_ROF004 | Scripts/VIEW_ROF004.sql | Sem uso direto do campo |
VIEW_ROF004_OFXMM | Scripts/VIEW_ROF004_OFXMM.sql | Sem uso direto do campo |
VIEW_ROF004B | Scripts/VIEW_ROF004B.sql | Sem uso direto do campo |
VIEW_ROF004B_V2 | Scripts/VIEW_ROF004B_V2.sql | Sem uso direto do campo |
VIEW_ROF008 | Scripts/VIEW_ROF008.sql | Sem uso direto do campo |
Relação com outros parâmetros
| Parâmetro | Tabela | Função | Tela |
|---|---|---|---|
CD_LAYOUTORCAMENTO | PARMOFICINA | Layout do orçamento | OFI001 |
DS_AUTORIZADOR | PARMOFICINA | Nome do autorizador | OFI001 |
ST_OBRIGAPLACA | PARMOFICINA | Exigir placa do veículo (S/N) | OFI001 |
ST_OBRIGAKM | PARMOFICINA | Exigir quilometragem (S/N) | OFI001 |
ST_OBRIGAVENDEDOR | PARMOFICINA | Exigir vendedor (S/N) | OFI001 |
ST_OBRIGAMECANICO | PARMOFICINA | Exigir mecânico (S/N) | OFI001 |
ST_OBRIGAORIGEMCLIENTE | PARMOFICINA | Exigir origem do cliente (S/N) | OFI001 |
ST_OBRIGAORCAMENTOOS | PARMOFICINA | Exigir orçamento na OS (S/N) | OFI001 |
ST_OBRIGAMARCATIPOMODELO | PARMOFICINA | Exigir marca/tipo/modelo (S/N) | OFI001 |