Escolar Documentos
Profissional Documentos
Cultura Documentos
Home
Delphi
Downloads
Eleições 2010
Firebird
Noticias
Off Topics
Outros
sql
Tutoriais
veja
Pesquisar no Blog...
Home > Firebird, Tutoriais > controle de estoque – como baixar estoque em varias filiais usando trigger – 1/3
Olá pessoal,
Alguns, depois de algum tempo, percebem que a pequena criação precisa de muitas mudanças e pensam
seriamente em replanejar uma nova versão do software.
Uma pequena confecção cresce e o controle de estoque deve ser distribuído entre 3 filiais. Se o software não foi
planejado para essa situação, nosso programador vai ter um pouco de trabalho. Já vimos que ele precisa
amadurecer e é nessa situação que o profissional mais aprende.
O nível de aprendizado vai depender da atitude e coragem do profissional, já que o conhecimento da regra de
negócio deixou a desejar.
Criando 3 campos para controlar o estoque na tabela produtos, mas eu já vi coisa pior:
fernandomedeiros.com.br/…/controle-d… 1/4
18/10/2010 controle de estoque – como baixar esto…
Preciso falar alguma coisa ?
Primeiro ele removeu qualquer referência ao estoque na tabela produtos ( claro que existem outros campos mas
vamos comentar apenas sobre os relacionados ao estoque )
A confecção cresceu, ele percebe que deve criar uma tabela para cadastrar as filiais:
Nessa tabela ele identifica a filial e o produto, fica muito mais fácil baixar qualquer produto em qualquer filial
A tabela de vendas, ele incluiu o campo filialid que identifica em qual filial deve ser dado a baixa naquele
produto.
No próximo tutorial, veremos como o programador fez a baixa no estoque através de triggers
1. Aloisio Pires
January 14th, 2010 at 20:56 | #1
Reply | Quote
Olá Fernando!
Parabéns por compartilhar com os companheiros programadores sua experiência. Sou programador
Delphi e nesse longo caminho da evolução estava buscando um forma mais inteligente de controlar
estoques em vários locais (filiais e depósitos) foi aí que encontrei este excelente artigo que me mostrou
uma forma eficiente de fazer isto.
Grande abraço!
2. Fernando Medeiros
January 15th, 2010 at 00:53 | #2
Reply | Quote
Olá Aloísio,
O bom de compartilhar é a satisfação de ter ajudado alguem. Quantos de nós não já ficou perdido com
uma regra de negócio ? Obrigado por comentar e pelo elogio. Abracos
3. Anselmo
August 27th, 2010 at 12:05 | #3
Reply | Quote
fernandomedeiros.com.br/…/controle-d… 2/4
18/10/2010 controle de estoque – como baixar esto…
Se eu fosse juntar todos os tutorias otimos como este aqui, diria que nao existe coisas ruim nesse mundo.
Parabens!!!
4. Fernando Medeiros
August 27th, 2010 at 13:05 | #4
Reply | Quote
1. No trackbacks yet.
Name (required)
E-Mail (will not be published) (required)
Website
Security Code:
DevMedia Posts:
Ponteiros Clube Delphi 118
Neste artigo a bordarem os ponteiro s: sua sintax e a tual e m uda nça...
www.devmedia.com.br
Categories
Delphi
Downloads
Eleições 2010
Firebird
Noticias
Off Topics
Outros
sql
Tutoriais
veja
fernandomedeiros.com.br/…/controle-d… 3/4
18/10/2010 controle de estoque – como baixar esto…
Blogroll
Estoque
fernandomedeiros.com.br/…/controle-d… 4/4
18/10/2010 controle de estoque – como baixar esto…
Home
Delphi
Downloads
Eleições 2010
Firebird
Noticias
Off Topics
Outros
sql
Tutoriais
veja
Pesquisar no Blog...
Home > Firebird, Tutoriais > controle de estoque – como baixar estoque em varias filiais usando trigger – 2/3
Nesse tutorial vamos criar 2 procedures para dar baixa no estoque de cada produto.
Sempre que quiser alterar/incluir/excluir um registro em outra tabela que não seja a atual (vendas), coloque
seu código no evento after e quando quiser alterar um registro na tabela atual, é no evento before que deve
inserir seu código.
Neste código, estamos atualizando o campo estoque na tabela estoques assim que um registro na tabela vendas
for incluido.
Os campos new.filialid e new.produtoid da tabela vendas vão auxiliar na identificação do registro na tabela
estoques.
fernandomedeiros.com.br/…/controle-d… 1/4
18/10/2010 controle de estoque – como baixar esto…
Na trigger acima, vamos devolver a quantidade antiga ao estoque (+old.quantidade) e tirar a quantidade nova (-
new.quantidade).
1. Dário
March 23rd, 2010 at 18:11 | #1
Reply | Quote
Cara eu fiz as duas trigger testei as duas foi um beleza, mas se for possivél poderia mim tirar a seguinte
duvida. No caso de um retorno ao estoque como eu utilizo a trigger ex. Nota Fiscal
De qualquer forma valeu!
2. admin
March 24th, 2010 at 01:57 | #2
Reply | Quote
Amigo,
Não entendi mas considerando que esteja falando sobre nota fiscal de entrada, você faria da mesma
forma, so que ao inves de tirar(-) do estoque você vai adicionar(+). Dai você vai criar as 3 triggers
insert/update/delete.
3. Dário
March 25th, 2010 at 12:31 | #3
Reply | Quote
Dário :
Desculpa acho que eu escrevi de forma errada! Veja criei essa trigger com uma instrução if
no caso ela vai verificar se o campo negado esta com valor 1 se o valor for 1, não sera dado
baixa no estoque, mas quando eu colocar outro valor dara baixa normalmente.
CREATE TRIGGER “Saida_Estoque” FOR “SERVPROD”
ACTIVE AFTER INSERT POSITION 1
AS
begin
/* Trigger text */
if (new.negado = ‘1′) then
update estoque
SET QTD = QTD + NEW.qtd
WHERE CODPRO = NEW.CODPRO;
end
O codigo fuciona o problema é que eu quero ver se é possivel que na hora que altere o
campo negado para ‘2′ ele baixe o estoque. Fucionaria como um orçamento que não dar
baixa no estoque de imediato so com aprovação do cliente! ok
De qualquer forma eu agradeço pela atenção!
4. admin
March 25th, 2010 at 20:46 | #4
Reply | Quote
Sim Dario. Mas recomendo criar uma outra tabela para separar uma regra de negocio da outra.
Orcamento e uma coisa, Vendas é outra.
(minha opiniao).
fernandomedeiros.com.br/…/controle-d… 2/4
18/10/2010 controle de estoque – como baixar esto…
5. Dário
March 26th, 2010 at 10:49 | #5
Reply | Quote
1. No trackbacks yet.
Name (required)
E-Mail (will not be published) (required)
Website
Security Code:
DevMedia Posts:
Ponteiros Clube Delphi 118
Neste artigo a bordarem os ponteiro s: sua sintax e a tual e m uda nça...
www.devmedia.com.br
Categories
Delphi
Downloads
Eleições 2010
Firebird
Noticias
Off Topics
Outros
sql
Tutoriais
veja
Blogroll
fernandomedeiros.com.br/…/controle-d… 3/4
18/10/2010 controle de estoque – como baixar esto…
Building Conectores
C onectores Eletro-Eletronicos, Placa de Bornes,
Alguns Erros Intermediário Tomadas e interruptor.
www.building.ind.br
Estoque
fernandomedeiros.com.br/…/controle-d… 4/4
18/10/2010 controle de estoque – como baixar esto…
Home
Delphi
Downloads
Eleições 2010
Firebird
Noticias
Off Topics
Outros
sql
Tutoriais
veja
Pesquisar no Blog...
Home > Firebird > controle de estoque – como baixar estoque em varias filiais usando trigger – 3/3
Agora que já entenderam como trabalhar com as triggers after insert e after update, vamos escrever a trigger
after delete:
Não tem mistério, sempre que um registro na tabela vendas for excluído, a trigger acima será responsável por
devolver ao estoque a quantidade que foi tirada anteriormente.
1. No comments yet.
1. No trackbacks yet.
Name (required)
E-Mail (will not be published) (required)
Website
Security Code:
fernandomedeiros.com.br/…/controle-d… 1/3
18/10/2010 controle de estoque – como baixar esto…
DevMedia Posts:
Ponteiros Clube Delphi 118
Neste artigo a bordarem os ponteiro s: sua sintax e a tual e m uda nça...
www.devmedia.com.br
Categories
Delphi
Downloads
Eleições 2010
Firebird
Noticias
Off Topics
Outros
sql
Tutoriais
veja
Blogroll
fernandomedeiros.com.br/…/controle-d… 2/3
18/10/2010 controle de estoque – como baixar esto…
Windows Lição 6 - Suspend - Retornando dados Programas Culturais para Família com um
Lição 7 - Cursores - for select...do Super Desconto
Aproveite para conhecer os Museus,
www.Click O n.com .br/entrete nim ento
Básico
Controle de Saldos Pousadas com Desconto na Peixe Urbano
As melhores pousadas com 60% de desconto!
Banco de Dados, Tabela, Generators C onfira e junta-se hoje!
Triggers, Prefixos New e Old Saldo anterior, Listar Extrato, Saldo atual www.peix e urbano .com .br
Estoque
fernandomedeiros.com.br/…/controle-d… 3/3