Ir para conteúdo
  • Cadastre-se

dev botao

Boleto Bancário Sicredi


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

Recommended Posts

  • Administradores

Boa tarde.

As contribuições para a correção deste problema também foram adicionadas ao svn.

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

  • Administradores

Boa tarde.

Não utilizamos este banco, porém de acordo com o manual disponível no svn está correto. Caso desejar você poderá obter uma confirmação do banco, enviando os boletos para análise.

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

Ainda está com erro no DV.

Emiti 10 boletos e deu erro em somente um. Dados utilizados:

Agência Posto Cedente Ano Byte Seqüencial

0 1 0 1 2 4 1 9 9 6 5 1 2 2 0 0 0 2 8

O DV calculado pelo ACBr foi 1, porém o DV calculado pela planilha de teste do Sicredi foi 0.

Alguém se habilita a corrigir? Não sei nem por onde começar.

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia André.

Na unit do Sicred, assim como para os demais bancos, existe uma função chamada CalcularDigitoVerificador que faz o cálculo do digito do nosso número, caso desejar pode começar olhando esta função.

Para podermos testar informe todas as informações passadas ao componente para emitir o boleto.

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

Ainda está com erro no DV.

Emiti 10 boletos e deu erro em somente um. Dados utilizados:

Agência Posto Cedente Ano Byte Seqüencial

0 1 0 1 2 4 1 9 9 6 5 1 2 2 0 0 0 2 8

O DV calculado pelo ACBr foi 1, porém o DV calculado pela planilha de teste do Sicredi foi 0.

Alguém se habilita a corrigir? Não sei nem por onde começar.

boa tarde, foi baixado o arquivo em anexo para fazer o boleto?

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

Bom dia,

Ainda estou brigando com o boleto do Sicredi. Testei gerar 10 boletos, em somente um deu erro nos DVs. Gerei outros 10 e novamente: erro em somente 1 boleto.

Dados para teste:

Linha digitável: 74893.11220 00031.101017 24199.651092 4 53640000057870

Cooperativa: 0101

UA/Posto: 24

Cedente: 19965

Cobrança sem registro

Anexei uma planilha atual que o suporte do Sicredi me enviou para testar os boletos, e através dela entendo que a forma correta de calcular o DV do nosso número por exemplo é o frModulo10PIS e não frModulo11 como está sendo utilizado.

Estou fazendo testes, e alterei a função TACBrCalcDigito.Calcular que está na unit ACBrValidador, vou dando F8 e dentro da função o digito é calculado corretamente (com as alterações que fiz), mas quando volta para a função CalcularDigitoVerificador da unit ACBrBancoSicredi o dígito está diferente!?

Estou usando ACBrBoleto Ver: 0.0.31a, já existe versão mais nova onde isso foi corrigido?

Analisa campos do boleto Sicredi - original.zip

Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa tarde André.

Pelo que vc reportou o problema não está no ACBrValidador, e sim na CalcularDigitoVerificador da unit do banco, já que apenas um dos testes falhou.

Favor informar detalhadamente as informações utilizadas no teste, como Nosso Numero, Carteira, Conta, poste aqui exatamente da forma como foi passada ao componente.

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

Olá Juliana, obrigado pelo retorno.

Agora que você falou, fiz algumas alterações na função e ficou assim, me corrija se tiver outra forma melhor de fazer. Linhas suprimidas em vermelho e linhas adicionadas em azul.

Edit: Faltou informar que emiti os mesmos 10 boletos de antes, com os mesmos dados, inclusive os mesmos nosso número, e desta vez todos os DVs geraram corretamente. Como funciona para atualizarem essa função no SVN?

function TACBrBancoSicredi.CalcularDigitoVerificador(const ACBrTitulo: TACBrTitulo ): String;

var

wDigitoFinal: Integer;

begin

Modulo.CalculoPadrao;

Modulo.MultiplicadorFinal := 9;

Modulo.Documento := ACBrTitulo.ACBrBoleto.Cedente.Agencia +

ACBrTitulo.ACBrBoleto.Cedente.AgenciaDigito +

ACBrTitulo.ACBrBoleto.Cedente.CodigoCedente +

ACBrTitulo.NossoNumero;

Modulo.Calcular;

{original

if Modulo.ModuloFinal = 1 then

Result := '1'

else

if Modulo.DigitoFinal > 9 then

result := '0'

else

Result := IntToStr(Modulo.DigitoFinal); }

wDigitoFinal := 11 - Modulo.ModuloFinal;

if (wDigitoFinal >= 10) then

wDigitoFinal := 0;

Result := IntToStr(wDigitoFinal);

end;

Dados utilizados para emitir o boleto problemático:

NossoNumero: 12/200031

Campos utilizados para compor NN:

- Cooperativa: 0101

- Posto: 24

- Cedente: 19965

- Ano: 12

- Byte: 2

- Sequencial: 00031

Outros campos:

Carteira:1

Agencia: 0101

Conta: 19965

DataVencimento: 12/06/2012

DataDocumento: ''

DataMoraJuros: 13/06/2012

DataDesconto: 0

DataAbatimento: 0

Dataprotesto: 0

NumeroDocumento: 687/01

EspecieDoc: 'DM'

NossoNumero: '12200031'

ValorDocumento: 5787,00

ValorAbatimento: 0

ValorMoraJuros: 11,57

ValorDesconto: 0

PercentualMulta: 5

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia André.

As contribuições funcionam da seguinte maneira, você disponibiliza aqui suas correções(anexando ao post a unit alterada) e então após análise ela é adicionada ao svn.

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

  • Administradores

Acredito que o seguinte trecho não é necessário, pois o Modulo.DigitoFinal é exatamente este cálculo.

wDigitoFinal := 11 - Modulo.ModuloFinal;

Faça um teste com o código da seguinte maneira:

if (Modulo.DigitoFinal >= 10) then

Result := 0

else

Result := IntToStr(Modulo.DigitoFinal);

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

  • Administradores

Por favor anexe aqui a unit alterada

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

  • Administradores

Bom dia.

Alterações disponíveis no svn.

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

Juliana e demais,

Hoje consegui homologar junto ao Sicredi. Alterações que precisei fazer que não sei se estão todas já implementadas:

- Logotipo não deve ser colorido (não entendi porque, a atendente do Sicredi me enviou um logo em preto e branco, anexei neste post)

- O número do banco que fica ao lado do logo e que é destacado, deve ser 748-X e não 748-1 (para isso encontrei esse tópico apliquei a correção proposta e resolveu.

- O formato do campo Agência / Código Cedente deve ser AAAA.BB.CCCCC, o componente está formatando AAAA/CCCCC, essa alteração eu fiz direto no arquivo FR3, não sei se é possível algum tipo de alteração no componente para que a formatação já venha pronta de acordo com o banco.

A versão que estou usando do ACBrBoleto é a 0.0.31a, existe versão mais nova onde estes problemas já foram resolvidos?

Andrei

LOGOS.zip

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia Andrei.

Atualmente o ACBrBoleto está na versão 0.0.36a, então você está um pouco desatualizado...

Com relação a correção do código do Cedente, existe a função MontarCodigoCedente() na unit do banco, esse seria o local correto de implementar qualquer ajuste referente a este campo.

Quanto ao logo na pasta dos fontes do ACBrBoleto, temos a pasta logos e dentro dela as pastas PretoBranco e Colorido, então basta informar a pasta PretoBranco como caminho para os logos.

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

  • Administradores

Por favor...

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

Segue em anexo, a alteração que fiz foi a proposta pelo alcir neste post: viewtopic.php?f=11&t=5449&p=28742&hilit=748+x#p28742

Outra coisa Juliana, o método LerRetorno400 não foi desenvolvido ainda, tentei começar a fazê-la, mas não consegui. Copiei a função de outro banco e coloquei na unit do Sicredi, mas continua dando erro ao chamar o método LerRetorno, diz que a função LerRetorno400 não está implementada para o Sicredi. Como procedo para implementar essa função?

ACBrBoletoFCFR.zip

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia André.

Vc declarou dessa maneira "Procedure LerRetorno400(ARetorno:TStringList); override;" a procedure na unit do Sicredi?

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

  • Administradores

Boa tarde.

Correção do digito do banco disponível no svn.

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

Olá Juliana,

De fato, faltou o override.

Bem, apanhei um pouco mas consegui implementar a procedure LerRetorno400. Em anexo está a unit ACBrBancoSicredi, espero que seja útil para outros colegas. Deixei alguns comentários na procedure sobre alguns campos que não entendi e outros que não tem no arquivo de retorno do Sicredi, usei como base a procedure do Banco do Brasil e implementei a leitura de um arquivo de retorno com registros de uma cobrança SEM registro. Para cobrança COM registro cabe algumas modificações.

Para referência futura utilizei o manual de Agosto de 2010 do Sicredi.

Mais uma vez obrigado pelas dicas Juliana.

ACBrBancoSicredi.zip

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2054 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.