Ir para conteúdo
  • Cadastre-se

dev botao

Sicoob - Arquivo Remessa CNAB 240 (Atualizado Julho/2017)


Ver Solução Respondido por José M. S. Junior,
  • Este tópico foi criado há 1460 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Fala galera!

Efetuamos a troca de nosso banco para o Sicoob e, durante a implementação, constatamos alguns problemas no envio do arquivo remessa.

Com base nisto, verificamos o manual de integração CNAB 240 (não testamos o CNAB 400) e, analisando linha por linha, encontramos algumas divergências e assim, com a devida correção no arquivo, o mesmo passou a ser validado com sucesso (se não me falhe a memória, creio que foi alterado umas 2 a 3 linhas apenas).

De todo modo, se alguém estiver tendo problemas com a integração do Sicoob, segue abaixo o arquivo com a correção que fizemos.

Esperamos ter ajudado.

ACBrBancoBancoob.pas

  • Administradores
Postado

Boa tarde.

Favor indicar o manual utilizado como base para as alterações.

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

Postado
21 horas atrás, Juliana Tamizou disse:

Boa tarde.

Favor indicar o manual utilizado como base para as alterações.

Att

Oi Juliana, tudo bem?

Na verdade, apenas para corrigir, o único erro no arquivo do ACBr é a linha 715 (Número da versão do layout do lote) que está definido por 040, entretanto, ao enviar para homologação, recebemos a informação que o layout atual é a versão 045.

Outra coisa que havíamos mudado era a linha 688 - o manual informa que deve ser preenchido em branco (e de fato está assim no código do ACBr), porém, no validador de arquivos, o mesmo informa que neste local deve ser preenchido com número inteiro. Desta forma, alteramos para 0 e o validador passou a funcionar corretamente.

Em contato com o suporte do banco, o mesmo informou que este valor realmente deve ser em branco, portanto peço desculpas pelo erro no arquivo.

MORAL DA HISTÓRIA: Para funcionar o validador, tem que colocar 0 na linha 688 - para enviar, de fato os arquivos, deve-se manter em branco esta mesma linha.

A única mudança, de fato, que precisa ser feita, é a versão do Layout, passando e 040 para 045 (com base no próprio erro que o Sicoob retorna).

  • 3 semanas depois ...
Postado
Em 13/07/2017 at 15:38, Paulo Nichio disse:

A única mudança, de fato, que precisa ser feita, é a versão do Layout, passando e 040 para 045 (com base no próprio erro que o Sicoob retorna).

Boa tarde, tenho clientes com esse problema também  porem no manual não consta 045 e sim 040, quando ocorre este erro eu peço a eles para pedirem o manual correto para o banco e geralmente o arquivo passa. Creio que é a versão do validador do sicoob que esta atualizada e no manual ainda não mexeram.

Postado

Boa tarde,

Essa discussão da versão do layout é antiga, atualizei agora e começou a dar problemas para homologar no validador do Sicoob com essas versões 085 e 045

Essas versões já haviam dado problema e foi voltado para 081 e 040 porque a maioria dos usuários reclamaram

Podem verificar na revisão 12834 do dia 17/01/2017 comitada pelo juliomar na qual foi voltada o número dessas versões

tópicos na qual foi discutido isso também:
 

 

 

Erro do validador que acabei de tentar homologar com o acbr atualizado:

image.png.bfd1816860ff298d9d7ef54181072351.png

  • Moderadores
Postado

Boa tarde, tem alguma especificação atualizada do banco para a respeito de qual versão informar? parece que esse banco está utilizando uma versão de layout para homologar e outra para receber os arquivos de fato!!!

Consultor SAC ACBr

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

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

Postado

Boa tarde @José M. S. Junior

Sinceramente não sei por onde estão se baseando para essa informação da versão 087 e 045

Mas vou botar em anexo o manual que acabei de baixar do portal de homologações do sicoob, não sei a data dele, mas se está no portal creio que seja atualizado.

Além disso, eu voltei o número das versões e mandei a remessa no portal novamente, agora validou sem problemas como pode ver na imagem.

image.png.319939ad760408a82407c33109c87be7.png
 

Layout_Para_Troca_de_Informacoes.xls

Postado

Só uma observação, esse portal que utilizo é de SC, então pode ser que outros estados tenham versões diferentes realmente, interessante é os colegas acima postarem os manuais deles também para compararmos... se for isso mesmo, temos que fazer uma forma de isso ser dinamico ao invés de fixo no fonte.

  • Curtir 1
Postado
Em 04/08/2017 at 16:55, fernandoschulz disse:

Só uma observação, esse portal que utilizo é de SC, então pode ser que outros estados tenham versões diferentes realmente, interessante é os colegas acima postarem os manuais deles também para compararmos... se for isso mesmo, temos que fazer uma forma de isso ser dinamico ao invés de fixo no fonte.

Apoio a ideia de criar uma propriedade dinâmica para alimentar a Versão do Layout, pois nossos clientes também estão tendo problemas com isso e não é interessante ter que ficar alterando um valor fixo no código fonte. Deixo minha sugestão para os colegas discutirem se é viável ou não.

Postado

De tanto apanhar com esse monte de " Layout_Para_Troca_de_Informacoes.xls", cada centro tem um, eu tive que criar as seguintes propriedades no AcbrBoleto.

Protected
    fLayoutVersao_HF : String; // Versão do Hearder do arquivo
    fLayoutVersao_HL  : String; // Versão do Hearder do Lote
public
    (...)

    Property LayoutVersao_HF:String   read fLayoutVersao_HF        write fLayoutVersao_HF;
    Property LayoutVersao_HL:String   read fLayoutVersao_HL        write fLayoutVersao_HL;

(...)

TACBrBancoClass.create(AOwner: TACBrBanco)

  fLayoutVersao_HF   := '87'; // Este é o atual da Sicoob Centro
  fLayoutVersao_HL   := '40'; // Este é o atual da Sicoob Centro

Ou seja, se houvesse uma padronização, não haveria problema nenhum. Com diante disso, na hora de gerar os arquivos, eu alimento esta propriedade.

AcbrBancoBancoob.pas
GerarRegistroHeader240...
(...)
PadLeft(OnlyNumber(LayoutVersao_HF),3,'0')  + // 164 a 166 - Número da versão do layout do arquivo ( Antes estava fixo, criei o campo)
PadLeft(OnlyNumber(LayoutVersao_HL),3,'0')  + // 164 a 166 - Número da versão do layout do arquivo ( Antes estava fixo, criei o campo )

Eu tive que fazer isso. Na hora de atualizar o ACBrBoleto é que são elas. Tenho que fazer um Backup destas units e alterá-las conforme as mudanças nas novas.

 

_____________

Prates, Agnaldo

Postado (editado)

Uma outra coisa que verifiquei também ao gerar a remessa para o CNAB 240 do SICOOB foi o numero da parcela, no método GerarRegistroTransacao240, a parcela está travada em 01, como mostra o código abaixo:

 

Result := Result+PadLeft(NossoNum, 10, '0')+ // 38 a 57 - Carteira
                            PadLeft('01', 02, '0')+
                            PadLeft(wModalidade, 02, '0')+
                            '4'+
                            Space(5);

Quando o correto deveria ser:

Result := Result+PadLeft(NossoNum, 10, '0')+ // 38 a 57 - Carteira
                            IntToStrZero(ifthen(Parcela > 0, Parcela,1),2)+
                            PadLeft(wModalidade, 02, '0')+
                            '4'+
                            Space(5);

 

Editado por jun_pdv
para melhor entendimento
Postado

Galera, como curiosidade, onde vocês testam as remessas geradas pelo sicoob? Vi que tem gente que envia para um portal, outros para um validador, eu particularmente, importo a remessa no próprio módulo cedente do sicoob, o que é errado, pois as vezes é apenas um teste.

Sem mais, desde já obrigado 

  • Membros Pro
Postado
Em 04/08/2017 at 16:41, fernandoschulz disse:

Boa tarde @José M. S. Junior

Sinceramente não sei por onde estão se baseando para essa informação da versão 087 e 045

Mas vou botar em anexo o manual que acabei de baixar do portal de homologações do sicoob, não sei a data dele, mas se está no portal creio que seja atualizado.

Além disso, eu voltei o número das versões e mandei a remessa no portal novamente, agora validou sem problemas como pode ver na imagem.

image.png.319939ad760408a82407c33109c87be7.png
 

Layout_Para_Troca_de_Informacoes.xls

Fernando,

Bom dia! Conforme o amigo Agnaldo postou o correto é realmente criar uma propriedade para tratar essa questão das versões mesmo, tenho dois clientes que trabalham com sicoob, o banco é o mesmo mas as cooperativas são diferentes e uma utiliza o layout 081  e 040 para o layout do header do lote e a outra já está totalmente atualizada com a última versão da febraban, que é 087. Consequentemente o layout do header do lote muda também. A febraban por vez ou outra inclui novos campos, altera descrições em seu layout e com isso as versões de layout mudam, mas as instituições parecem mudar apenas quando sentem necessidade. ;-)

Até mais,

-- 

Alexandre de Oliveira

Diretor de T.I.

xx16 3811 0155

www.consultatec.com.br - [email protected]

image.png.744a897bbf36127e428c6e687ef05731.png

 

  • 1 mês depois ...
Postado (editado)

Pessoal, bom dia!

Agora de manhã, meu cliente foi importar um retorno e deu erro de conta, fui verificar e, constatei que o tamanho da conta foi alterado para 12, porém no arquivo de retorno ainda está pegando a conta com tamanho 8.

a linha 437 da classe acbrboletobancoob deve ser alterada para: 

rConta   := trim(Copy(ARetorno[0],59,12));

 

Editado por jun_pdv
Postado

Boa tarde.

Tive um problema também para a remessa da Sicoob CNAB400, depois da alteração do tamanho do campo conta de 8 para 12 dígitos.

E agora o banco está retornando o erro referente ao campo Conta.

De acordo com o layout Remessa CNAB400, esse campo deve ser de tamanho 8.

 

Poderiam verificar essa situação também ?

Postado
16 horas atrás, José M. S. Junior disse:

Boa tarde, por favor anexe o arquivo se possível detalhando o erro. Para geração do CNAB400, continua com 8 posições... 

Em anexo os arquivos.

Fiz os seguintes testes:

1º Gerando a remessa onde a propriedade estava 'fpTamanhoConta      := 12;'. Dessa forma gerou o arquivo 'remessa8_Errada.txt'

2º Modifiquei na unit ACBrBancoBancoob a propriedade 'fpTamanhoConta      := 8;. Dessa forma gerou 'remessa8_Correta.txt'

remessa8_Correta.txt

remessa8_Errada.txt

  • Obrigado 1
Postado

Bom dia pessoal.
Esta questão do tamanho da conta muda conforme a cooperativa, para solucionar isso, seria interessante passar o tamanho da conta para o componente, eu já faço isso.
mudei de:
public
//    property TamanhoConta          :Integer read GetTamanhoConta;

para:
 published

    property TamanhoConta    :Integer read GetTamanhoConta write SetTamanhoConta;

Na configuração de cada banco já seto o tamanho da conta. Isso me economizou bastante tempo.
ex:  AcbrBoleto1.Banco.TamanhoConta := StrtoInt( edTamanhoConta.Text);

 

Portanto, a título de sugestão, seria interessante fazer assim. Minha unit ACBrBoleto.

ACBrBoleto.pas

_____________

Prates, Agnaldo

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