ST_PEDIDOBLOCO - Obriga Número Pedido Bloco
Tela de configuração: REC001 — Parâmetros de Recapagem Localização: Aba "Exterior" Tabela:
PARAMRECAP.ST_PEDIDOBLOCOTipo:CHAR(1)· Valor padrão:N
Controla se o campo Número Pedido Bloco (NRBLOCO) é exibido e obrigatório nos pedidos de recapagem. Quando habilitado, permite rastrear pedidos por um número de bloco de cliente, facilitando a identificação e agrupamento de serviços.
Telas impactadas
| Tela | Módulo | Impacto |
|---|---|---|
| MRC001 | Recapagem — Pedidos | Exibe/oculta campo NRBLOCO, define obrigatoridade; exibe campo CD_CLIENTERECAP quando valor = C |
| MRC003 | Recapagem — Consulta de Pedidos | Exibe/oculta filtro de número bloco |
| MRC019 | Recapagem — Consulta Geral | Exibe/oculta coluna BLOCO no grid |
| CRC005 | Coleta Recapagem — Filtro | Exibe/oculta campo de filtro por número bloco |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
NRBLOCO | PEDIDOPNEU | Número do bloco do pedido (obrigatório quando ST_PEDIDOBLOCO <> N) |
CD_CLIENTERECAP | PEDIDOPNEU | Código do cliente de recapagem (concatenado ao bloco quando valor = C) |
Opções disponíveis
N — Não (Desabilitado)
| O que faz | Detalhe |
|---|---|
Campo NRBLOCO | Oculto e não obrigatório |
Campo CD_CLIENTERECAP | Oculto |
| Filtros de bloco | Ocultos nas telas de consulta (MRC003, MRC019, CRC005) |
Simulação passo a passo
- Acesse REC001 (Parâmetros de Recapagem).
- Na aba Exterior, localize o campo Obriga Número Pedido Bloco.
- Selecione a opção Não.
- Salve as alterações.
- Acesse MRC001 e inclua um novo pedido de recapagem.
- Observe que o campo Número Pedido Bloco não aparece no formulário.
- Salve o pedido sem informar número de bloco.
Resultado esperado: O campo NRBLOCO fica oculto em todas as telas de recapagem. O pedido é salvo normalmente sem exigir número de bloco.
S — Sim (Obrigatório)
| O que faz | Detalhe |
|---|---|
Campo NRBLOCO | Visível e obrigatório |
Campo CD_CLIENTERECAP | Oculto |
| Filtros de bloco | Visíveis nas telas de consulta |
| Gravação automática | Ao salvar o pedido, o sistema atualiza NRBLOCO na tabela PEDIDOPNEU com o valor digitado |
Simulação passo a passo
- Acesse REC001 (Parâmetros de Recapagem).
- Na aba Exterior, localize o campo Obriga Número Pedido Bloco.
- Selecione a opção Sim.
- Salve as alterações.
- Acesse MRC001 e inclua um novo pedido de recapagem.
- Observe que o campo Número Pedido Bloco aparece no formulário.
- Preencha o número do bloco (ex:
BLOCO-001). - Salve o pedido.
Resultado esperado: O campo NRBLOCO é exibido e obrigatório. Ao salvar, o valor é gravado diretamente no campo NRBLOCO da tabela PEDIDOPNEU. Se tentar salvar sem preencher, o sistema exibe mensagem de campo obrigatório.
Exceção / Importante: Nas telas de consulta (MRC003, MRC019) e filtro (CRC005), o filtro por número bloco também fica visível, permitindo pesquisar pedidos por esse critério.
C — Sim — Concatena Código Cliente
| O que faz | Detalhe |
|---|---|
Campo NRBLOCO | Visível e obrigatório |
Campo CD_CLIENTERECAP | Visível e preenchido automaticamente ao selecionar o cliente |
| Filtros de bloco | Visíveis nas telas de consulta |
| Gravação automática | Concatena CD_CLIENTERECAP + - + NRBLOCO antes de gravar |
Simulação passo a passo
- Acesse REC001 (Parâmetros de Recapagem).
- Na aba Exterior, localize o campo Obriga Número Pedido Bloco.
- Selecione a opção Sim — Concatena Código Cliente.
- Salve as alterações.
- Acesse MRC001 e inclua um novo pedido de recapagem.
- Observe que os campos Código Cliente Recap e Número Pedido Bloco aparecem no formulário.
- Selecione o cliente (ex: cliente com código
CLI001). - O campo Código Cliente Recap é preenchido automaticamente.
- Preencha o número do bloco (ex:
BLOCO-001). - Salve o pedido.
Resultado esperado: O campo NRBLOCO é gravado no banco com a concatenação do código do cliente e o número do bloco — ex: CLI001-BLOCO-001. Se o cliente não possuir código de recapagem (CD_CLIENTERECAP vazio), grava apenas o número do bloco.
Exceção / Importante: A concatenação ocorre apenas se o campo
CD_CLIENTERECAPdo cliente estiver preenchido. Caso contrário, grava apenas o valor do campoNRBLOCO.
Regra Geral de Gravação
Quando ST_PEDIDOBLOCO <> N, ao salvar o pedido de recapagem (evento AfterPost do dataset qryPedidoPneu), o sistema executa um UPDATE direto na tabela PEDIDOPNEU para atualizar o campo NRBLOCO:
- Opção S: grava o valor digitado no campo
NRBLOCO. - Opção C com
CD_CLIENTERECAPpreenchido: gravaCD_CLIENTERECAP+-+NRBLOCO. - Opção C com
CD_CLIENTERECAPvazio: grava apenas o valor deNRBLOCO.
Tabela Comparativa Resumida
| Opção | NRBLOCO Visível | NRBLOCO Obrigatório | CD_CLIENTERECAP Visível | Concatena Cliente | Filtros de Bloco |
|---|---|---|---|---|---|
| N — Não | Não | Não | Não | Não | Não |
| S — Sim | Sim | Sim | Não | Não | Sim |
| C — Concatena | Sim | Sim | Sim | Sim | Sim |
Procedures impactadas
Rotinas Delphi
| Rotina | Arquivo | Descrição |
|---|---|---|
TfrmFILTRO_CRC005.FormShow | source/CRC005/UFILTRO.pas:359 | Exibe/oculta filtro de número bloco na tela de filtro de coleta |
TdmMRC001.qryPedidoPneuIDPESSOAValidate | source/MRC001/UdmMRC001.pas:391 | Preenche automaticamente CD_CLIENTERECAP ao selecionar o cliente (quando valor = C) |
TdmMRC001.qryPedidoPneuAfterPost | source/MRC001/UdmMRC001.pas:2772 | Grava o NRBLOCO no banco após salvar o pedido, com concatenação do código do cliente quando aplicável |
TframeConsulta.carregaForm | source/MRC001/UframeConsulta.pas:248 | Exibe/oculta filtro de número bloco na consulta de pedidos |
TframeMRC001.FrameEnter | source/MRC001/UframeMRC001.pas:1480 | Configura visibilidade e obrigatoridade dos campos NRBLOCO e CD_CLIENTERECAP ao entrar no frame |
iniciar | source/MRC003/UformMRC003.pas:112 | Exibe/oculta filtro de número bloco na consulta MRC003 |
iniciar | source/MRC019/UMRC019.pas:266 | Exibe/oculta coluna BLOCO no grid da consulta geral MRC019 |
TdmREC001.qryCadastroAfterInsert | source/REC001/UdmREC001.pas:972 | Define valor padrão N para o campo ao inserir novo registro na tela de parâmetros |
Referências SQL diretas ao campo
Nenhuma referência direta ao campo ST_PEDIDOBLOCO foi encontrada em procedures/views SQL. O campo é consultado apenas via código Delphi através de parmRecap.Values['ST_PEDIDOBLOCO'].
Candidatas por uso da tabela PARAMRECAP
As seguintes procedures/views utilizam a tabela PARAMRECAP, mas não fazem referência direta ao campo ST_PEDIDOBLOCO. Não há impacto funcional direto identificado para este parâmetro nessas rotinas:
| Procedure/View | Arquivo |
|---|---|
ATUALIZA_PEDIDONOTA | Scripts/ATUALIZA_PEDIDONOTA.sql |
ATUALIZA_PREVISAOORDEMPROD | Scripts/ATUALIZA_PREVISAOORDEMPROD.sql |
ATUALIZA_STFATURAAUTO | Scripts/ATUALIZA_STFATURAAUTO.sql |
ATUALIZA_TIPOPESSOARECAP | Scripts/ATUALIZA_TIPOPESSOARECAP.sql |
CANCELA_ESTOQUERECAP | Scripts/CANCELA_ESTOQUERECAP.sql |
CANCELA_NOTAFISCAL | Scripts/CANCELA_NOTAFISCAL.sql |
GERA_ORDEMPRODUCAORECAP | Scripts/GERA_ORDEMPRODUCAORECAP.sql |
FECHA_ORDEMPRODUCAORECAP | Scripts/FECHA_ORDEMPRODUCAORECAP.sql |
GERA_PEDIDOENTRADACARCACA | Scripts/GERA_PEDIDOENTRADACARCACA.sql |
GERA_PEDIDOSAIDACARCACA | Scripts/GERA_PEDIDOSAIDACARCACA.sql |