Fórum Duvida no DBGrig #166002
23/06/2003
0
Ola galera,
Tenho uma duvida no componente DBGrid e nao estou conseguindo resolver. Tenho que mostrar neste DBGrid dados de 2 tabelas e realizar as operacoes (gravar, deletar, editar etc.) em apenas 1 tabela.Bom, mostrar os dados das 2 tabelas no DBGrid eu consegui fazer mas qdo fui tentar gravar um novo registro... :(
Imaginem essas 2 tabelas:
tabela produtos:
*idproduto
nomeproduto
tabela componentes:
*idcomponente
nomecomponente
valorcomponente
tabela itensproduto:
*idproduto
*idcomponente
Soh pra ter uma ideia:
No form (frmproduto) que esta acontecendo o problema com o DBGrid eu uso a tabela produtos com a tabela itens do produto.
Neste gravo os produtos com os seus devidos componentes, uma vez que o produto final eh formado por componentes.
No DBgrid deste form (frmproduto) uso os campos da tabela itensproduto (idproduto, idcomponente) juntamente com um campo (valorcomponente) da tabela componentes. Trago esses campos dessas 2 tabelas por uma instrucao sql e faço com que apareca bonitinho no DBGrid. Entao, trabalho com 2 duas tabelas em apenas um dataset.
Qdo tento realizar alguma operacao neste dataset do DBGrid gera-se um erro de ´Coluna nao valida´, por causa do campo valorcomponente da tabela componentes.
Entao a duvida:
Alguem jah fez com sucesso, a linkacao de DUAS tabelas em um DBGrid atraves de um dataset sendo que este operava (gravava, excluia, etc.) os registros em apenas UMA??
Entenderam a duvida ???
Obrigado a todos...
Tenho uma duvida no componente DBGrid e nao estou conseguindo resolver. Tenho que mostrar neste DBGrid dados de 2 tabelas e realizar as operacoes (gravar, deletar, editar etc.) em apenas 1 tabela.Bom, mostrar os dados das 2 tabelas no DBGrid eu consegui fazer mas qdo fui tentar gravar um novo registro... :(
Imaginem essas 2 tabelas:
tabela produtos:
*idproduto
nomeproduto
tabela componentes:
*idcomponente
nomecomponente
valorcomponente
tabela itensproduto:
*idproduto
*idcomponente
Soh pra ter uma ideia:
No form (frmproduto) que esta acontecendo o problema com o DBGrid eu uso a tabela produtos com a tabela itens do produto.
Neste gravo os produtos com os seus devidos componentes, uma vez que o produto final eh formado por componentes.
No DBgrid deste form (frmproduto) uso os campos da tabela itensproduto (idproduto, idcomponente) juntamente com um campo (valorcomponente) da tabela componentes. Trago esses campos dessas 2 tabelas por uma instrucao sql e faço com que apareca bonitinho no DBGrid. Entao, trabalho com 2 duas tabelas em apenas um dataset.
Qdo tento realizar alguma operacao neste dataset do DBGrid gera-se um erro de ´Coluna nao valida´, por causa do campo valorcomponente da tabela componentes.
Entao a duvida:
Alguem jah fez com sucesso, a linkacao de DUAS tabelas em um DBGrid atraves de um dataset sendo que este operava (gravava, excluia, etc.) os registros em apenas UMA??
Entenderam a duvida ???
Obrigado a todos...
Edmar Zatarin
Curtir tópico
+ 0
Responder
Posts
23/06/2003
Cdaraujo
Caro amigo,
Esqueça em alterar dados de um conjunto, onde este é formado por junções de tabelas. Não será possível vc atualizar tais dados no DataSet. Agora o que vc pode fazer é trabalhar isso de uma maneira melhor. Vc pode, sei lá, assim quando ele clicar em alguma canto da linha que corresponde a uma tabela específica, vc abra uma telinha com os valores prontos para alteração.
Atenciosamente,
Daniel Araújo
Esqueça em alterar dados de um conjunto, onde este é formado por junções de tabelas. Não será possível vc atualizar tais dados no DataSet. Agora o que vc pode fazer é trabalhar isso de uma maneira melhor. Vc pode, sei lá, assim quando ele clicar em alguma canto da linha que corresponde a uma tabela específica, vc abra uma telinha com os valores prontos para alteração.
Atenciosamente,
Daniel Araújo
Ola galera,
Tenho uma duvida no componente DBGrid e nao estou conseguindo resolver. Tenho que mostrar neste DBGrid dados de 2 tabelas e realizar as operacoes (gravar, deletar, editar etc.) em apenas 1 tabela.Bom, mostrar os dados das 2 tabelas no DBGrid eu consegui fazer mas qdo fui tentar gravar um novo registro... :(
Imaginem essas 2 tabelas:
tabela produtos:
*idproduto
nomeproduto
tabela componentes:
*idcomponente
nomecomponente
valorcomponente
tabela itensproduto:
*idproduto
*idcomponente
Soh pra ter uma ideia:
No form (frmproduto) que esta acontecendo o problema com o DBGrid eu uso a tabela produtos com a tabela itens do produto.
Neste gravo os produtos com os seus devidos componentes, uma vez que o produto final eh formado por componentes.
No DBgrid deste form (frmproduto) uso os campos da tabela itensproduto (idproduto, idcomponente) juntamente com um campo (valorcomponente) da tabela componentes. Trago esses campos dessas 2 tabelas por uma instrucao sql e faço com que apareca bonitinho no DBGrid. Entao, trabalho com 2 duas tabelas em apenas um dataset.
Qdo tento realizar alguma operacao neste dataset do DBGrid gera-se um erro de ´Coluna nao valida´, por causa do campo valorcomponente da tabela componentes.
Entao a duvida:
Alguem jah fez com sucesso, a linkacao de DUAS tabelas em um DBGrid atraves de um dataset sendo que este operava (gravava, excluia, etc.) os registros em apenas UMA??
Entenderam a duvida ???
Obrigado a todos...
Responder
Gostei + 0
24/06/2003
Edmar Zatarin
Amigo,
Valeu pela dica, mas jah havia conseguido resolver o problema.
Realmente seria impossivel manipular duas tabelas em um unico dataset.
O problema foi resolvido por instrucoes sql que passei ao evento AfterDelete e AfterPost da table da grid.
Muito obrigado pela atencao!! :wink: :D 8)
Valeu pela dica, mas jah havia conseguido resolver o problema.
Realmente seria impossivel manipular duas tabelas em um unico dataset.
O problema foi resolvido por instrucoes sql que passei ao evento AfterDelete e AfterPost da table da grid.
Muito obrigado pela atencao!! :wink: :D 8)
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)