Dúvidas ClientDataSet
Estou usando o seguinte código em um botão:
meu DBGrid mostra tudo como se deve.
Mas se eu uso o código dentro de uma classe criada por mim, TCliente por exemplo:
e depois no botão crio a classe e tento utilizar suas propriedades:
recebo a mensagem ´Missing Data Provider or data packet´
Alguém sabe o que fazer?
PS: Minha classe deriva de TObject.
Obrigado.
Query := TIBQuery.Create(Self); Prov := TDataSetProvider.Create(Self); CliDS := TClientDataSet.Create(Self); DS := TDataSource.Create(Self); Query.Database := IBDatabase1; Query.Transaction := IBTransaction1; Query.SQL.Add(Edit1.Text); Prov.DataSet := Query; Prov.Name := ´Prov´; CliDS.ProviderName := Prov.Name; DS.DataSet := CliDS; DBGrid1.DataSource := DS; CliDS.Active := True;
meu DBGrid mostra tudo como se deve.
Mas se eu uso o código dentro de uma classe criada por mim, TCliente por exemplo:
constructor TCliente.Create; begin Query := TIBQuery.Create(Query); Prov := TDataSetProvider.Create(Prov); CliDS := TClientDataSet.Create(CliDS); DS := TDataSource.Create(DS); Query.Database := IBDatabase1; Query.Transaction := IBTransaction1; Query.SQL.Add(Edit1.Text); Prov.DataSet := Query; Prov.Name := ´Prov´; CliDS.ProviderName := Prov.Name; DS.DataSet := CliDS; end;
e depois no botão crio a classe e tento utilizar suas propriedades:
var Cliente: TCliente; begin Cliente := TCliente.Create; Cliente.Query.SQL.Add(Edit1.Text); DBGrid1.DataSource := Cliente.DS; Cliente.CliDS.Active := True; =====>>>> o problema ocorre nessa linha end;
recebo a mensagem ´Missing Data Provider or data packet´
Alguém sabe o que fazer?
PS: Minha classe deriva de TObject.
Obrigado.
Gabriel Ferrarini
Curtidas 0