Executar query na DLL e retornar os dados p aplicação Delphi

25/11/2005

0

Tenho uma DLL certo, executo uma query dentro da DLL que retorna vários registros, tem como eu alimentar um DBGrid na minha aplicação Delphi com estes dados?
Agradeço se alguém puder ajudar.


Mkoch

Mkoch

Responder

Posts

25/11/2005

Emerson Nascimento

eu faço isso usando clientdataset.

como fazer:
o retorno da sua função na ddl precisa ser um variant.
daí, na sua dll você faz: result := clientdatasetdadll.data;

no seu aplicativo você precisa ter um clientdataset instanciado (ou dinâmico, a escolha é sua) que não deve estar ligado a qualquer base de dados.
aí você faz assim:

clientdataset.close;
clientdataset.createdataset;
clientdataset.data := funcaodaddl;
clientdataset.first;

pronto! seus registro já estão no clientdataset. se esse clientdataset estiver ligado à uma grade, os dados serão exibidos.


Responder

25/11/2005

Mkoch

Boa, valeu


Responder

25/11/2005

Mkoch

O problema e que eu uso o IBX, será que tem algum jeito também?


Responder

25/11/2005

Emerson Nascimento

tem jeito de retornar os valores, sim.

- na sua dll, instancie um DatasetProvider (palleta DataAccess) e ligue-o ao seu IBX dataset;
- altere a opção poAllowCommandText da propriedade Options do DatasetProvider para True para o caso de você usar instruções dinâmicas;
- instancie um ClientDataset (palleta DataAccess) na sua dll e ligue sua propriedade ProviderName ao DatasetProvider recém instanciado.

pronto! agora trabalhe com o ClientDataset, mantendo seus componentes IBX.

ClientDataset.Close;
ClientDataset.CommanText := suainstrucao;
[ ClientDataset.Params.ParamByName(´´).asstring := ´´; ]
ClientDataset.Open;
Result := ClientDataset.Data;


Responder

25/11/2005

Mkoch

Valeu, muito obrigado pela ajuda.


Responder

05/03/2011

Leonardo Silva

Sei que esse post é antigo mais gostaria de saber se é possivel fazer isso na minha estrutura de dados...

vejam nesse link:  https://www.devmedia.com.br/forum/viewtopic.asp?id=396075

PS: não uso clientdataset.
Responder

29/05/2013

José

Este tópico esta sendo fechado por inatividade. Se necessário, sinalizar para que seja reaberto ou abrir um novo.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar