Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Mostrar Consulta no Grid...


robinhocne

Pergunta

Estou criando alguns grid's e datasource's 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...

// 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}

Editado por robinhocne
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

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....

Resolvido

......


         { 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}

        ......

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...