Ir para conteúdo
  • Cadastre-se

dev botao

Data Arquivo Retorno Santader


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

Recommended Posts

  • Membros Pro
Postado

Ola, bom dia. 

Estou importando o arquivo de retorno no banco Santander no Layout 400. 

 

Quando eu peço para o componente me retornar a Data do Arquivo, ele me retorno uma data inválida 30/12/1899.

 

Verificando o codigo no layout 240, percebi que tem uma atributo a Data do arquivo

 

Na procedure TACBrBancoSantander.LerRetorno240(ARetorno: TStringList);

 

Na linha 869 

  ACBrBanco.ACBrBoleto.DataArquivo := StringToDateTimeDef(Copy(ARetorno[0],144,2)+'/'+

                                                                                                     Copy(ARetorno[0],146,2)+'/'+
                                                                                                     Copy(ARetorno[0],148,4),0, 'DD/MM/YYYY' );

 

Nesse exemplo do Layout 240 ele atribui a data do arquivo.

 

Na teoria teria que fazer o mesmo para o layout 400.

Fazendo aqui eu Implementei  o codigo na Linha 960 colocando:

 

ACBrBanco.ACBrBoleto.DataArquivo   := StringToDateTimeDef(Copy(ARetorno[0],95,2)+'/'+
                                                                                                     Copy(ARetorno[0],97,2)+'/'+
                                                                                                     Copy(ARetorno[0],99,2),0, 'DD/MM/YY' );
 
Fazendo esse processo, ele me retorna a data do arquivo.
 
Desde já agradeço.

 

 

 

  • Fundadores
Postado

A data no arquivo é válida ?

 

O valor "30/12/1899" equivale a uma Data coom o valor = 0  (TDateTime são iguais a Double para o Delphi)

 

Isso está ocorrendo porque a função StringToDateTimeDef não conseguir converter o valor, e por isso usa o valor do segundo parâmetro, que é igual a "0"

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

  • Membros Pro
Postado

Ola, bom dia.

 

Daniel, acho que não me entendeu.

 

A data do arquivo ele retorno sempre "0", porque na procedure LerRetorno400, não está implementado a Função de buscar a data do arquivo.

 

E quando eu peço para o componente me retornar a data "ACBrBoleto.DataArquivo", ele me retorna "0", pois não tem o código abaixo na procedure LerRetorno400.

 

ACBrBanco.ACBrBoleto.DataArquivo   := StringToDateTimeDef(Copy(ARetorno[0],95,2)+'/'+
                                                                                                     Copy(ARetorno[0],97,2)+'/'+
                                                                                                     Copy(ARetorno[0],99,2),0, 'DD/MM/YY' );
  • Membros Pro
Postado

Segue em Anexo a Unit modificada nas linhas 961, 962, 963.

 

Código Implementado.

 

DataArquivo   := StringToDateTimeDef(Copy(ARetorno[0],95,2)+'/'+
                                                              Copy(ARetorno[0],97,2)+'/'+
                                                              Copy(ARetorno[0],99,2),0, 'DD/MM/YY' );

ACBrBancoSantander.pas

  • 5 semanas depois ...
  • Administradores
  • Solution
Postado

Bom dia.

 

Alteração disponível no svn.

 

Att.

  • Curtir 2
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á 3625 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...