Alguem me ajuda neste codigo...

Delphi

26/08/2015

Olá coloquei esse codigo no meu Botao ENTRAR da minha tela de login, e quero que ele possa localizar o Usuario e Senha, na Minha tabela, 'Login' ou 'Funcionarios', fiz esse codigo ai mais so ta localizando em Funcionarios, queria que funcionasse com as localizações Login ou Funcionarios, Alguem pode me ajudar ?

Obrigado!

Aqui esta o codigo....

[img]http://arquivo.devmedia.com.br/forum/imagem/442536-20150826-143315.jpg[/img]


procedure TLogin.sBTEntarClick(Sender: TObject);
begin
if (Edit1.Text = '') and (Edit2.Text = '') then
ShowMessage('Preencha os Campos')
else
if dm.Login.Locate('Usuario',Edit1.Text,[loCaseInsensitive, loPartialKey]) then
begin
if dm.Login.Locate('Senha',Edit2.Text,[])then
end
else
if dm.Funcionarios.Locate('Usuario',Edit1.Text,[loCaseInsensitive, loPartialKey]) then
begin
if dm.Funcionarios.Locate('Senha',Edit2.Text,[]) then
begin
ShowMessage('Seja Bem Vindo');
Login.Hide;
Tela_Principal.Show;
end
else
begin
ShowMessage('Usuario ou senha incorreto.');
Edit1.Clear;
Edit2.Clear;
Edit1.SetFocus;
end;

end;
end;
Geremias

Geremias

Curtidas 0

Respostas

Raimundo Pereira

Raimundo Pereira

26/08/2015

Geremias,

public
{ Public declarations }
VAR LOGADO:STRING; >>
end;

Coloque apenas no Auto-create forms:

DM
Tela_principal

Os demais forms no Available Forms:
Login

-----------------------------------------------------------
Coloque um Time no Form_Principal:

procedure TTela_Principal.VLOGTimer(Sender: TObject);
begin
if not (LOGADO='S') then
BEGIN
VLOG.Enabled:=FALSE;

Application.CreateForm(TLOGIN,LOGIN);
LOGIN.ShowModal;
LOGIN.release;


END;
-----------------------------------------
procedure TLogin.sBTEntarClick(Sender: TObject);
begin
if (Edit1.Text = '') and (Edit2.Text = '') then
ShowMessage('Preencha os Campos')
else
if dm.Login.Locate('Usuario',Edit1.Text,[loCaseInsensitive, loPartialKey]) then
begin
if dm.Login.Locate('Senha',Edit2.Text,[])then
end
else
if dm.Funcionarios.Locate('Usuario',Edit1.Text,[loCaseInsensitive, loPartialKey]) then
begin
if dm.Funcionarios.Locate('Senha',Edit2.Text,[]) then
begin
Tela_Principal.LOGADO:='S';
CLOSE;
end
else
begin
ShowMessage('Usuario ou senha incorreto.');
Edit1.Clear;
Edit2.Clear;
Edit1.SetFocus;
end;

end;
end;

Toda vez que quiser fazer logoff você pode apenas limpar a variável o sistema vai reabrir a tela de senha.


OBS:

procedure TLogin.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Tela_Principal.VLOG.Enabled:=true;
end;
GOSTEI 0
Raimundo Pereira

Raimundo Pereira

26/08/2015

[img]http://arquivo.devmedia.com.br/forum/imagem/437747-20150826-153356.jpg[/img]Tentar postar a IMG
GOSTEI 0
Geremias

Geremias

26/08/2015

Geremias,

public
{ Public declarations }
VAR LOGADO:STRING; >>
end;

Coloque apenas no Auto-create forms:

DM
Tela_principal

Os demais forms no Available Forms:
Login

-----------------------------------------------------------
Coloque um Time no Form_Principal:

procedure TTela_Principal.VLOGTimer(Sender: TObject);
begin
if not (LOGADO='S') then
BEGIN
VLOG.Enabled:=FALSE;

Application.CreateForm(TLOGIN,LOGIN);
LOGIN.ShowModal;
LOGIN.release;


END;
-----------------------------------------
procedure TLogin.sBTEntarClick(Sender: TObject);
begin
if (Edit1.Text = '') and (Edit2.Text = '') then
ShowMessage('Preencha os Campos')
else
if dm.Login.Locate('Usuario',Edit1.Text,[loCaseInsensitive, loPartialKey]) then
begin
if dm.Login.Locate('Senha',Edit2.Text,[])then
end
else
if dm.Funcionarios.Locate('Usuario',Edit1.Text,[loCaseInsensitive, loPartialKey]) then
begin
if dm.Funcionarios.Locate('Senha',Edit2.Text,[]) then
begin
Tela_Principal.LOGADO:='S';
CLOSE;
end
else
begin
ShowMessage('Usuario ou senha incorreto.');
Edit1.Clear;
Edit2.Clear;
Edit1.SetFocus;
end;

end;
end;

Toda vez que quiser fazer logoff você pode apenas limpar a variável o sistema vai reabrir a tela de senha.


OBS:

procedure TLogin.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Tela_Principal.VLOG.Enabled:=true;
end;





Não entendi esse " VLOG" e esse "LOGADO" o que isso significa copiei essa codificação ai e deu erro?
GOSTEI 0
Raimundo Pereira

Raimundo Pereira

26/08/2015

LOGADO é uma variável

Coloque ela dentro de public
{ Public declarations }

VAR LOGADO:STRING;
end;

Coloque um Timer na Tela_Principal e renomeie a propriedade name para VLOG

No Ontime do VLOG

begin
if not (LOGADO='S') then
BEGIN
VLOG.Enabled:=FALSE;
Application.CreateForm(TLOGIN,LOGIN);
LOGIN.ShowModal;
LOGIN.release;
END;
GOSTEI 0
POSTAR