Fórum Classe TDBXReader retorna data com ano incorreto #413896
10/03/2012
0
Na minha classe de usuários, no método login, ao retornar os dados do usuário, um campo que do tipo Date está com o ano errado.
Na tabela (FB) o valor é: 10/03/2012, mas retorna 10/03/3911.
O código do método login é:
Command.Text := SELECT * FROM USUARIOS WHERE LOGIN = + QuotedStr(AUsuario)+
and SENHA = + QuotedStr(sMD5);
Reader := Command.ExecuteQuery;
if Reader.Next then
begin
FID := Reader.Value[00].GetInt32;
FPerfilID := Reader.Value[01].GetInt32;
FNome := Reader.Value[02].GetAnsiString;
FLogin := Reader.Value[04].GetAnsiString;
FSenha := Reader.Value[05].GetAnsiString;
FAltSen := Reader.Value[08].GetAnsiString;
FSenhaExpira := Reader.Value[09].GetAnsiString;
FDtExpiracao := Reader.Value[10].GetDate;
FBloqueado := Reader.Value[11].GetAnsiString;
s.Add(IntToStr(FID) +-+inttostr(FPerfilID)+-+fnome+-+flogin+-+
fsenha+- + FAltSen + - + fsenhaexpira + - + datetostr(FDtExpiracao) + -+
fbloqueado);
s.SaveToFile(Login.txt);
s.Free;
FLogado := True;
FAcoes := Acoes;
if LoadProfile then
Result := True
else
MessageDlg(Não foi possível carregar o perfil !!,mtWarning,[mbOK],0);
end;
O que pode ser ?
Grato,
Marcos
Marcos
Curtir tópico
+ 0Posts
11/03/2012
Marcos
Gostei + 0
25/03/2012
Marco Salles
post novamente o seu problema
qualquer coisa veja esta séried e artigos
http://marcosalles.wordpress.com/?s=TDBXREader
Gostei + 0
04/05/2012
Luiz Silva
Estou com um problema parecido. Estou usando DBExpress com DataSnap.
No meu caso, está sendo retornado uma coluna varchar com tamanho menor que o real.
Ex:
TipoDocumnento
codigo numeric(20,0)
descricao varchar(50)
mascara varchar(30)
select mascara from TipoDocumento -- me retorna o campo mascara com tamanho 20
Já certifiquei que nenhum componente(dbEdit, etc) está limitando o tamanho...
Será que alguém tem alguma luz???
Obrigado
Carlos Eduardo
Gostei + 0
05/02/2015
Landerson Santos
if Reader.Next then
begin
Reader.Reset;
TDBXClientDataSetReader.CopyReaderToClientDataSet(Reader, cdsDados);
if cdsDados.RecordCount > 0 then
cdsDados.First;
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)