Pular para o conteúdo principal

STUTILIZACONTRATOCOLETA – Utilizar Contrato na Coleta

Tela de configuração: REC001 – Parâmetros da Recapadora Tabela / Campo: PARAMRECAP.STUTILIZACONTRATOCOLETA Tipo: CHAR(1) · Valor padrão: N Controle na tela: CheckBox — Utilizar Contrato na Coleta [TRC037/MRC001/Smart]


Comportamento geral​

Quando habilitado (S), o sistema passa a buscar automaticamente um contrato ativo na tabela CONTRATORECAP para o cliente no momento da coleta (pedido de pneu). Se encontrar um contrato válido com vigência vigente, preenche IDCONTRATORECAP no pedido e utiliza a movimentação e regras definidas no contrato durante o faturamento e fechamento da ordem de produção.

Quando desabilitado (N — padrão), o sistema ignora completamente a tabela CONTRATORECAP no fluxo de coleta.


Telas impactadas​

TelaContexto
MRC001 – Pedido de ColetaValidação do cliente: busca contrato ativo e preenche IDCONTRATORECAP no pedido
MRC020 – Nota Fiscal da Ordem de ProduçãoGeração da nota fiscal: busca contrato ativo para definir movimentação e serviços do contrato

Campos envolvidos​

CampoTabelaDescrição
STUTILIZACONTRATOCOLETAPARAMRECAPFlag que ativa/desativa o uso de contratos
IDCONTRATORECAPPEDIDOPNEUContrato vinculado ao pedido de coleta
NR_CONTRATOCONTRATORECAPNúmero do contrato
DT_INICIO / DT_FIMCONTRATORECAPVigência do contrato
ST_CONTRATOCONTRATORECAPStatus: A (Ativo), P (Pendente), V (Vencido)
CD_MOVIMENTACAOCONTRATORECAP / SERVICOCONTRATORECAPMovimentação financeira vinculada

Opções disponíveis​

N – Não utilizar contrato (padrão)​

O que fazDetalhe
Desabilita busca de contratoO sistema ignora a tabela CONTRATORECAP no fluxo de coleta

Simulação passo a passo​

  1. Acesse REC001 → Parâmetros da Recapadora.
  2. Desmarque o checkbox Utilizar Contrato na Coleta [TRC037/MRC001/Smart].
  3. Salve as alterações.
  4. Acesse MRC001, selecione um cliente e crie um pedido de coleta.
  5. Observe que o campo de contrato permanece vazio e nenhuma consulta a CONTRATORECAP é executada.

Resultado esperado: O pedido de coleta é criado sem vinculação a contrato. Os serviços e movimentações seguem a configuração padrão do pedido.


S – Utilizar contrato na coleta​

O que fazDetalhe
Ativa busca automática de contratoAo selecionar o cliente no pedido, o sistema consulta CONTRATORECAP por um contrato ativo com vigência válida
Preenche contrato no pedidoSe encontrado, preenche IDCONTRATORECAP e anota o número nas observações
Recalcula serviçosNa geração da nota fiscal (MRC020), utiliza movimentação e serviços definidos no contrato
Atualiza contratos vencidosNo insert do pedido (trigger PEDIDOPNEU_BI), marca contratos vencidos como status V

Simulação passo a passo​

  1. Acesse REC001 → Parâmetros da Recapadora.
  2. Marque o checkbox Utilizar Contrato na Coleta [TRC037/MRC001/Smart].
  3. Salve as alterações.
  4. Cadastre um contrato ativo para o cliente em CONTRATORECAP (via TRC037 ou tela equivalente), com:
    • Vigência (DT_INICIO a DT_FIM) incluindo a data atual.
    • Status A (Ativo) ou P (Pendente).
    • Movimentação e serviços configurados.
  5. Acesse MRC001 e selecione o cliente com contrato.
  6. Observe que o sistema busca automaticamente o contrato ativo e preenche o número do contrato nas observações do pedido.
  7. Proceda com a geração da nota fiscal em MRC020.
  8. Observe que a movimentação e os serviços do contrato são aplicados automaticamente à nota.

Resultado esperado: O pedido de coleta é vinculado ao contrato ativo do cliente. A nota fiscal gerada utiliza a movimentação e regras definidas no contrato. Contratos vencidos são automaticamente marcados como V (Vencido).

Exceção / Importante:

  • Se o cliente não possuir contrato ativo com vigência válida, o campo de contrato permanece vazio mesmo com o parâmetro habilitado.
  • Se houver múltiplos contratos ativos, o sistema busca o primeiro válido encontrado com CURRENT_DATE BETWEEN DT_INICIO AND DT_FIM e status IN ('P', 'A').
  • Na tabela SERVICOCONTRATORECAP, serviços específicos podem sobrescrever a movimentação padrão do contrato (COALESCE(SC.CD_MOVIMENTACAO, C.CD_MOVIMENTACAO)).

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaEvidência
TdmMRC001.qryPedidoPneuIDPESSOAValidatesource/MRC001/UdmMRC001.pas300if (parmRecap.Values['STUTILIZACONTRATOCOLETA'] = 'S') then — busca contrato ativo e preenche IDCONTRATORECAP no pedido
Preenche_NotaFiscalsource/MRC020/UdmMRC020NFORDEM.pas1019if (dmMRC020.parmRecap.Values['STUTILIZACONTRATOCOLETA'] = 'S') then — utiliza contrato para definir movimentação da nota
TdmREC001.qryCadastroAfterInsertsource/REC001/UdmREC001.pas1014qryCadastroSTUTILIZACONTRATOCOLETA.AsString := 'N' — define valor padrão ao inserir novo registro

Referências SQL diretas ao campo em Scripts/​

Procedure / TriggerArquivoLinhaEvidência
PEDIDOPNEU_BIScripts/PEDIDOPNEU_BI.sql65–70Trigger que atualiza status de contratos vencidos (ST_CONTRATO = 'V') quando parâmetro está ativo
FECHA_ORDEMPRODUCAORECAPScripts/FECHA_ORDEMPRODUCAORECAP.sql321–322INNER JOIN PARAMRECAP P ON (P.STUTILIZACONTRATOCOLETA = 'S') — valida contrato no fechamento da ordem
ATUALIZA_PEDIDONOTAScripts/ATUALIZA_PEDIDONOTA.sql131SELECT P.STUTILIZACONTRATOCOLETA — lê parâmetro para atualização pedido/nota
RETORNA_MOVIMENTACAOPADRAOScripts/RETORNA_MOVIMENTACAOPADRAO.sql47AND PR.STUTILIZACONTRATOCOLETA = 'S' — inclui join com contrato na movimentação padrão

Candidatas por uso da tabela (sem referência direta ao campo)​

Estas procedures/views fazem JOIN ou SELECT na tabela PARAMRECAP, mas não citam o campo STUTILIZACONTRATOCOLETA. Não há impacto funcional direto identificado para este parâmetro.


Regra Geral​

O parâmetro atua como chave de habilitação do módulo de contratos de coleta. Quando desativado, o sistema se comporta como se a tabela CONTRATORECAP não existisse no fluxo. Quando ativado, toda vez que um cliente é selecionado em um pedido de coleta (MRC001) ou que uma nota fiscal é gerada a partir de uma ordem de produção (MRC020), o sistema consulta a tabela CONTRATORECAP em busca de um contrato ativo e com vigência válida.