Ir para conteúdo
  • Cadastre-se

  • Este tópico foi criado há 2932 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Na unidade ACBrBancoBancoob.pas, na rotina LerRetorno240, fiz as seguintes alterações:

Linha 575, acrescentei o fonte abaixo para a preencher o valor pago pelo cliente
   ValorPago            := StrToFloatDef(Copy(Linha,78,15),0)/100;


Linha 580, acrescentei o fonte abaixo para calcular a diferença entre o valor pago e o valor original do título preenchendo o valor da mora/juros ou o valor de outras despesas pois nos arquivos de retorno do meu cliente esse valor está vindo zerado.

            if (ValorPago > ValorDocumento) then
               begin
               //*** Pagamento com atraso - o correto é verificar próximo dia útil após o vencimento pois o vencimento pode cair em um sábado, domingo ou feriado
               if (DataOcorrencia > Vencimento) then
                  begin
                  if (ValorMoraJuros = 0) then
                     ValorMoraJuros := ValorPago - ValorDocumento;
                  end
               else
                  ValorOutrasDespesas := ValorOutrasDespesas + (ValorPago - ValorDocumento);
               end;
 

ACBrBancoBancoob.pas

  • Consultores
Postado

Boa tarde.

Estas alterações se baseiam em qual parte do manual do banco?

Att.

Consultora ACBr Pro

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Postado (editado)

*** Manual em anexo

A 1a do valor pago é referente ao REGISTRO DETALHE SEGMENTO U - SEQ 12.3U que informa que as colunas de 78 a 92 são referentes ao valor do pagamento efetuado pelo Pagador referente ao título de cobrança, expresso em
moeda corrente.

A 2a. é baseada nos arquivos de retorno que recebi de meu cliente no qual constam títulos pagos com atraso e que incidiram juros mas que o campo REGISTRO DETALHE SEGMENTO U - SEQ 08.3U veio zerado. Então minha sugestão é que Juros/Multa sejam informados pela diferença entre o valor pago e o valor do título quando o campo de valor de juros/multa estiver zerado. O Cobrebem faz isso visto que recebo em seu campo de Juros/Multa o valor da diferença. 

Então inseri o fonte abaixo na linha 580 da unidade ACBrBancoBancoob.pas, na rotina LerRetorno240 e resolvi o problema dos títulos com juros e multa

if (ValorMoraJuros = 0) then
   //*** Somente se houver diferença
   if (ValorPago > ValorDocumento) then
      //*** Pagamento com atraso - o correto é verificar próximo dia útil após o vencimento pois o vencimento pode cair em um sábado, domingo ou feriado
      if (DataOcorrencia > Vencimento) then 
         ValorMoraJuros := ValorPago - ValorDocumento;
 

Também inseri uma função chamada Liquidado na classe TACBrTitulo que indica quando o retorno representa a liquidação do título. Facilita na hora de processar o retorno dos títulos.

function TACBrTitulo.Liquidado: Boolean;
begin
  Result := (Self.OcorrenciaOriginal.Tipo = TACBrTipoOcorrencia.toRetornoLiquidado) or
            (Self.OcorrenciaOriginal.Tipo = TACBrTipoOcorrencia.toRetornoLiquidadoAposBaixaOuNaoRegistro) or
            (Self.OcorrenciaOriginal.Tipo = TACBrTipoOcorrencia.toRetornoLiquidadoEmCartorio) or
            (Self.OcorrenciaOriginal.Tipo = TACBrTipoOcorrencia.toRetornoLiquidadoParcialmente) or
            (Self.OcorrenciaOriginal.Tipo = TACBrTipoOcorrencia.toRetornoLiquidadoPorConta) or
            (Self.OcorrenciaOriginal.Tipo = TACBrTipoOcorrencia.toRetornoLiquidadoSaldoRestante) or
            (Self.OcorrenciaOriginal.Tipo = TACBrTipoOcorrencia.toRetornoLiquidadoSemRegistro);
end;
 

Sicoob.zip

Editado por romerio.correia
  • Curtir 1
  • Moderadores
Postado

Bom dia, favor atualizar os fontes...

Foi adicionado o campo 1º Item Campo "Valor Pago"

O 2º Item não é uma regra a ser realizada pelo componente nesta situação. O Retorno deve respeitar os campos lidos no arquivo, pode ser tratado isso na Aplicação Comercial.

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Este tópico foi criado há 2932 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...