Pular para o conteúdo principal

STMANTEMVALORTROCASERVICO — Manter Valor na Troca de Serviço

Tela de configuração: REC001 — Parâmetros da Recapadora Tabela: PARAMRECAP.STMANTEMVALORTROCASERVICO Tipo: CHAR(1) | Padrão: N | NOT NULL

Controla se, ao realizar uma troca de serviço na ordem de produção de recapagem, o sistema deve manter o valor (preço) do serviço original ou zerar/recalcular o valor com base no novo serviço selecionado.

Telas impactadas​

TelaMóduloUso do parâmetro
MRC003RecapagemTroca de serviço pneu, validação de banda, form de troca
MRC006Recapagem (variação)Troca de serviço pneu, validação de serviço
MRC007Recapagem (variação)Troca de serviço pneu, banda, raspagem
MRC008Recapagem (variação)Troca de serviço pneu
MRC014Recapagem (embarcada)efetuaTrocaServicoMatrizEmb
MRC028Recapagem (embarcada)efetuaTrocaDeServico
MRC039Recapagem (embarcada)Parâmetros carregados na abertura
REC001ParâmetrosConfiguração do parâmetro

Campos envolvidos​

CampoTabelaRelação
STMANTEMVALORTROCASERVICOPARAMRECAPParâmetro
VLUNITARIOITEMPEDIDOPNEUValor do serviço no item — é mantido ou zerado conforme o parâmetro
IDSERVICOPNEU / IDSERVICOPNEUAUXORDEMPRODUCAORECAPServiço selecionado na ordem — dispara a lógica de troca
VLSERVICOITEMORDEMPRODUCAORECAPValor do serviço na ordem de produção

Opções disponíveis​

O que fazDetalhe
SMantém o valor original do serviço ao trocar — atualiza apenas o código do serviço no pedido, preservando o VLUNITARIO
N (padrão)Não mantém — zera o valor do serviço quando ocorre troca de serviço, banda ou combo; o valor será recalculado pelo novo serviço

S — Manter Valor do Serviço Original​

Simulação passo a passo​

  1. Acesse REC001 (Parâmetros da Recapadora).
  2. Marque o campo "Mantém Valor Troca Serviço" como S.
  3. Salve a configuração.
  4. Abra uma ordem de produção em MRC003 (Recapagem) que já tenha um serviço atribuído com valor, por exemplo, R$ 80,00.
  5. Realize a troca de serviço (troque o serviço pneu por outro diferente).
  6. Observe que o valor do item no pedido (ITEMPEDIDOPNEU.VLUNITARIO) continua sendo R$ 80,00, e apenas o código do serviço (IDSERVICOPNEU) é atualizado para o novo serviço.

Resultado esperado: O preço do serviço original é preservado no pedido. O sistema executa um UPDATE em ITEMPEDIDOPNEU alterando apenas o IDSERVICOPNEU, mantendo o VLUNITARIO anterior.

Exceção / Importante: Essa lógica é aplicada na rotina efetuaTrocaServicoMatrizEmb (MRC003/MRC014/MRC028). Quando o parâmetro está como S, o sistema faz um UPDATE direto no ITEMPEDIDOPNEU com o valor já existente na ordem (VLSERVICOITEM), sem buscar nova tabela de preço.


N — Não Manter / Recalcular Valor (Padrão)​

Simulação passo a passo​

  1. Acesse REC001 (Parâmetros da Recapadora).
  2. Deixe o campo "Mantém Valor Troca Serviço" como N (ou desmarque).
  3. Salve a configuração.
  4. Abra uma ordem de produção em MRC003 (Recapagem) que já tenha um serviço atribuído com valor, por exemplo, R$ 80,00.
  5. Realize a troca de serviço (troque o serviço pneu, a banda, ou o combo).
  6. Observe que o valor do serviço na ordem (VLSERVICOITEM) é zerado — o campo fica vazio.
  7. O valor será recalculado com base no novo serviço selecionado (via tabela de preço, se aplicável).

Resultado esperado: Ao trocar serviço, banda ou combo, o sistema zera o VLSERVICOITEM na ordem de produção. O valor do item no pedido também é impactado, pois o preço antigo é descartado e o novo valor dependerá da tabela de preço vigente para o serviço substituto.

Exceção / Importante: O zeramento do valor ocorre nos seguintes cenários (quando = 'N'):

  • Troca de serviço pneu (IDSERVICOPNEUAUX) — tanto em modo manual (tpTrocaServico = 'M') quanto banda (tpTrocaServico = 'B') quando há mais de 2 serviços
  • Troca de banda/combo (flagalterandobandacombo) — validação de banda e serviço auxiliar
  • Form de troca de serviço (abertura do formulário de troca nas telas MRC003/MRC006/MRC007/MRC008)

Procedures impactadas​

Rotinas Delphi com referência direta​

RotinaArquivoLinhaPapel
Busca_ParametrosUdmMRC003.pas698Lê o parâmetro do banco para a variável iSTMANTEMVALORTROCASERVICO
efetuaTrocaServicoMatrizEmbUdmMRC003.pas4423Se S: mantém valor ao efetuar troca matriz/embarcada
IDSERVICOPNEUAUXValidateUdmMRC003.pas2522Se N: zera valor ao trocar serviço pneu
IDBANDAPNEUValidateUdmMRC003.pas3000Se N: zera valor ao trocar banda/combo
IDSERVICOAUXValidateUdmMRC003.pas3197Se N: zera valor ao trocar serviço auxiliar
TrocaServico (frame)UframeMRC003.pas6729Se N: zera VLSERVICOITEM na troca manual
TMRC006formTrocaServico.FormCreateUMRC006formTrocaServico.pas255Configura comportamento do form de troca
IDSERVICOPNEUAUXValidateUdmMRC006.pas541Se N: valida serviço na troca
TMRC007formTrocaServico.FormCreateUMRC007formTrocaServico.pas297Configura comportamento do form de troca
IDSERVICOAUXValidateUdmMRC007.pas818Se N: zera valor ao trocar banda/combo
IDBANDAPNEUValidateUdmMRC007.pas1161Se N: zera valor ao trocar banda
IDSERVICOPNEUAUXValidateUdmMRC007.pas1368Se N: zera valor ao trocar serviço pneu
TMRC008formTrocaServico.FormCreateUMRC008formTrocaServico.pas277Configura comportamento do form de troca
IDSERVICOPNEUAUXValidateUdmMRC008.pas1595Se N: zera valor ao trocar serviço pneu
efetuaTrocaServicoMatrizEmbUdmMRC014.pas959Se S: mantém valor ao efetuar troca matriz/embarcada
efetuaTrocaDeServicoUdmMRC028.pas1153Se S: mantém valor ao efetuar troca
Busca_ParametrosUdmMRC006.pas271Lê parâmetro
Busca_ParametrosUdmMRC007.pas309Lê parâmetro
Busca_ParametrosUdmMRC008.pas323Lê parâmetro
Busca_ParametrosUdmMRC039.pas128Lê parâmetro
qryCadastroAfterInsertUdmREC001.pas828Define valor padrão N ao inserir novo registro

Referências SQL diretas ao campo​

Não foram encontradas referências diretas ao campo STMANTEMVALORTROCASERVICO em procedures ou views SQL. O campo é consumido exclusivamente pela camada Delphi (Data Modules e Forms das telas MRC).

Candidatas por uso da tabela PARAMRECAP​

As procedures abaixo acessam a tabela PARAMRECAP mas não citam o campo STMANTEMVALORTROCASERVICO diretamente — sem impacto funcional direto identificado:

ProcedureArquivo
ATUALIZA_PEDIDONOTAScripts/ATUALIZA_PEDIDONOTA.sql
FECHA_ORDEMPRODUCAORECAPScripts/FECHA_ORDEMPRODUCAORECAP.sql
GERA_ORDEMPRODUCAORECAPScripts/GERA_ORDEMPRODUCAORECAP.sql
GERA_PEDIDOENTRADACARCACAScripts/GERA_PEDIDOENTRADACARCACA.sql
GERA_PEDIDOSAIDACARCACAScripts/GERA_PEDIDOSAIDACARCACA.sql
GERA_NOTAPEDIDOScripts/GERA_NOTAPEDIDO.sql

Parâmetros relacionados​

ParâmetroTelaRelação
TPTROCASERVICOREC001 — Parâmetros da RecapadoraDefine o tipo de troca de serviço (N/M/B); interage com STMANTEMVALORTROCASERVICO nas validações
TPTROCADESENHOREC001 — Parâmetros da RecapadoraTipo de troca de desenho; verificado em conjunto nas validações de banda
ST_TABPRECOMFA001 — Parâmetros de FaturamentoTabela de preço consultada quando o valor precisa ser recalculado (modo N)