[firebase-br] RES: RES: ajuda com stored procedure

Paulo Henrique Gleria Félix paulogleria em gmail.com
Ter Mar 13 15:09:25 -03 2012


Muito obrigado, vou tentar fazer aqui.

Em 13 de março de 2012 14:48, Hélio Oliveira <hpensador em gmail.com> escreveu:
> Crie uma trigger after insert para TB_PRODUTO +/- assim:
>
> create or alter procedure produto_ai0 for TB_PRODUTO
> active after insert position 0
> as
> declare variable quantidade float;
> begin
>  /* Obtem a quanitdade a ser dada baixa no estoque */
>  select R.qtd_composicao
>  from TB_RELACIONAMENTO R
>    join TB_COMPOSICAO C on (C.cod_composicao = R.cod_composicao)
>  where R.cod_produto = new.cod_produto into :quantidade;
>  /* Aqui você deverá fazer o processo de baixa do estoque */
> end
>
> Não sei se é exatamente isto que você precisa + creio que já sirva de base
> para você poder fazer seu processo.
>
>
>> Tb_Produto ->  cod_produto, descricao, cod_grupo, qtd, preco
>> Tb_Composicao ->  cod_composicao, qtd, , qtd_min, preco
>> Tb_Ralaciomento ->  cod_relaciomento, cod_produto, cod_composicao,
>> qtd_composicao
>>
>> Em 13 de março de 2012 13:46, Hélio Oliveira<hpensador em gmail.com>
>>  escreveu:
>>>
>>> Paulo qual a estrutura das 3 tabelas envolvidas na composição do seu
>>> processo?
>>>
>>>
>>>> o campo qtd_utilizada e a qtd que utiliza para se fazer o produto, ex
>>>> para fazer um produto prod A utilizo 3 composições comp x 1,2 kg, comp
>>>> y 0,39 kg e copm z 2,34 kg, para fazer um produto B utilizo 4
>>>> composições comp x 3,2 kg, comp y 1,69 kg e copm z 1,34 kg, w 0,54 kg
>>>>
>>>> Em 13 de março de 2012 11:54, Hélio Oliveira<hpensador em gmail.com>
>>>>  escreveu:
>>>>>
>>>>>
>>>>>
>>>>> Quais os campos da tabela QTD_UTILIZADA( )?
>>>>>
>>>>> Como essas 3 tabelas se relacionam?
>>>>>
>>>>>
>>>>>
>>>>>> obrigado, mes estou con dificuldade em fazer o select, as tabelas
>>>>>> estão dessa forma, são 3 tabelas a de produtos, Produdo_composição e a
>>>>>> de relacionamento entre eles, quando dou saida em um um produto da
>>>>>> baixa nele e na tabela composição,
>>>>>> para dar baixa nos produtos deu certo, mas na de composição ñ
>>>>>> consigui, se vc tiver um exemplo de um selecte para eu poder tirar
>>>>>> como base ficarei agradecido.
>>>>>>
>>>>>> Em 13 de março de 2012 11:20, Hélio Oliveira<hpensador em gmail.com>
>>>>>>  escreveu:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Bom dia Paulo!
>>>>>>>
>>>>>>> A melhor forma para você tratar isto é realmente atráves de uma
>>>>>>> trigger
>>>>>>> after insert/update/delete.
>>>>>>>
>>>>>>> A idéia é a seguinte... você tem um produto que na sua composição
>>>>>>> necessita
>>>>>>> de outros produtos. Você terá uma tabela de relacionamento +/- assim:
>>>>>>>
>>>>>>> Tabela PRODUTO e PRODUTO_COMPOSICAO
>>>>>>>
>>>>>>> Na trigger você verifica o código do produto que esta sendo
>>>>>>> inserido/alterado ou excluido e através de um for select...
>>>>>>> você irá percorrer todos os produtos que o compoem e vai fazendo as
>>>>>>> alterações no estoque dos respectivos.
>>>>>>>
>>>>>>>
>>>>>>>> tenho uma tebela de protudos com cod, nome, preço e ad sub-produtos
>>>>>>>> com cod, cod_prod (que faz a ligação), qtd_utilizada( que e a qtd
>>>>>>>> necessaria para fazer 1 peça) gostaria de fazer esse gatilho no
>>>>>>>> banco
>>>>>>>> de dados.
>>>>>>>>
>>>>>>>> Em 13 de março de 2012 10:23, Zottis<bzottis em ig.com.br>
>>>>>>>>  escreveu:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Usa duas tabelas
>>>>>>>>> Uma para fazer a Ficha do Produto por produção
>>>>>>>>> Exemplo: materiaPrimaProduto
>>>>>>>>>
>>>>>>>>> No SQL assim
>>>>>>>>> Select Campo1, campo2, campo3,outrosCampos
>>>>>>>>>  From materiaPrimaProduto  where materiaPrimaProdutoCampo =
>>>>>>>>> ProdutoCampo
>>>>>>>>>
>>>>>>>>> No Delphi
>>>>>>>>> While Not materiaPrimaProduto.eof do
>>>>>>>>>  Begin
>>>>>>>>>  With  Produto do
>>>>>>>>>  Begin
>>>>>>>>>   Close;
>>>>>>>>>   Parambyname('COD_Produto').asinteger    :=
>>>>>>>>> materiaPrimaProdutosCod_Produto.value;
>>>>>>>>>   Prepare;
>>>>>>>>>   Open;
>>>>>>>>>  End;
>>>>>>>>>
>>>>>>>>>   ProdutosaldoEstoque.value  := ProdutosaldoEstoque.value -
>>>>>>>>> TabelaQuantidade.value
>>>>>>>>>  Produto.post;
>>>>>>>>>  Tabela.next;
>>>>>>>>>  End;
>>>>>>>>>
>>>>>>>>> Seria mais ou menos assim
>>>>>>>>> Ou ainda fazer um gatilho Direto no Banco de Dados, para isso teria
>>>>>>>>> que
>>>>>>>>> passar mais detalhes
>>>>>>>>> Cuidado ao faer a atualização não rodar duas vezes, pois ele
>>>>>>>>> diminuiria
>>>>>>>>> mais
>>>>>>>>> do que o necessário
>>>>>>>>>
>>>>>>>>> Espero que ajude
>>>>>>>>>
>>>>>>>>> -----Mensagem original-----
>>>>>>>>> De: lista-bounces em firebase.com.br
>>>>>>>>> [mailto:lista-bounces em firebase.com.br]
>>>>>>>>> Em
>>>>>>>>> nome de Paulo Henrique Gleria Félix
>>>>>>>>> Enviada em: terça-feira, 13 de março de 2012 09:20
>>>>>>>>> Para: FireBase
>>>>>>>>> Assunto: Re: [firebase-br] RES: ajuda com stored procedure
>>>>>>>>>
>>>>>>>>> Voce teria um exemplo para eu poder verificar por favor.
>>>>>>>>>
>>>>>>>>> Em 13 de março de 2012 07:56, Zottis<bzottis em ig.com.br>
>>>>>>>>>  escreveu:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> É só fazer uma Busca noa tabela de matéria prima trazendo apenas o
>>>>>>>>>> que
>>>>>>>>>> interessa e fazer um  loop  ou um update via SQL Fazendo os
>>>>>>>>>> cálculos
>>>>>>>>>>
>>>>>>>>>> Particularmente Faria do Primeiro Modo
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> -----Mensagem original-----
>>>>>>>>>> De: lista-bounces em firebase.com.br
>>>>>>>>>> [mailto:lista-bounces em firebase.com.br] Em nome de Paulo Henrique
>>>>>>>>>> Gleria Félix Enviada em: segunda-feira, 12 de março de 2012 13:11
>>>>>>>>>> Para: FireBase
>>>>>>>>>> Assunto: Re: [firebase-br] ajuda com stored procedure
>>>>>>>>>>
>>>>>>>>>> Boa tarde, estou com uma duvida, tenho uma tabela de produtos
>>>>>>>>>> manufaturados e outra com os sub-produtos (materia prima) que
>>>>>>>>>> utilizo
>>>>>>>>>> para fazer os produtos, minha duvida preciso dar baixa no produto
>>>>>>>>>> e
>>>>>>>>>> cosequentimente dar baixa na tabela sub-produtos, tipo 1xn
>>>>>>>>>> 1 produtos pode utilizar varios sub-produtos, tenho uma tabela
>>>>>>>>>> relacionamento q contem o codigo do produto e os sub-produtos que
>>>>>>>>>> utiliza, gostaria de uma ajuda. Muito obrigado.
>>>>>>>>>>
>>>>>>>>>> ______________________________________________
>>>>>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em
>>>>>>>>>> www.locador.com.br
>>>>>>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ______________________________________________
>>>>>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em
>>>>>>>>>> www.locador.com.br
>>>>>>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ______________________________________________
>>>>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>>>>>> Para
>>>>>>>>> saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ______________________________________________
>>>>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ______________________________________________
>>>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ______________________________________________
>>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> ______________________________________________
>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ______________________________________________
>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>
>>>>
>>>>
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>
>>>
>>>
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa




Mais detalhes sobre a lista de discussão lista