Converter Rotina para FireDac
Boa tarde, gostaria de saber como faço para alterar esse codigo para firedadac
Essa dúvida foi gerada a partir de um comentário no artigo Rad Studio 2007-DBX4 e Firebird 2.0-Aplicação comercial de vendas do Inicio ao Fim-Parte 20-Aprendendo as classes do DBX4 para conexão com o banco de dados
function TUsuario.Login(AUsuario, ASenha: string;
Acoes: TCustomActionList): Boolean;
var
DBCon: TDBXConnection;
Command: TDBXCommand;
Reader: TDBXReader;
begin
DBCon := TDBXConnectionFactory.GetConnectionFactory.GetConnection('SVSISTEMA', 'SYSDBA','masterkey');
Command:= DBCon.CreateCommand;
Command.Text:= 'SELECT * FROM USUARIOS WHERE LOGIN = '+QuotedStr(AUsuario)+
' and SENHA = '+QuotedStr(ASenha);
Reader:= Command.ExecuteQuery;
if Reader.Next then
begin
FID := Reader.Value[0].GetInt32;
FPerfilID := Reader.Value[1].GetInt32;
FNome := Reader.Value[2].GetAnsiString;
FLogin := Reader.Value[4].GetAnsiString;
FSenha := Reader.Value[5].GetAnsiString;
FLogado := True;
FAcoes := Acoes;
if LoadProfile then
Result := True
else
MessageDlg('Não foi possivel carregar o perfil !!', mtWarning, [mbOK], 0);
end;
end;Essa dúvida foi gerada a partir de um comentário no artigo Rad Studio 2007-DBX4 e Firebird 2.0-Aplicação comercial de vendas do Inicio ao Fim-Parte 20-Aprendendo as classes do DBX4 para conexão com o banco de dados
Nei
Curtidas 0
Melhor post
Mais Respostas
Nei
27/02/2015
bom dia thiago,sou novato em programação. conexao normal consigo fazer queria saber qual componente do firedac substitui o TDBXReader, e como usar esse componente?
GOSTEI 0
Vinicius Diniz
27/02/2015
Bom eu fiz desse jeito:
Caso outros passem por esse mesmo problema, desculpe qualquer coisa ai pessoal eu ainda to pegando a manha no firedac.
function TUser.LoginRecive(AUser, APassword: String;
AActions: TCustomActionList): Boolean;
var
DBConnection : TFDConnection;
SQLQuery : TFDQuery;
ExecCondition : Boolean;
begin
DBConnection := TConnection.GetConnection;
SQLQuery := TFDQuery.Create(DBConnection);
SQLQuery.Connection := DBConnection;
SQLQuery.SQL.Text := 'SELECT * FROM VUSUARIO WHERE LOGIN ='+QuotedStr(AUser)+
'AND SENHA ='+QuotedStr(APassword);
ExecCondition := SQLQuery.OpenOrExecute;
if (ExecCondition = True) and (SQLQuery.RowsAffected = 1)then
begin
FCode := SQLQuery.FieldByName('CODUSUARIO').AsInteger;
FCodeProfile := SQLQuery.FieldByName('CODPERFIL').AsInteger;
FName := SQLQuery.FieldByName('NOME').AsString;
FLogin := SQLQuery.FieldByName('LOGIN').AsString;
FPassword := SQLQuery.FieldByName('SENHA').AsString;
FCheckin := True;
Result := True;
end;
FreeAndNil(SQLQuery);
end;
function TUser.LoadProfile: Boolean;
begin
Caso outros passem por esse mesmo problema, desculpe qualquer coisa ai pessoal eu ainda to pegando a manha no firedac.
function TUser.LoginRecive(AUser, APassword: String;
AActions: TCustomActionList): Boolean;
var
DBConnection : TFDConnection;
SQLQuery : TFDQuery;
ExecCondition : Boolean;
begin
DBConnection := TConnection.GetConnection;
SQLQuery := TFDQuery.Create(DBConnection);
SQLQuery.Connection := DBConnection;
SQLQuery.SQL.Text := 'SELECT * FROM VUSUARIO WHERE LOGIN ='+QuotedStr(AUser)+
'AND SENHA ='+QuotedStr(APassword);
ExecCondition := SQLQuery.OpenOrExecute;
if (ExecCondition = True) and (SQLQuery.RowsAffected = 1)then
begin
FCode := SQLQuery.FieldByName('CODUSUARIO').AsInteger;
FCodeProfile := SQLQuery.FieldByName('CODPERFIL').AsInteger;
FName := SQLQuery.FieldByName('NOME').AsString;
FLogin := SQLQuery.FieldByName('LOGIN').AsString;
FPassword := SQLQuery.FieldByName('SENHA').AsString;
FCheckin := True;
Result := True;
end;
FreeAndNil(SQLQuery);
end;
function TUser.LoadProfile: Boolean;
begin
GOSTEI 0