Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Djalma Manfrin

Procedures e Triggers

Recommended Posts

Olá pessoal,

 

Tenho o seguinte o problema:

 

Preciso fazer o controle de estoque, onde os produtos a serem controlados são: matéria-prima (Toras), produto acabado (São N produtos) e os resíduos gerados (Cavaco e Serragem que também são produtos).

 

Quando a madeira entra em produção para a geração do produto acabado, há também, a geração de resíduos. No momento do cadastro da produção diária, coleto todas as informações que necessito, tanto para o cadastro do produto acabado, quanto para o calculo de ambos os resíduos.

 

Todo esse processamento está feito pelo PHP onde, faço 3 inserções, sendo elas: o cadastro do produto acabado, do cavaco e dos resíduos no banco MySQL. Pensando um pouco sobre lógica de programação as 3 inserções estão conectados com a produção, pois só é gerado o produto acabado e os resíduos quando a matéria-prima entra em produção.

 

Mas lendo um pouco sobre procedures e triggers acredito que o processamento do cadastro de resíduos pode ser feito através do SGBD, não havendo a necessidade de chamadas de função pela parte do PHP.

 

Então minha dúvida é:

1 - tenho a tabela entrada_produto onde é salvo o produto acabado, o cavaco e o resíduo (lembrando que também são produtos, por isso, são cadastrados na mesma tabela), então gostaria que toda vez que um produto acabado for cadastrado o cavaco e a serragem sejam cadastrados automaticamente através de triggers ou procedures.

 

2 - Gostaria também da opinião de vocês sobre melhores práticas e se realmente é viável o que quero fazer.

 

3 - Como estarei fazendo isso?

 

Esta é minha linha de raciocínio: Quando a tabela sofrer uma inserção com o id que identifica como produto acabado, utilizo triggers, procedures ou ambos, coleto as informações contidas na inserção e na mesma tabela insiro o as informações do cavaco e da serragem.

 

 

Obs: Nessa tabela tenho toda a informação que preciso. Caso necessário postarei a tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

1) Em tese é possível fazer isto por trigger , mas veja se o uso destas não vai contra a prática do projeto (alguns projetos usam o bd apenas para guardar os dados sem nenhuma lógica no bd)

 

2) questão de projeto , de opinião pessoal etc, eu particulamente gosto do uso de triggers

 

3) veja a documentação básica do bd em questão para sintaxe

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.