Ir para conteúdo
  • Cadastre-se

dev botao

Retorno Cnab 240 Banco Do Brasil - Falta Ocorrência 17


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

Recommended Posts

  • Membros Pro

Olá amigos,

 

Meu cliente recebeu um retorno hoje do Banco do Brasil CNAB 240 e um título veio com uma ocorrência que não consta na unit ACBrBancoBrasil.pas.

O código da ocorrência é 17. Daí procurei no manual do Banco do Brasil (http://www.bb.com.br/docs/pub/emp/empl/dwn/CbrVer04BB.pdf)

na página 21 e realmente tem alguns retornos que não possuem na lista conforme abaixo

function TACBrBancoBrasil.CodOcorrenciaToTipo(const CodOcorrencia:
   Integer ) : TACBrTipoOcorrencia;
begin
  case CodOcorrencia of
    02: Result := toRetornoRegistroConfirmado;
    03: Result := toRetornoComandoRecusado;
    05: Result := toRetornoLiquidadoSemRegistro;
    06: Result := toRetornoLiquidado;
    07: Result := toRetornoLiquidadoPorConta;
//  08: Result := ; // 08-Liquidação por Saldo
    09: Result := toRetornoBaixado;
    10: Result := toRetornoBaixaSolicitada;
    11: Result := toRetornoTituloEmSer;
    12: Result := toRetornoAbatimentoConcedido;
    13: Result := toRetornoAbatimentoCancelado;
    14: Result := toRetornoVencimentoAlterado;
    15: Result := toRetornoLiquidadoEmCartorio;
//  16: Result := ; // 16-Confirmação de alteração de juros de mora
    19: Result := toRetornoRecebimentoInstrucaoProtestar;
    20: Result := toRetornoDebitoEmConta;
    21: Result := toRetornoRecebimentoInstrucaoAlterarNomeSacado;
    22: Result := toRetornoRecebimentoInstrucaoAlterarEnderecoSacado;
    23: Result := toRetornoEncaminhadoACartorio;
    24: Result := toRetornoProtestoSustado;
    25: Result := toRetornoJurosDispensados;
//  26: Result := ; // 26-Alteração do número do título dado pelo Cedente (Seu número) – 10 e 15 posições
    28: Result := toRetornoManutencaoTituloVencido;
    31: Result := toRetornoDescontoConcedido;
    32: Result := toRetornoDescontoCancelado;
//  33: Result := ; // 33-Retificar desconto
//  34: Result := ; // 34-Alterar data para desconto
//  35: Result := ; // 35–Cobrar Multa
//  36: Result := ; // 36–Dispensar Multa
//  37: Result := ; // 37–Dispensar Indexador
//  38: Result := ; // 38–Dispensar prazo limite para recebimento
//  39: Result := ; // 39–Alterar prazo limite para recebimento
    41: Result := toRetornoAcertoControleParticipante;
//  42: Result := ; // 42–Alteração do número do documento do sacado (CNPJ/CPF)
//  44: Result := ; // 44–Título pago com cheque devolvido
    46: Result := toRetornoTituloPagoEmCheque;
    72: Result := toRetornoTipoCobrancaAlterado;
    96: Result := toRetornoDespesasProtesto;
    97: Result := toRetornoDespesasSustacaoProtesto;
    98: Result := toRetornoDebitoCustasAntecipadas;
  else
    Result := toRetornoOutrasOcorrencias;
  end;
end;

Se puderem incluir por favor fico grato.

 

Atc,

Rodrigo Cardilo

Card System Info

[email protected]

Link para o comentário
Compartilhar em outros sites

Acredito ser a melhor opção averiguar junto ao banco primeiro, e questiona-los o motivo de estar retornando e não ter no manual, ai sim em seguida nos reportar se alguma correção deva ser feita e quais, pois o componente é baseado nos manuais que nos são fornecidos.

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Acredito ser a melhor opção averiguar junto ao banco primeiro, e questiona-los o motivo de estar retornando e não ter no manual, ai sim em seguida nos reportar se alguma correção deva ser feita e quais, pois o componente é baseado nos manuais que nos são fornecidos.

 

Olá Isaque,

 

Conforme eu citei anteriormente eu já consultei no manual http://www.bb.com.br/docs/pub/emp/empl/dwn/CbrVer04BB.pdf e na página 21 constam todos os retornos possíveis.

Portanto o banco não tem problema algum e sim o componente ACBR. Eu mesmo fiz a alteração para me atender mas acho que deveria ser mudado no svn.

Página 21 do manual fornecido pelo Banco:

Códigos de movimento de retorno, informados pelo Banco do Brasil: 
02 – Entrada confirmada, 
03 – Entrada Rejeitada, 
04 – Transferência de Carteira/Entrada, 
05 – Transferência de Carteira/Baixa, 
06 – Liquidação, 
09 – Baixa, 
11 – Títulos em Carteira (em ser), 
12 – Confirmação Recebimento Instrução de Abatimento, 
13 – Confirmação Recebimento Instrução de Cancelamento Abatimento, 
14 – Confirmação Recebimento Instrução Alteração de Vencimento, 
15 – Franco de Pagamento, 
17 – Liquidação Após Baixa ou Liquidação Título Não Registrado, 
19 – Confirmação Recebimento Instrução de Protesto, 
20 – Confirmação Recebimento Instrução de Sustação/Cancelamento de Protesto, 
23 – Remessa a Cartório (Aponte em Cartório), 
24 – Retirada de Cartório e Manutenção em Carteira, 
25 – Protestado e Baixado (Baixa por ter sido Protestado), 
26 – Instrução Rejeitada,
27 – Confirmação do Pedido de Alteração de Outros Dados,
28 – Débito de Tarifas/Custas, 
29 – Ocorrências do Sacado, 
30 – Alteração de Dados Rejeitada, 
44 – Título pago com cheque devolvido, 
50 – Título pago com cheque pendente de compensação.

Atc,

 

Rodrigo Cardilo

Rodrigo Cardilo

Card System Info

[email protected]

Link para o comentário
Compartilhar em outros sites

Vou repassar para pessoa responsável pelo componente. 

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link para o comentário
Compartilhar em outros sites

  • 6 meses depois ...

Olá pessoal,

 

Precisei tratar o mesmo problema, pois ainda não está na SVN.

 

Se possível, acredito que a ocorrência 17 deveria ser tratada, pois o componente está considerando a ocorrência 02-Confirmação de Entrada de Título, quando na verdade o arquivo retorno traz a ocorrência 17-Liquidação Após Baixa ou Liquidação de Título Não Registrado.

 

A seguir estão minhas correções:

function TACBrBancoBrasil.TipoOCorrenciaToCod (
   const TipoOcorrencia: TACBrTipoOcorrencia ) : String;
begin
  ...
  toRetornoLiquidadoAposBaixaOuNaoRegistro            : Result := '17';
  ...
end;
function TACBrBancoBrasil.TipoOcorrenciaToDescricao(const TipoOcorrencia: TACBrTipoOcorrencia): String;
var
 CodOcorrencia: Integer;
begin
  ...
  17: Result:='17-Liquidação Após Baixa ou Liquidação de Título Não Registrado' ;
  ...
end;
function TACBrBancoBrasil.CodOcorrenciaToTipo(const CodOcorrencia:
   Integer ) : TACBrTipoOcorrencia;
begin
  ...
  17: Result := toRetornoLiquidadoAposBaixaOuNaoRegistro;
  ...
end;
function TACBrBancoBrasil.CodMotivoRejeicaoToDescricao(const TipoOcorrencia: TACBrTipoOcorrencia; CodMotivo: Integer): String;
begin
  ...
    toRetornoLiquidadoSemRegistro,            // 05-Liquidado sem registro (carteira 17-tipo4)
    toRetornoLiquidado,                       // 06-Liquidação Normal
    toRetornoLiquidadoPorConta,               // 07-Liquidação por Conta
    toRetornoLiquidadoEmCartorio,             // 15-Liquidação em Cartório
    toRetornoTituloPagoEmCheque,              // 46–Título pago com cheque, aguardando compensação
    toRetornoLiquidadoAposBaixaOuNaoRegistro: // 17-Liquidação Após Baixa ou Liquidação de Título Não Registrado
      case CodMotivo of
        01: Result:='01-Liquidação normal';
        02: Result:='02-Liquidação parcial';
        03: Result:='03-Liquidação por saldo';
        04: Result:='04-Liquidação com cheque a compensar';
        05: Result:='05-Liquidação de título sem registro (carteira 7 tipo 4)';
        07: Result:='07-Liquidação na apresentação';
        09: Result:='09-Liquidação em cartório';
      end;
    toRetornoRegistroConfirmado: //02 (Entrada)
  ...
end;

Direcionei para os mesmos motivos das outras liquidações.

Por favor, se possível analisem se está correto.

 

Obrigado.

Editado por RobertoSchuster
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Administradores

Bom dia.

 

Favor anexar 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

  • 2 semanas depois ...

Bom dia.

 

Favor anexar a unit alterada.

 

Att.

 

Juliana, desculpe a demora.

 

Postei a unit com esta alteração, juntamente com outras, neste tópico: 

 

Obrigado.

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 3371 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...
The popup will be closed in 10 segundos...