Várias tabelas em um único dbgrid

Delphi

30/10/2004

Pessoal,


Tenho que criar uma forma de fazer um cadastro de várias tabelas master/detail num mesmo form.
Ex.: Na parte de cima do form, a tabela mãe com seus campos, na parte de baixo um DBGrid com todas as outras tabelas details.

1- Qual seria a melhor forma para que ao incluir os campos detail a tabela master já esteja com os dados gravados. Gravar 1º a master (se dessa forma, como seria para a gravação ser automática sem que o usuário tenha que clicar em algum botão confirmando a gravação dos dados?) e depois os details ou gravar tudo de uma só vez através de alguma rotina?

2- Em um único DBGrid tenho que adicionar os campos das várias tabelas details. É possível?
Pensei em na hora de gravar, usar uma procedure para ir gravando na ordem necessária, pois dentro do dbgrid haverá uma tabela que é detail de uma master que também estará nesse dbgrid.
Não gostaria de ter que usar tabela temporária. Alguém tem alguma sugestão de como posso fazer isso?


Barbara.michele

Barbara.michele

Curtidas 0

Respostas

Barbara.michele

Barbara.michele

30/10/2004

Então, alguém teria como ajudar????


GOSTEI 0
Edilcimar

Edilcimar

30/10/2004

SE entendi direito, coloque campos calculados no dbgrid onde os campos são os campos das outras tabelas, ou então utilize um stringgrid


GOSTEI 0
Andre Silveira

Andre Silveira

30/10/2004

Vc teria que criar na tabela mestre campos lookup para as tabelas filhas e então coloca-los no dbgrid, poderia tb colocar 3 dbgrids e assim setar cada um com sua tabela, e nos eventos beforepost de cada tabela, setar os valores das chaves estrangeiras.

Lembre-se de relacionar as tabelas.

Me manda um email que te ajudo melhor....


GOSTEI 0
Mitsalito

Mitsalito

30/10/2004

Se eu entedi bem vc tem um cadastro e um grid separadamente

neste caso eu faço assim.
salvo tudo separadamente
exemplo
cadastrando um cliente na tabela de cliente e pessoa
num unico formulario o usuário digita os dados do cliente e da pessoa quando ele clicar em salvar é executada uma rotina que alem de gravar faz o relacionamento
e na hora de exibir no grid eu mostro atravéz de um outro objeto de tabela usando uma sql que junta todos os dados


GOSTEI 0
POSTAR