Como atualizar tabela com instrução SQLgt;gt;gt;gt;gt;
09/12/2003
0
Possuo em banco de dados duas tabelas Uma ´Tab_Estoque´ é aonde ficará armazenado os dados de todo estoque, em outra ´Tab_Entrada_estoque´ ficará arzenado os dados de entradas dos produtos recem chegados a empresa.
nas duas tenho um campo em comun ´Quantidade´ gostaria de quando dar entrada em um produto na tabela ´Tab_Entrada_Estoque´ automaticamente fosse somado ao campo ´Quantidade´ da Estoque. Já tentei da seguinte forma: Criei um TRIGGER para a Tabela ´Tab_estoque´ para fazer atualizaçao.
Agora como fazer para atualizar um campo de uma tabela dando entrada em outra tabela.
Poderia criar um relacionamento entre estes dois campos?
Se possivel como fazer?
Por favor me ajudem estou precisando muito.
Trabalho com Interbase 6.5 e Delphi 7.
Erivan Marinho.
Peninha
Posts
09/12/2003
Nigro
09/12/2003
Tnaires
Quando eu fiz isso, fiz da seguinte forma:
Na tabela de entrada de estoque, entre outros campos, coloquei o código do produto cujo estoque será atualizado, e a quantidade que entrou. Portanto, a relação existente entre a tabela de entrada de estoque e a de estoque é justamente o código do produto. No Delphi, simplesmente coloquei uma Query com um comando Update que aceitasse dois parâmetros: o código do produto a ser atualizado e a quantidade. Seria algo assim:
UPDATE Tab_Estoque SET
quantidade = :quantidade
WHERE codigo = :codigo
Quando o usuário inseria o estoque, o programa passava os parämetros e chamava o método ExecSQL do Delphi, no caso, usei componente BDE, deve haver método semelhante no TADOQuery.
Deve haver maneiras melhores de fazer isso, mas essa é minha sugestão :D
Sucesso
09/12/2003
Nilton
Abra o DataModule,selecione a tabela Estoque e nas propiedades da tabela clique em MasterSource,escolha a tabela a ser relacionada,depois clique em master field,abrirá uma janela onde você deverá indicar o secundaryIndex,depois escolha os dois campos em comum das tabelas,sendo um PK e o outro FK,clique em OK,se não der nenhuma mensagem de erro,da próxima vez que vc cadastrar um produto,na outra tabela já será inserido os produtos relacionados.
Sucesso!
09/12/2003
Einstein
crie uma instrução pra filtrar pelo Código do Produto do Registro que vc tá atualizando.
depois faça o seguinte:
TabelaEstoque.Edit,;
TabelaEstoqueEstoque.AsCurrency:=TabelaEstoqueEstoque.AsCurrency+TabelaEsntradaQuantidade.AsCurrency.
TabelaEstoque.Post;
TabelaEstoque.Close;
no evento BeforeDelete vc faz a mesma coisa só que no lugar de somar(+) vc deve subtrair(-);
valeu.
Clique aqui para fazer login e interagir na Comunidade :)