Legal Alexandre muito boa diga, vou implementar em meu sistema a dia de gavação de LOG... Vivendo e apredendo...
Em 24/01/08, Alexandre <[EMAIL PROTECTED]> escreveu: > > Olá, > > Hehehe, está correto estimado. Indo um pouco mais além, pode usar alguns > eventos do componente. > > // Mostrando quando o usuário se logou pela última vez: > procedure TForm1.UserControlLoginSucess(Sender: TObject; IdUser: Integer; > Usuario, Nome, Senha, Email: String; > Privilegiado: Boolean); > var > LastLogin : TDateTime; > StrData : String; > begin > //Pesquisar ultimo login do usuario > qryPesquisa.Close; > qryPesquisa.SQL.Text := 'Select Max(Data) as Data from ' + > UserControl.LogControl.TableLog + > ' where IdUser = ' + IntToStr(IdUser) + > ' and MSG like ' + QuotedStr('Entrada no sistema%'); > qryPesquisa.Open; > StrData := qryPesquisa.FieldByName('data').asString; > if StrData <> '' then begin > LastLogin := EncodeDate( StrToInt(Copy(StrData,1,4)), > StrToInt(Copy(StrData,5,2)), StrToInt(Copy(StrData,7,2)) ) + > EncodeTime( StrToInt(Copy(StrData,9,2)), > StrToInt(Copy(StrData,11,2)), StrToInt(Copy(StrData,13,2)),0); > MessageDlg('Seu último Login foi em '+ FormatDateTime('DD/MM/YYYY', > LastLogin)+' '+ FormatDateTime('hh:mm', LastLogin), mtInformation, [mbOK], > 0); > end else MessageDlg('Bem vindo!'+#13+#10+'Este é seu primeiro Login no > sistema.', mtInformation, [mbOK], 0); > > qryPesquisa.Close; > > // Logar este login do usuario > UserControl.Log(Format('Entrada no sistema usuário: "%s" nome: > "%s"',[Usuario, Nome]),0); > end; > > // Simplesmente pegando os dados do usuário logado > procedure TForm1.UserControlLoginSucess(Sender: TObject; IdUser: Integer; > Usuario, Nome, Senha, Email: String; > Privilegiado: Boolean); > begin > globalIdUser := IdUser; > globalNameUser := Nome; > > // Logar este login do usuario > UserControl.Log(Format('Ultimo login do usuário: "%s" nome: > "%s"',[Usuario, Nome]),0); > end; > > // Logando usuário que fica errando senha, pode controlar pela propriedade > MaxLoginAttemps > // no create do form cria iTentativas := 1 e no loginsucess volta > iTentativas pra 1; > procedure TForm1.UserControlLoginError(Sender: TObject; Usuario, Senha: > String); > var > sTentativas : String; > begin > sTentativas := Trim(IntToStr(iTentativas)) + '/' + > IntToStr(UserControl.Login.MaxLoginAttempts); > UserControl.Log(Format('Erro de login do usuário: "%s" senha: "%s" > tentativa : "%s"',[Usuario, Senha, sTentativas]),0); > end; > > > Saudações. > > Alexandre. > > -----Mensagem original----- > De: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br> [mailto: > delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br>] Em > nome de Jorge Ericsson > Enviada em: quinta-feira, 24 de janeiro de 2008 03:00 > Para: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br> > Assunto: Re: [delphi-br] Usuário do UserControl > > OI Júnior, > > Para retornar o nome do usuário que logou no use control eu uso por > exemplo: > > vUsuario := UserControl.CurrentUser.UserName; statusbar.Panels[0].Text := > ' > Usuário: ' + qUsuario; > > ou buscando direto na tabela que armazena os dados do usuário da seguinte > forma: > vCodUsuario := UserControl.TableUsers.FieldUserID; > > Se vc pressionar após o ponto (Exe: UserControl.TableUsers. ) o delphi te > retornar todos os campos que possui a tabela Users para que que vc atribua > da melhor forma possivel. > > Espero não ter complicado muito, mais simplifiquei ao máximo... > > Em 24/01/08, Junior <[EMAIL PROTECTED] <red.mosquito%40uol.com.br>> > escreveu: > > > > Como faço pra descobrir qual o usuário que logou no sistema, já que > > o controle é feito pelo User Control ? > > > > Alguém aí que usa o UC exibe em algum lugar (form/statusbar/etc) o > > nome do usuário ? > > > > Obrigado > > > > Junior > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > -- > Jorge Ericsson S. Pinheiro > Analista/Projetista de Sistemas > Ericsson Sistemas e Soluções > http://www.jericsson.com.br > 61 9227.4785 / 3965.2992 / 3039.1768 > Brasília - DF > > > -- Jorge Ericsson S. Pinheiro Analista/Projetista de Sistemas Ericsson Sistemas e Soluções http://www.jericsson.com.br 61 9227.4785 / 3965.2992 / 3039.1768 Brasília - DF [As partes desta mensagem que não continham texto foram removidas]