Ir para conteúdo
  • Cadastre-se

dev botao

tratamento de rejeicao


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

Recommended Posts

  • Membros Pro
Postado

boa noite a todos

estou necessitando de fazer o tratamento das rejeicoes do retorno do cnab240 do banco do brasil, porem nao sei como fazer, alguem porem me passar como devo fazer e se esta rotina seria igual para todos os bancos

 

obrigado

  • Moderadores
Postado

Bom dia

Para a classe de cada Banco existe a função CodMotivoRejeicaoToDescricao  que retorna o tipo da Ocorrência de Rejeição, esses códigos variam de Banco para Banco por isso cada classe tem a sua função... Acredito que seja essa função que precise para fazer o tratamento...

Também pode fazer uso das funções de Conversões das classe:

CodOcorrenciaToTipo() Retorna o tipo de ocorrência  passando como parâmetro o código

TipoOCorrenciaToCod() Retorna o Código da ocorrência passando como parâmetro o Tipo

TipoOcorrenciaToDescricao() Retorna a descrição da ocorrência passando como parâmetro o Tipo

 

Se verificar na função LerRetorno240 do BB note que também já existe validação de ocorrência de rejeição, onde alimenta as propriedades: MotivoRejeicaoComando e DescricaoMotivoRejeicaoComando...

Espero ter ajudado.

 

  • Curtir 2
Consultor SAC ACBr

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

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

  • Membros Pro
Postado
9 horas atrás, José M. S. Junior disse:

Bom dia

Para a classe de cada Banco existe a função CodMotivoRejeicaoToDescricao  que retorna o tipo da Ocorrência de Rejeição, esses códigos variam de Banco para Banco por isso cada classe tem a sua função... Acredito que seja essa função que precise para fazer o tratamento...

Também pode fazer uso das funções de Conversões das classe:

CodOcorrenciaToTipo() Retorna o tipo de ocorrência  passando como parâmetro o código

TipoOCorrenciaToCod() Retorna o Código da ocorrência passando como parâmetro o Tipo

TipoOcorrenciaToDescricao() Retorna a descrição da ocorrência passando como parâmetro o Tipo

 

Se verificar na função LerRetorno240 do BB note que também já existe validação de ocorrência de rejeição, onde alimenta as propriedades: MotivoRejeicaoComando e DescricaoMotivoRejeicaoComando...

Espero ter ajudado.

 

boa tarde Jose

e desculpe minha burrice, mas nao estou conseguindo ver como fazer esta verificacao, voce pode me dar um exemplo

 

obrigado

  • Moderadores
Postado

O que exatamente precisa validar? Creio que na sua aplicação ao ler o arquivo de retorno, precise apenas validar as propriedades (MotivoRejeicaoComando e DescricaoMotivoRejeicaoComando). Chegou a verificar no arquivo "Retorno.ini", que é gerado após a leitura do retorno,  como está sendo preenchido estes campos?

  • Curtir 1
Consultor SAC ACBr

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

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

  • Membros Pro
Postado
2 minutos atrás, José M. S. Junior disse:

O que exatamente precisa validar? Creio que na sua aplicação ao ler o arquivo de retorno, precise apenas validar as propriedades (MotivoRejeicaoComando e DescricaoMotivoRejeicaoComando). Chegou a verificar no arquivo "Retorno.ini", que é gerado após a leitura do retorno,  como está sendo preenchido estes campos?

bom dia Jose

na verdade minha aplica esta +- assim no momento do retorno

              if ACBrBoleto1.ListadeBoletos.Objects.OcorrenciaOriginal.CodigoBanco = '02' then
                  begin
                  Dm_BD.ds_contasOCORRENCIA1.AsString    := 'Entrada confirmada';
                  Dm_BD.ds_contasDT_EMISSAO.AsDateTime   := ACBrBoleto1.ListadeBoletos.Objects.DataOcorrencia;
                end;

               if ACBrBoleto1.ListadeBoletos.Objects.OcorrenciaOriginal.CodigoBanco = '03' then
                  begin
                  Dm_BD.ds_contasOCORRENCIA1.AsString    := 'Entrada Rejeitada';
                  Dm_BD.ds_contasDT_EMISSAO.AsDateTime   := ACBrBoleto1.ListadeBoletos.Objects.mDataOcorrencia;
                  Dm_BD.ds_contasOCORRENCIA2.AsString    := ACBrBoleto1.ListadeBoletos.Objects.m
               end;

eu estou necessitando fazer a informacao da rejeicao ser gravada no campo Dm_BD.ds_contasOCORRENCIA2.AsString em forma de descricao, nao sei se consegui mostrar o que preciso

 

  • Moderadores
  • Solution
Postado
2 horas atrás, ultrasevenjundiai disse:

eu estou necessitando fazer a informacao da rejeicao ser gravada no campo Dm_BD.ds_contasOCORRENCIA2.AsString em forma de descricao

Conforme citei acima, na função de leitura do retorno, a descrição da ocorrencia já é tratada na propriedade "DescricaoMotivoRejeicaoComando", então ao percorrer a lista de Retorno de Títulos, acredito que poderia fazer algo como:

   for I := 0 to ACBrBoleto1.ListadeBoletos.Count -1 do
   begin
     ...
     if ACBrBoleto1.ListadeBoletos[I].OcorrenciaOriginal.Tipo = toRetornoRegistroRecusado then
     begin
       Dm_BD.ds_contasOCORRENCIA1.AsString := ACBrBoleto1.ListadeBoletos[I].MotivoRejeicaoComando.Text;
       Dm_BD.ds_contasOCORRENCIA2.AsString := ACBrBoleto1.ListadeBoletos[I].DescricaoMotivoRejeicaoComando.Text;
     end;
	...
   end;  

 

  • Curtir 1
Consultor SAC ACBr

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

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

  • Membros Pro
Postado
Em 07/01/2019 at 23:47, Wanderson Alves disse:

sou freelance pra que tipo de serviço precisa meus contatos wandersonkd skype whats 66 992180850

 

1 hora atrás, José M. S. Junior disse:

Conforme citei acima, na função de leitura do retorno, a descrição da ocorrencia já é tratada na propriedade "DescricaoMotivoRejeicaoComando", então ao percorrer a lista de Retorno de Títulos, acredito que poderia fazer algo como:


   for I := 0 to ACBrBoleto1.ListadeBoletos.Count -1 do
   begin
     ...
     if ACBrBoleto1.ListadeBoletos[I].OcorrenciaOriginal.Tipo = toRetornoRegistroRecusado then
     begin
       Dm_BD.ds_contasOCORRENCIA1.AsString := ACBrBoleto1.ListadeBoletos[I].MotivoRejeicaoComando.Text;
       Dm_BD.ds_contasOCORRENCIA2.AsString := ACBrBoleto1.ListadeBoletos[I].DescricaoMotivoRejeicaoComando.Text;
     end;
	...
   end;  

 

Obrigado Jose vou tentar e te retorno em seguida

  • Curtir 1
  • Membros Pro
Postado
12 horas atrás, José M. S. Junior disse:

Conforme citei acima, na função de leitura do retorno, a descrição da ocorrencia já é tratada na propriedade "DescricaoMotivoRejeicaoComando", então ao percorrer a lista de Retorno de Títulos, acredito que poderia fazer algo como:


   for I := 0 to ACBrBoleto1.ListadeBoletos.Count -1 do
   begin
     ...
     if ACBrBoleto1.ListadeBoletos[I].OcorrenciaOriginal.Tipo = toRetornoRegistroRecusado then
     begin
       Dm_BD.ds_contasOCORRENCIA1.AsString := ACBrBoleto1.ListadeBoletos[I].MotivoRejeicaoComando.Text;
       Dm_BD.ds_contasOCORRENCIA2.AsString := ACBrBoleto1.ListadeBoletos[I].DescricaoMotivoRejeicaoComando.Text;
     end;
	...
   end;  

 

Bom dia Jose - RESOLVIDO

 

Obrigado, deu certo, desculpa incomodar

  • Curtir 2
  • Administradores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

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

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

The popup will be closed in 10 segundos...