Ir para conteúdo
  • Cadastre-se

dev botao

Recommended Posts

Postado

Quando tento ler o retorno do banco Sofisa está dando um na função GetTipoCobranca em StrToInt(Carteira) no bloco abaixo Devido a Carteira nesse momento estar em branco, ou seja a Carteira que está nos registros Detalhe nem foi lida ainda.

Provisoriamente eu fiz uma alteração no fonte ACBrBoleto.pas assumindo cobBancoSofisaSantander só para não dar erro (Isso porque o meu cliente está usando Sofisa Santander).

637: begin
             if StrToInt(Carteira) = 109 then
               Result := cobBancoSofisaItau
             else
               Result := cobBancoSofisaSantander;
         end;

 

Não sei se vale a pena colocar o que eu fiz nos fontes do ACBrBoleto já que não é 100%

Ficou assim:

    637: begin
           if Carteira = '' then                                             
             Result := cobBancoSofisaSantander
           else
             if StrToInt(Carteira) = 109 then
               Result := cobBancoSofisaItau
             else
               Result := cobBancoSofisaSantander;
         end;
 

  • Moderadores
Postado
16 minutos atrás, Luiz Carlos Rodrigues disse:

Bom dia

O teste é simples (Arquivo anexo):

ACBrBoleto.NomeArqRetorno  := edArquivo.Text;
ACBrBoleto.LeCedenteRetorno:= True;
ACBrBoleto.LerRetorno;
 

PV820358_812_SEC_101_SOFISA.18O 2.36 kB · 0 downloads

desmarca a opção lecedente e veja se resolve

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Bom dia.

Eu já havia feito isso mais ocorre uma exceção conforme o código abaixo no ACBrBoleto

 if ( IntToStrZero(Banco.Numero, 3) <> BancoRetorno )
        and ( IntToStrZero(Banco.NumeroCorrespondente, 3) <> BancoRetorno )  then
       if LeCedenteRetorno then
         Banco.TipoCobranca := GetTipoCobranca( StrToIntDef(BancoRetorno, 0))
       else
         raise Exception.Create( ACBrStr( 'Arquivo de retorno de banco diferente do Cedente'));

Postado

Não é nem pelo manual, Quando vem no Retorno o Código do Banco 637 (Sofisa)

o Componente ACBrBoleto está Verificando se a Carteira é 109, Executa Banco Itaú, caso Contrário Executa Santander,

só que nesse momento a carteira ainda não foi alimentada pois a mesma fica nos Registros Detalhe e não no Header,

ou seja teria que depois de achar o código do banco, achar a carteira no Detalhe para depois fazer a verificação se executa Itaú ou Santander.

Provavelmente isso vai acontecer também com o Banco 643 (Pine) pois a condição é a mesma do Sofisa só que nesse caso executa BancoPineBradesco ou BancoPine

  • Moderadores
Postado
36 minutos atrás, Luiz Carlos Rodrigues disse:

Não é nem pelo manual, Quando vem no Retorno o Código do Banco 637 (Sofisa)

o Componente ACBrBoleto está Verificando se a Carteira é 109, Executa Banco Itaú, caso Contrário Executa Santander,

só que nesse momento a carteira ainda não foi alimentada pois a mesma fica nos Registros Detalhe e não no Header,

ou seja teria que depois de achar o código do banco, achar a carteira no Detalhe para depois fazer a verificação se executa Itaú ou Santander.

Provavelmente isso vai acontecer também com o Banco 643 (Pine) pois a condição é a mesma do Sofisa só que nesse caso executa BancoPineBradesco ou BancoPine

sugira então uma possível correção anexando a unit modificada e validaremos

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Até poderia fazer a mudança o problema é pelo que estou vendo tanto Sofisa Itaú quanto Sofisa Santander a posição da carteira é a mesma e pode vir os mesmos códigos,

ou seja pode vir o número 112 por exemplo que tem no Sofisa Itaú quanto no Sofisa Santander, como saber qual executar ?

Também não dá para pegar pelo Número do Banco na Câmara de Compensação porque vem vários códigos diferentes.

 

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.