Instanciar Data Module

07/01/2010

0

Pessoal,   Como posso fazer para instanciar um mesmo data module em dois formulários diferentes para trabalharem simultaneamente.   Exemplificando:   Tenho um data module de clientes, tenho um formulário de cadastro de clientes e um outro de agendamento de visitas em ambos os formulários estão fazendo referencia o data module de clientes.   Problema: Quando seleciono um cliente na tela de cadastro o mesmo registro aparece no agendamento de visitas e vice-versa.   Pesquisei aqui no fórum e não consegui resolver o problema. Criei variável private nos formulários e não resolveu este problema.   Utilizao D2005, Firebird e dsp + cds + ds no data module.   Alguém tem alguma sugestão?   Att,   Rodolfo
Rodolfo Gatzke

Rodolfo Gatzke

Responder

Post mais votado

07/01/2010

crie uma nova instância do dm e aponte todos os seus componentes para esse novo dm.

- no form de agendamento, crie uma variável na seção private (essa variável será a nova instância do dm): SuaVariavel: TSeuDM;
- no onCreate do form agendamento, crie a instância do dm, com Application.CreateForm(TSeuDM, SuaVariavel);
- depois de instanciado o novo dm, aponte seus componentes para esse novo dm.

não esqueça de eliminar o novo dm  no onDestroy do form agendamento: FreeAndNil(SuaVariavel);


Emerson Nascimento

Emerson Nascimento
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar