Fórum Mostrar Consulta no Grid...criado em tempo de execução #408499
16/10/2011
0
Estou criando alguns grids e datasources em tempo de execução, porém as consultas que faço em uma Query para mostrar as informações no Grid não está mostrando....
Primeiro ponto eu consulto na tabela Bel_Profissionais as profissionais que estão ativas, pois para cada uma terá um grid com os horários e clientes.
Dentro do resultado da consulta do primeiro ponto eu crio o DataSource e o Grid, o DataSource para ligar o o Grid e no DataSource eu já deixo ligado a QryAgenda que já é inclusa no formulário e por fim eu consulto para aquela profissional a sua agenda na Query QryAgenda, com isso acho que iria trazer os resultados, mas não trouxe nada....
Alguém pode me ajudar ?
veja o codigo abaixo...
Primeiro ponto eu consulto na tabela Bel_Profissionais as profissionais que estão ativas, pois para cada uma terá um grid com os horários e clientes.
Dentro do resultado da consulta do primeiro ponto eu crio o DataSource e o Grid, o DataSource para ligar o o Grid e no DataSource eu já deixo ligado a QryAgenda que já é inclusa no formulário e por fim eu consulto para aquela profissional a sua agenda na Query QryAgenda, com isso acho que iria trazer os resultados, mas não trouxe nada....
Alguém pode me ajudar ?
veja o codigo abaixo...
// pesquisa as profissionais para montar a agenda
with Dtm.QryPesquisar do
begin
Close;
sql.Clear;
sql.Add(Select ProCodigo, ProNome From Bel_Profissionais where ProAtivo = +#39+S+#39);
open;
end;
while not Dtm.QryPesquisar.Eof do
begin
{ Cria o DataSource da Agenda ...}
try
dsAgenda := TIBCDataSource.Create(self);
with dsAgenda do
begin
Name := dsAge + Dtm.QryPesquisar.FieldByName(ProNome).AsString;
DataSet := QryAgenda;
end;
{... Cria o DataSource da Agenda}
except
on E:Exception do
begin
ShowMessage(Erro ao criar ClientDataSet Cliente + #10 + e.Message);
exit;
end;
end;
{ Cria o DBGrid da Agenda ...}
dgAgenda := TJvDBGrid.Create(Self);
with dgAgenda do
begin
Parent := pnAgenda;
Align := alClient;
Name := dgAge + Dtm.QryPesquisar.FieldByName(ProNome).AsString;
Options := [dgEditing, dgTitles, dgColLines, dgTabs, dgConfirmDelete, dgCancelOnExit];
DataSource := dsAgenda;
//Adiciona as Colunas no dgAgenda
Columns.Add;
Columns.Items[0].FieldName := AgeHorIni;
Columns.Items[0].Title.Caption := H. Inicial;
Columns.Add;
Columns.Items[1].FieldName := AgeHorFin;
Columns.Items[1].Title.Caption := H. Final;
Columns.Add;
Columns.Items[2].FieldName := AgeCliente;
Columns.Items[2].Title.Caption := Cliente;
end;
{... Cria o DBGrid da Agenda}
{ Consulta os Clientes agendados na Profissional ...}
with QryAgenda do
begin
Close;
sql.Clear;
sql.Add(Select AgeHorIni, AgeHorFin, AgeCliente From Bel_Agenda);
sql.Add( where ProCodigo = + Dtm.QryPesquisar.FieldByName(ProCodigo).AsString);
open;
end;
{... Consulta os Clientes agendados na Profissional}
Robson Morais
Curtir tópico
+ 0
Responder
Posts
16/10/2011
Robson Morais
aff.....
Desculpas .... mas analisei melhor o meu codigo aqui e vi que sempre utilizava a mesma query para a consulta da agenda de varias profissionais e assim então limpava tudo....rsrsrs...
resolvi assim....criando uma query em tempo de execução para cada....veja abaixo....
Desculpas .... mas analisei melhor o meu codigo aqui e vi que sempre utilizava a mesma query para a consulta da agenda de varias profissionais e assim então limpava tudo....rsrsrs...
resolvi assim....criando uma query em tempo de execução para cada....veja abaixo....
......
{ Cria a Query da Agenda ...}
try
qrAgenda := TIBCQuery.Create(self);
with qrAgenda do
begin
Name := qrAge + Dtm.QryPesquisar.FieldByName(ProNome).AsString;
Connection := Dtm.Dba;
Transaction := Dtm.Tra;
end;
except
on E:Exception do
begin
ShowMessage(Erro ao criar Query da Agenda qrAge + Dtm.QryPesquisar.FieldByName(ProNome).AsString + #10 + e.Message);
exit;
end;
end;
{... Cria a Query da Agenda}
{ Cria o DataSource da Agenda ...}
dsAgenda := TIBCDataSource.Create(self);
with dsAgenda do
begin
Name := dsAge + Dtm.QryPesquisar.FieldByName(ProNome).AsString;
DataSet := qrAgenda;
end;
{... Cria o DataSource da Agenda}
{ Cria o DBGrid da Agenda ...}
dgAgenda := TJvDBGrid.Create(Self);
with dgAgenda do
begin
Parent := pnAgenda;
Align := alClient;
Name := dgAge + Dtm.QryPesquisar.FieldByName(ProNome).AsString;
Options := [dgEditing, dgTitles, dgColLines, dgTabs, dgConfirmDelete, dgCancelOnExit];
DataSource := dsAgenda;
//Adiciona as Colunas no dgAgenda
Columns.Add;
Columns.Items[0].FieldName := AgeHorIni;
Columns.Items[0].Title.Caption := H. Inicial;
Columns.Add;
Columns.Items[1].FieldName := AgeHorFin;
Columns.Items[1].Title.Caption := H. Final;
Columns.Add;
Columns.Items[2].FieldName := AgeCliente;
Columns.Items[2].Title.Caption := Cliente;
end;
{... Cria o DBGrid da Agenda}
{ Consulta os Clientes agendados na Profissional ...}
with qrAgenda do
begin
Close;
sql.Clear;
sql.Add(Select AgeHorIni, AgeHorFin, AgeCliente From Bel_Agenda);
sql.Add( where ProCodigo =:Pro);
ParamByName(Pro).AsString := ProCodigo;
open;
end;
{... Consulta os Clientes agendados na Profissional}
......
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)