ST_MOTIVOALTDTENTREGA — Obriga motivo ao alterar data de entrega
Tela de configuração: REC001 — Parâmetros de Recapadora Localização: Parâmetros → Opção 1 Tabela:
PARAMRECAP.ST_MOTIVOALTDTENTREGATipo:CHAR(1)Valor padrão:N(Não)
Resumo
Controla se o sistema obriga o usuário a informar um motivo ao alterar a data de entrega de uma ordem de produção de recapagem. Quando habilitado, qualquer mudança na data de entrega exige que o campo motivo seja preenchido antes de salvar.
Telas impactadas
| Tela | Descrição | Impacto |
|---|---|---|
| CRC002 | Coleta / Entrega | Valida motivo ao salvar pedido com data de entrega alterada |
| MRC003 | Ordem de Produção de Recapagem | Valida motivo ao salvar alteração com data de entrega modificada |
| MRC044 | Altera Data de Entrega | Carrega parâmetro e destaca label do campo motivo quando = S |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
ST_MOTIVOALTDTENTREGA | PARAMRECAP | Parâmetro que ativa/desativa a obrigatoriedade |
CD_MOTIVOALTDTENTREGA | ORDEMPRODUCAORECAP | Código do motivo informado na ordem de produção |
MOTIVOALTDTENTREGA | ORDEMPRODUCAORECAP | Descrição do motivo informado |
DTENTREGA | ORDEMPRODUCAORECAP | Data de entrega da ordem de produção |
ID / DSMOTIVO | MOTIVOPNEU | Cadastro de motivos (tipo TPMOTIVO = 'A' — Alteração de Data de Entrega) |
Opções disponíveis
S — Obrigatório (Marcado)
Obriga o preenchimento do motivo sempre que a data de entrega for alterada.
| O que faz | Detalhe |
|---|---|
| Campo motivo | Torna-se obrigatório quando a data de entrega é modificada |
| Validação | Impede o salvamento se o motivo estiver vazio |
| Label | Exibido em negrito na tela MRC044 |
Simulação passo a passo
- Acesse REC001 → Parâmetros → aba Opção 1.
- Marque o checkbox "Obriga motivo ao alterar data de entrega".
- Salve o parâmetro.
- Abra uma ordem de produção de recapagem em MRC003 ou um pedido em CRC002.
- Altere a data de entrega para uma nova data.
- Tente salvar sem informar o motivo.
- O sistema exibirá a mensagem: "Informe o motivo da alteração da data de entrega. Verifique![REC001][TRC014]".
- Informe o motivo (campo
CD_ALTMOTIVOENTREGA) e salve novamente.
Resultado esperado: O salvamento é bloqueado enquanto o motivo não for informado. Após preencher o motivo, o registro é salvo normalmente e o motivo fica registrado na ordem de produção (ORDEMPRODUCAORECAP.CD_MOTIVOALTDTENTREGA).
Excecao / Importante: O campo motivo utiliza a tabela
MOTIVOPNEUcom filtroTPMOTIVO = 'A'(tipo Alteração de Data de Entrega). Apenas motivos cadastrados com esse tipo são aceitos. O cadastro de motivos é feito na tela TRC0014.
N — Não Obrigatório (Desmarcado — Padrão)
Não exige motivo ao alterar a data de entrega.
| O que faz | Detalhe |
|---|---|
| Campo motivo | Opcional; o usuário pode informar se desejar |
| Validação | Nenhuma validação de obrigatoriedade |
| Label | Exibido em fonte normal (sem negrito) na tela MRC044 |
Simulação passo a passo
- Acesse REC001 → Parâmetros → aba Opção 1.
- Certifique-se de que o checkbox "Obriga motivo ao alterar data de entrega" esteja desmarcado.
- Salve o parâmetro.
- Abra uma ordem de produção de recapagem em MRC003 ou um pedido em CRC002.
- Altere a data de entrega para uma nova data.
- Salve sem informar o motivo.
Resultado esperado: O salvamento é concluído normalmente, sem exigir o preenchimento do motivo.
Regra Geral de Validação
A validação ocorre no momento do salvamento e segue este fluxo:
- O sistema compara a data de entrega original com a nova data de entrega informada.
- Se houver alteração e
ST_MOTIVOALTDTENTREGA = 'S':- Verifica se o campo
CD_MOTIVOALTDTENTREGAestá preenchido. - Se vazio, exibe erro e impede o salvamento.
- Se preenchido, valida se o motivo existe na tabela
MOTIVOPNEUcomTPMOTIVO = 'A'.
- Verifica se o campo
- Se
ST_MOTIVOALTDTENTREGA = 'N': nenhuma validação adicional é aplicada.
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Comportamento |
|---|---|---|---|
TfrmCRC002.btnSalvarProdClick | UCRC002.pas | 1427 | Consulta parâmetro; se = 'S' e motivo vazio, bloqueia salvamento |
TframeMRC003.btnSALVARALTClick | UframeMRC003.pas | 4992 | Consulta parâmetro; se = 'S' e motivo vazio, bloqueia salvamento |
TfrmALTERADATA.FormActivate | UALTERADATA.pas | 174 | Carrega parâmetro; se = 'S', destaca label do campo motivo em negrito |
Busca_Parametros | UdmMRC003.pas | 697 | Inclui campo no SELECT de busca de parâmetros |
TdmREC001.qryCadastroAfterInsert | UdmREC001.pas | 723 | Define valor padrão N ao inserir novo registro |
Referências SQL diretas ao campo
Não foram encontradas referências diretas ao campo ST_MOTIVOALTDTENTREGA em scripts SQL (Scripts/). As consultas são feitas via Delphi usando SELECT ... FROM PARAMRECAP WHERE IDEMPRESA = ....
Candidatas por uso da tabela
As procedures/views abaixo utilizam a tabela PARAMRECAP mas não citam o campo ST_MOTIVOALTDTENTREGA diretamente. Não há impacto funcional direto identificado para este parâmetro.
| Procedure/View | Arquivo |
|---|---|
ATUALIZA_PEDIDONOTA | Scripts/ATUALIZA_PEDIDONOTA.sql |
ATUALIZA_PREVISAOORDEMPROD | Scripts/ATUALIZA_PREVISAOORDEMPROD.sql |
ATUALIZA_STFATURAAUTO | Scripts/ATUALIZA_STFATURAAUTO.sql |
CANCELA_ESTOQUERECAP | Scripts/CANCELA_ESTOQUERECAP.sql |
FECHA_ORDEMPRODUCAORECAP | Scripts/FECHA_ORDEMPRODUCAORECAP.sql |
GERA_ORDEMPRODUCAORECAP | Scripts/GERA_ORDEMPRODUCAORECAP.sql |
| (entre outras) |
Parâmetros relacionados
| Parâmetro | Tela | Relação |
|---|---|---|
ST_AUTORIZADOR | REC001 | Controle de autorização no módulo de recapagem |
TPTROCADESENHO | REC001 | Tipo de troca de desenho na ordem de produção |
Tabela Comparativa Resumida
| Valor | Comportamento | Campo motivo | Validação |
|---|---|---|---|
S | Obrigatório | Obrigatório | Bloqueia salvamento se vazio |
N | Não obrigatório (padrão) | Opcional | Nenhuma |