andersondanilo / CnabPHP

Projeto para criar arquivos de remessas e processar arquivos de retorno no formato CNAB, utilizado nos bancos geralmente para boleto bancário.
MIT License
329 stars 201 forks source link

Leiaute CNAB 240 - Segmento P #118

Closed rafaelbaiolim closed 6 years ago

rafaelbaiolim commented 6 years ago

Atualmente o código do Cnab240/Arquivo.php esta limitando um total de 10 posições para convênios de 7 dígitos: https://github.com/andersondanilo/CnabPHP/blob/a8917dcb0c0e9727a0907a3c0affaeca657db4b3/src/Cnab/Remessa/Cnab240/Arquivo.php#L376

O correto não seria 17 posições ? (7 - convênio + 10 - Sequêncial de controle): http://www.bb.com.br/docs/pub/emp/empl/dwn/CbrVer04BB.pdf

c) Para número de convênio de 7 posições (acima de 
1.000.000) informar o nosso número com 
17 posições sem DV, sendo as 7 primeiras posições o
 número do convênio e as 10 posições seguintes 
um número sequencial para controle. Esse é o padrão
 mais utilizado atualmente. 
Exemplo: CONVÊNIOS DE 1.000.000 ATÉ 9.999.999 
12345671234567890 
CCCCCCCSSSSSSSSSS 
Onde:     C = Convênio     S = Sequencial  
rafaelbaiolim commented 6 years ago

Estou fechando esta issue porque eu percebi que para o campo do "nosso número" está apenas sendo utilizado a parte referete ao número sequêncial (S), o convênio já vem preenchido:

https://github.com/andersondanilo/CnabPHP/blob/a8917dcb0c0e9727a0907a3c0affaeca657db4b3/src/Cnab/Remessa/Cnab240/Arquivo.php#L378

Acredito que colocar está informação do campo sequencial na exception seria uma melhora.