DELPHI XE 10.2, carregar uma DBGRID, apos o usuário logar no sistema

08/05/2018

5

Boa noite pessoal,

Sou novo em delphi e estou começando a me aventurar, gostaria que se possivel de um apoio de voces, segue abaixo a situação;

estou utilizando DELPHI XE 10.2 AND C++ BUILDER 10.2 UPDATE 2, banco mysql , ja conseguir normalmente efetuar a parte de conexao com o banco e tambem a sua validação
com base nas informações do usuario que esta cadastrado no banco,apos o usuario logar eu faço o direcionamento do mesmo para uma tela aonde tem o dbgrid, porem gostaria de carregar algumas informaçoes desse usuario
no DBGRID apos ele logar, e é nesse ponto que estou tendo dificuldade, acredito que isso seja coisa aparentemente simples, para voces que ja tem a vivencia da linguagem no dia a dia.
Agradeço desde já pela atenção.
Responder

Post mais votado

08/05/2018

Fala jovem, tranquilo?

Então, partindo do pressuposto que vc ja conecta no banco, como disse, você pode fazer o seguinte:
No onShow do formulário, vc faz o select que vc quer do usuário e abre a query. Desta forma as informações vão aparecer no grid.

Lembrando que o grid tem que estar ligado a um dataSource e este deve estar ligado na Query ou clientDataSet.

Qualquer coisa avisa ai o resultado.

Bons códigos;
Responder

Mais Posts

08/05/2018

Moab Fernandes

boa tarde Roberto, desde já obrigado pela atenção.
Então é complicado quando vc ainda não tem o domínio sobre a linguagem, mas tou correndo atras, sobre o problema em questão já estou quebrando
a cabeca a quase uma semana... rsrsrs, entao
eu já fiz as ligações, eu crei um DATAMODULE nele coloquei apenas um TSQLConnection, fiz as ligações certinhas com o banco de dados(mysql),crei um outro
DATAMODULE que contem os objetos TSQLDATSET,TCLIENTDATASET e O TDATASETPROVIDER,
fiz as ligações entre eles da forma correta, tanto é que em tempo de desenvolvimento, no dbgrid já aparece as informações da tabela, tentei fazer uma chamada no
evento onShow, porem deu certo, e é justamente nessa questão que estou tendo dificuldade, pois apos o usuario logar eu preciso pegar o id do mesmo, e com base no ID, montar
uma query , e ja apresentar o resultado na grid, se poder dar uma judar eu agradeço, tiver algum outro exemplos ou link na net que possam auxiliar, ja procurei bastante na net, sobre
a questão e ainda não conseguir uma solução.
Responder

08/05/2018

Moab Fernandes

no evento OnShow, estou chamando dessa forma
( Dm_DadosRelacaoProvas.SQLDataSet1.Close;
Dm_DadosRelacaoProvas.SQLDataSet1.CommandText:='select alunoacessos.user_real_name from alunoacessos where alunoacessos.passwd =:passwd';
Dm_DadosRelacaoProvas.SQLDataSet1.ParamByName('passwd').AsString:=FrmLoginAcessos.editCPFAluno.Text;
Dm_DadosRelacaoProvas.SQLDataSet1.Open; ), porem nao esta dando certo, dar erro de Access violation at address,
Responder

09/05/2018

Roberto Wutke

E ai jovem, então, eu não conheço muito sobre SqlDataSet. Eu costumo usar os componentes FireDac, que já vem no delphi.

ai vc utilizaria o FDConnection, FDQuery, DataSetProvider, ClientDataSet e o DataSource.

Após conectar o seu FDConn certinho, vc vai no FDQuery e deixa um Select pronto la ( select alunoacessos.user_real_name from alunoacessos where alunoacessos.passwd =:passwd' ).

Desta forma vc vai ter na opção Params o "passwd" e vai definir ele como Imput e o tipo de dado (Integer, varchar).

Esse mesmo Params vai ter que existir no ClientDataSet.

No Provider vc vai ativar a opção AllowCommandText e deixar ela como True;

Ai no Show do form vc só faz assim,
CDS. Close;
CDS.params := EdtSenha.Text
CDS.Open;

quando abrir, vc vai ter os dados carregados no dataset, assim pode usar como quiser.

acho que é isso...

se tiver tenso ainda, add no skype ai que a gente ajeita. robertowutke@hotmail.com

abraço man
Responder

09/05/2018

Moab Fernandes

Bom dia Roberto,

fiz o procedimento, porem ainda continua não trazendo as informações, mandei a solicitação via skype, e poder aceitar e me dar um apoio eu agradeço... rsrs, ta tenso....
Responder