Ir para conteúdo
  • Cadastre-se

dev botao

Santander - Cnab2340 Homologado


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

Recommended Posts

  • 2 semanas depois ...
  • 2 meses depois ...

Bom dia.

 

Segue anexo a unit ACBrBancoSantander.pas com algumas correções na leitura do arquivo retorno CNAB240:

 

- Erro ao validar CNPJ do cedente

- Leitura do Bloco U

- Valor do Documento

 

Favor disponiblizarem no SVN.

 

Atenciosamente.

 

ACBrBancoSantander.pas

  • Curtir 1

------------------------------------------------

Jéter Rabelo Ferreira
Campestre/MG

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Estava olhando as diferenças Jéter !

você removeu o valor do documento do segmento T e adicionou no U é isso mesmo?

 

Bom dia.

 

Segue anexo a unit ACBrBancoSantander.pas com algumas correções na leitura do arquivo retorno CNAB240:

 

- Erro ao validar CNPJ do cedente

- Leitura do Bloco U

- Valor do Documento

 

Favor disponiblizarem no SVN.

 

Atenciosamente.

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa tarde Jeter.

 

Quando o boleto é registrado como ficam as informações no bloco U?

 

 

Att.

Consultora SAC ACBr

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 !!

Link para o comentário
Compartilhar em outros sites

Boa tarde, pessoal!

 

Jéter, parabéns pela excelente iniciativa. Me ajudou muito!

Obrigado por compartilhar com todos. Só quem faz sabe o trabalho que dá.

 

Até hoje utilizei o componente RLBoleto somente para tratamento do retorno CNAB240 do Santander com esse CNAB. Todos os outros bancos utilizo ACBr.

 

 

Aproveitei para adicionar algumas linhas na unit ACBBancoSantander, na função LerRetorno240:

 

//Adicionei na linha 834
Linha 834:    rCodigoCedente := Copy(ARetorno[0], 55, 7);
 
//Antiga linha 837
Linha 838:  rConta         := padR(OnlyNumber(Copy(ARetorno[0], 38, 9)), fpTamanhoConta, '0');
 
//Adicionei na linha 852
Linha 852:  Cedente.CodigoCedente := rCodigoCedente;
 
//Novas linhas para setar valores de atributos do componente
Linha 854:    Cedente.Agencia := rAgencia;
Linha 855:    Cedente.AgenciaDigito := rAgenciaDigito;
Linha 856:    Cedente.Conta := rConta;
Linha 857:    Cedente.ContaDigito := rContaDigito;
 
Caros moderadores, fiz testes de tratamento de retorno em 2 contas bancárias no Santander com CNAB240, tudo funcionando. Só não fiz testes com geração de remessa CNAB240.
 
Att.
 
Luis Paulo Rodrigues

ACBrBancoSantander.pas

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia Luiz Paulo.

 

Suas alterações foram baseadas em algum novo manual? Vi que vc alterou as posições de leitura de alguns campos...favor anexar o manual utilizado aqui.

 

 

Att.

Consultora SAC ACBr

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 !!

Link para o comentário
Compartilhar em outros sites

Bom dia, Juliana.

 

Segui o manual que a gerente da agência, onde tenho o convênio, me passou.

Trabalho com o Santander para meus recebimentos, tanto conta jurídica quanto física, por isto consigo fazer testes com facilidade.

Só não ouso alterar as funções relacionadas à geração de remessa, pois não utilizo.

Mas, tive que fazer mais uma modificação a partir da linha 841, devido ao tratamento do convênio da minha conta física, onde no arquivo há "0000" antes do meu CPF:

 

  if ACBrBanco.ACBrBoleto.Cedente.TipoInscricao = pFisica then
  begin
    rCNPJCPF := trim( Copy(ARetorno[0],22,11));
    rCNPJCPF := RightStr(rCNPJCPF,11) ;
  end
  else
  begin
    rCNPJCPF := trim( Copy(ARetorno[0],18,15)) ;
    rCNPJCPF := RightStr(rCNPJCPF,14) ;
  end;
 
Em anexo o manual e a alteração que fiz, com base na unit ACBrCaixaEconomicaSICOB, que também utilizo para recebimento.
 
Obrigado!
 

ACBrBancoSantander.pas

Layout CNAB 240 posições padrão Santander Multibanco Agosto 2013 v 2.01.pdf

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia.

 

Alterações disponíveis no svn.

 

@Jeter

Com relação ao valor recebido mantive a leitura no segmento T também e ao realizar a leitura no segmento U, é feito um max() entre o valor atual e o novo.

 

Att.

  • Curtir 1
Consultora SAC ACBr

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 !!

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois ...

Juliana, boa noite.

 

Desculpe não ter respondido antes, mas estou com um projeto meio grande e não consegui ler as mensagens.

 

Agora, estou com um problema com essa unit mesmo.

 

No bloco (P) - Remessa, tem um campo que informa (059) se o boleto é cobrança simples ou registrada:

 

Nota 6: FORMA DE CADASTRAMENTO
'1' = Cobrança Registrada (Rápida e Eletrônica com Registro)
'2' = Cobrança sem Registro

 

Quando eu criei o procedimento, coloquei o número 2 como literal para esse campo (059), mas acontece que meu cliente vai ter cobrança registrada e não tem um enumerado no ACBrTitulo para que eu possa identificar o mesmo quando for Cobrança Sem Registro ou com Registro.

 

Não posso utilizar o tipo de cobrança, pois o código 1 do mesmo serve tanto para simples com registro e sem registro.

 

Portanto, não consegui achar uma solução.

 

Será que você teria alguma solução para contonar o problema ou teriamos que criar um enumerado para controlar essa opção?

Aguardo retorno.

Atenciosamente.

------------------------------------------------

Jéter Rabelo Ferreira
Campestre/MG

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia Jeter.

 

Existe algumas definição de carteiras que são registradas e carteiras que não são? Se existir podemos nos basear por ai.

 

Att.

Consultora SAC ACBr

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 !!

Link para o comentário
Compartilhar em outros sites

Bom dia Juliana,

 

Ao analisar o tipo de cobrança, que é o campo 058, temos as seguintes opçoes:

 

Nota 5: TIPO DE COBRANÇA
REMESSA:
'1' = Cobrança Simples (Sem Registro e Eletrônica com Registro)
'3' = Cobrança Caucionada (Eletrônica com Registro e Convencional com Registro)
„4‟ = Cobrança Descontada (Eletrônica com Registro)
'5' = Cobrança Simples (Rápida com Registro)
„6‟ = Cobrança Caucionada (Rápida com Registro)
„8‟ = Cobrança Cessão (Eletrônica com Registro)

 

Se você analisar, o tipo 1 serve tanto para título com registro como para sem registro.

 

Portanto, fica dificil diferenciar se não for criado uma property para isso. Bom, eu não consegui achar outra alternativa.

 

Aguardo retorno.

Atenciosamente,

------------------------------------------------

Jéter Rabelo Ferreira
Campestre/MG

Link para o comentário
Compartilhar em outros sites

Juliana, boa tarde.

 

Fiz as alterações conforme relatado acima.

Criei um enumerado chamado TACBrTipoCarteira = (tctSimples, tctRegistrada);

 

Criei uma property TACBrCedente.TipoCarteira

 

E, com base nessa property, o arquivo de remessa de Santander está gerando o arquivo corretamente.

 

OBS: Efetuei um update antes de alterar o ACBrBoleto.

 

Atenciosamente.

ACBrBancoSantander.pas

ACBrBoleto.pas

  • Curtir 1

------------------------------------------------

Jéter Rabelo Ferreira
Campestre/MG

Link para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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...