ST_BLOQUEIAPEDIDOOSLIB - Bloqueia Pedido com OS Liberada
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 2 Tabela:
PARMFATUR.ST_BLOQUEIAPEDIDOOSLIBValor padrão:S(Marcado — bloqueio ativado)
Telas impactadas
| Tela | Arquivo | Impacto |
|---|---|---|
| MOF001 — Ordem de Serviço | UMOF001.pas | Ao gerar pedido a partir da OS, verifica se o pedido deve ser bloqueado |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
DS_BLOQUEIO | ORDEMSERVICO | Motivo do bloqueio da Ordem de Serviço |
ST_PEDIDO | PEDIDO | Status do pedido (B = Bloqueado) |
DS_BLOQUEIO | PEDIDO | Motivo do bloqueio do pedido |
Opções disponíveis
S — Bloqueia Pedido quando OS possui bloqueio (Padrão)
| O que faz | Detalhe |
|---|---|
Quando marcado (S), o pedido gerado a partir de uma OS não recebe bloqueio extra | Mesmo que a OS tenha DS_BLOQUEIO preenchido, o pedido é gerado normalmente |
Simulação passo a passo
- Acesse MFA001 → Parâmetros → Opção 2 e certifique-se de que o checkbox "Bloqueia Pedido com OS Liberada [MOF001]" esteja marcado.
- No MOF001, abra uma Ordem de Serviço que possua o campo DS_BLOQUEIO preenchido (OS com restrição).
- Clique no botão Gerar Pedido.
- O sistema gera o pedido com status normal — não aplica bloqueio ao pedido.
Resultado esperado: Pedido gerado sem bloqueio, independentemente de a OS ter restrição registrada em DS_BLOQUEIO.
Exceção / Importante: Mesmo com
S, o sistema ainda pode bloquear o pedido por outras regras da funçãoVERIFICA_BLOQUEIO(ex: limite de crédito, inadimplência). Este parâmetro controla apenas se o bloqueio da OS é repassado ao pedido.
N — Não repassa bloqueio da OS para o pedido
| O que faz | Detalhe |
|---|---|
Quando desmarcado (N), se a OS tiver DS_BLOQUEIO preenchido, o pedido gerado é bloqueado | O bloqueio da OS é propagado para o pedido |
Simulação passo a passo
- Acesse MFA001 → Parâmetros → Opção 2 e desmarque o checkbox "Bloqueia Pedido com OS Liberada [MOF001]".
- No MOF001, abra uma Ordem de Serviço que possua o campo DS_BLOQUEIO preenchido (ex: "Aguardando peça").
- Clique no botão Gerar Pedido.
- O sistema detecta que a OS tem bloqueio e que o parâmetro permite repassar o bloqueio.
- O pedido é gerado com
ST_PEDIDO = 'B'(Bloqueado) e o motivo do bloqueio é gravado emDS_BLOQUEIOdo pedido.
Resultado esperado: Pedido gerado com status Bloqueado (ST_PEDIDO = 'B'), impedindo a faturamento até que o bloqueio seja removido.
Exceção / Importante: Se a OS não tiver
DS_BLOQUEIOpreenchido (vazio/nulo), o pedido é gerado normalmente mesmo com o parâmetro emN. O bloqueio só ocorre quando ambas as condições são verdadeiras: OS com bloqueio e parâmetro desmarcado.
Regra Geral
A lógica interna funciona da seguinte forma:
| Condição | ST_BLOQUEIAPEDIDOOSLIB | DS_BLOQUEIO da OS | Resultado para o Pedido |
|---|---|---|---|
| Bloqueio ativado | S (marcado) | Preenchido | Pedido liberado |
| Bloqueio ativado | S (marcado) | Vazio | Pedido liberado |
| Bloqueio desativado | N (desmarcado) | Preenchido | Pedido bloqueado |
| Bloqueio desativado | N (desmarcado) | Vazio | Pedido liberado |
O parâmetro atua como uma chave de passagem: quando N, o bloqueio da OS "passa" para o pedido; quando S, o bloqueio da OS é ignorado na geração do pedido.
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Descrição |
|---|---|---|---|
TdmMFA001.tabPARMFATURAfterInsert | UdmMFA001.pas | 590 | Define valor padrão S ao criar novo registro de parâmetros |
TfrmMOF001.btnPedidoClick | UMOF001.pas | 4757 | Verifica o parâmetro ao gerar pedido a partir da OS — se N e OS com bloqueio, repassa bloqueio ao pedido |
Referências SQL diretas ao campo
Nenhuma procedure SQL em Scripts/ referencia diretamente o campo ST_BLOQUEIAPEDIDOOSLIB. O uso está restrito à camada Delphi (rotina btnPedidoClick do MOF001).
Candidatas por uso da tabela
As procedures abaixo utilizam a tabela PARMFATUR, mas não referenciam o campo ST_BLOQUEIAPEDIDOOSLIB diretamente:
CONFIRMA_ORDEMSERVICO, CONFIRMA_ORDEMSERVICOMETAL, CALCULA_COMISSAO, CANCELA_NOTAFISCAL, CANCELA_MESTRA, entre outras listadas na análise de impacto.
Tabela Comparativa Resumida
| Valor | Checkbox | Comportamento |
|---|---|---|
S | Marcado | Ignora bloqueio da OS ao gerar pedido (pedido liberado) |
N | Desmarcado | Repassa bloqueio da OS ao pedido (pedido bloqueado se OS tiver DS_BLOQUEIO) |