GARANTIR DESCONTO

Fórum Data Module - Vale a pena? #258713

17/11/2004

0

Sei que pode ser um assunto polêmico, mas o uso do Data Module tem me deixado em dúvida. Motivo: Se vc está usando um form que usa uma query do DM com um determinado parâmetro (por exemplo: passou o parâmetro de Vendedor A) e abre um outro form que utiliza esta mesma query mas passa o parametro como sendo Vendedor B, vc tá ferrando o form aberto anteriormente, não?
Ou, neste caso, tenho que ter nova query para o segundo form?


Crpavao

Crpavao

Responder

Posts

17/11/2004

Jc_analista

Bom faço o seguinte nos meus sistemas, tenho a conexão com o banco de dados e as tabelas de parametros e configurações no datamodule as demais tabelas(query) cada form usa a sua.


Responder

Gostei + 0

17/11/2004

Reginaldo174

o Data Module mantem a organização do projeto. imagine como ficaria seu projeto se vc colocasse as query´s em cada form !!! no exemplo citado vc realmente teria de colocar uma outra query. Já vi sistemas que não utilizam o Data Module e na minha opinão é muito trabalhoso...pois se vc criar mais um campo na tabela, terá que atualizar todas as query´s do sistema, e se form um sistema médio isso levará horas até que tenha a certeza de que todas query´s foram atualizadas.

Pense bem antes de dispensar o Data Module.


Responder

Gostei + 0

17/11/2004

Crpavao

Vejam bem.
Eu USO Data Module. Só acho que ele deve ser utilizado tendo várias queries similares para atender forms diferentes. É isto, não é?


Responder

Gostei + 0

17/11/2004

Jc_analista

Isso mesmo.


Responder

Gostei + 0

17/11/2004

Weber

Eu também utilizo data module mas no meu caso, como faço tudo na mão (insert, update, delete) tenho somente uma Query. QRCadastro que é utilizada para esses fins. Além de Database e Transaction.


Responder

Gostei + 0

17/11/2004

Osocram

Uso dataModule p separar e mais tarde talvez partir p 3 camadas...

Um Datamodule p Cadastro, um p Operacoes (NF,Nota de entrada....), outra p negocios (financeiro) e um p relatorios e mais um p consulta ond geralmente trago as views

e se for p dar manutencao eh mais facil.. se der erro no cadastros enton vc vai mexer no DMCadastro...

E se vc trabalhar c mais d uma pessoa no mesmo projeto... e cada um mexer um DM diferente non dah problema nenhum.

varias coisas boas em usar DM


Responder

Gostei + 0

17/11/2004

Dopi

Nao acho que criar várias Querys seja muito prático... Pois nesse caso vc teria que redefinir as propriedades dos campos, como: Displayname, MaskEdit, Cosntrains, etc... ou seja, perde-se o dicionário de dados...

Se a Query que vc precisa no segundo formulário for exatamente igual a que existe no DataModule, vc pode criar uma copia em memória do DataModule ou somente da Query, e depois, via código, mudar os DataSets para apontar para esse novo Datamodule

Ex:

....
  private
    { Private declarations }
    dml    : Tdm ;   { Tdm é o DataModule }
....

//// Criando DATA Moduleprocedure TfrCliente.FormCreate(Sender: TObject);
begin ;
 Temporario, e ligando em dsPrincipal ////
dml := Tdm.Create(self) ;
dsPrincipal.DataSet := dml.tbCliente ;
(dsPrincipal.DataSet as TTable).Open ;

dml.tbFuncionario.MasterSource := dsPrincipal ;
dml.tbFuncionario.MasterFields := ´Cod_cliente´ ;
dsFuncionario.DataSet := dml.tbFuncionario ;
dml.tbFuncionario.Open ;

dml.tbComputador.MasterSource := dsPrincipal ;
dml.tbComputador.MasterFields := ´Cod_cliente´ ;
dsComputador.DataSet := dml.tbComputador ;
dml.tbComputador.Open ;

.....



Nao é necessário destruir o novo DataModule porque o Pai dele (O proprio Form (self) ) irá fazer isso quando ele for destruido...


Responder

Gostei + 0

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

Aceitar