Você está na página 1de 11

18/10/2010

controle de estoque – como baixar esto…

18/10/2010 controle de estoque – como baixar esto… Home Delphi Downloads Eleições 2010 Firebird
Home

Home

Delphi

Delphi

Downloads

Downloads

Eleições 2010

Eleições 2010

Firebird

Firebird

Noticias

Noticias

Off Topics

Off Topics

Outros

Outros

sql

sql

Tutoriais

Tutoriais

veja

veja

Home Delphi Downloads Eleições 2010 Firebird Noticias Off Topics Outros sql Tutoriais veja

Pesquisar no Blog

Outros sql Tutoriais veja Pesquisar no Blog Home > Firebird , Tutoriais > controle de

Home > Firebird, Tutoriais > controle de estoque – como baixar estoque em varias filiais usando trigger – 1/3

controle de estoque – como baixar estoque em varias filiais usando trigger – 1/3

June 7th, 2010 Fernando Medeiros Leave a comment Go to comments

Olá pessoal,

É bem comum programadores iniciantes, desenvolverem um pequeno controle de estoque.

iniciantes, desenvolverem um pequeno controle de estoque. A maior dificuldade não está no desenvolvimento, a

A maior dificuldade não está no desenvolvimento, a técnica muitos dominam. O maior problema é analisar os

requisitos sem ter aquela visão além do alcance, rs.

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.

seriamente em replanejar uma nova versão do software . Voltando ao controle de estoque, um exemplo

Voltando ao controle de estoque, um exemplo prático da falta de visão dos iniciantes:

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

vai ter um pouco de trabalho. Já vimos que ele precisa amadurecer e é nessa situação

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.

Alguns programadores resolvem dessa forma:

deixou a desejar. Alguns programadores resolvem dessa forma: Criando 3 campos para controlar o estoque na

Criando 3 campos para controlar o estoque na tabela produtos, mas eu já vi coisa pior:

para controlar o estoque na tabela produtos, mas eu já vi coisa pior: fernandomedeiros.com.br/…/controle-d… 1/4

18/10/2010

Preciso falar alguma coisa ?

controle de estoque – como baixar esto…

Mas nosso programador analisou bem a situação e resolveu dessa forma:

analisou bem a situação e resolveu dessa forma: Primeiro ele removeu qualquer referência ao estoque na

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 )

mas vamos comentar apenas sobre os relacionados ao estoque ) A confecção cresceu, ele percebe que

A confecção cresceu, ele percebe que deve criar uma tabela para cadastrar as filiais:

percebe que deve criar uma tabela para cadastrar as filiais: Nessa tabela ele identifica a filial

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.

em qual filial deve ser dado a baixa naquele produto. No próximo tutorial, veremos como o

No próximo tutorial, veremos como o programador fez a baixa no estoque através de triggers

Firebird, Tutoriais | controle de estoque, Firebird, tutfb06, tutorial

Comments (4) Trackbacks (0) Leave a comment Trackback

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

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

Opa Anselmo, obrigado pelo apoio. Espero te-lo ajudado com algum tutorial. Abraços

1. No trackbacks yet.

ajudado com algum tutorial. Abraços 1. No trackbacks yet. Name (required) E-Mail (will not be published)
ajudado com algum tutorial. Abraços 1. No trackbacks yet. Name (required) E-Mail (will not be published)
ajudado com algum tutorial. Abraços 1. No trackbacks yet. Name (required) E-Mail (will not be published)

Name (required)

E-Mail (will not be published) (required)

Website

Security Code:

(will not be published) (required) Website Security Code: Subscribe to comments feed Submit Comment XML Generator
(will not be published) (required) Website Security Code: Subscribe to comments feed Submit Comment XML Generator
(will not be published) (required) Website Security Code: Subscribe to comments feed Submit Comment XML Generator

Subscribe to comments feed

Submit Comment

XML Generator – Stored Procedure Firebird controle de estoque – como baixar estoque em varias filiais usando trigger – 2/3 RSS Newsletter Twitter Notebook Dell 15R com 4gb e i5 sem frete

DevMedia Posts:

Neste artigo abordarem os ponteiro s: sua sintaxe a tual e m udançaNotebook Dell 15R com 4gb e i5 sem frete DevMedia Posts: Ponteiros Clube Delphi 118 Introdução

Ponteiros Clube Delphi 118

Introdução Métodos Ágeis ���� Curso Scrum Parte 1 ���� Curso Scrum Parte 1

Nesta vídeo aula, será m o strado alguns problem as no dese

Ve ja nesse curso online todas as caracte rísticas de um a aplica&vídeo aula, será m o strado alguns problem as no dese Curso online Aplicações Client/Server com

Curso online Aplicações Client/Server com dbExpress e Firebird

www.devmedia.com.br

Categories

Delphicom dbExpress e Firebird www.devmedia.com.br Categories Downloads Eleições 2010 Firebird Noticias Off Topics

DownloadsdbExpress e Firebird www.devmedia.com.br Categories Delphi Eleições 2010 Firebird Noticias Off Topics Outros sql

Eleições 2010e Firebird www.devmedia.com.br Categories Delphi Downloads Firebird Noticias Off Topics Outros sql Tutoriais veja

FirebirdCategories Delphi Downloads Eleições 2010 Noticias Off Topics Outros sql Tutoriais veja

NoticiasCategories Delphi Downloads Eleições 2010 Firebird Off Topics Outros sql Tutoriais veja

Off TopicsDelphi Downloads Eleições 2010 Firebird Noticias Outros sql Tutoriais veja

OutrosDownloads Eleições 2010 Firebird Noticias Off Topics sql Tutoriais veja fernandomedeiros.com.br/…/controle-d…

sqlEleições 2010 Firebird Noticias Off Topics Outros Tutoriais veja fernandomedeiros.com.br/…/controle-d…

TutoriaisDownloads Eleições 2010 Firebird Noticias Off Topics Outros sql veja fernandomedeiros.com.br/…/controle-d… 3/4

vejaEleições 2010 Firebird Noticias Off Topics Outros sql Tutoriais fernandomedeiros.com.br/…/controle-d… 3/4

18/10/2010

Blogroll

18/10/2010 Blogroll controle de estoque – como baixar esto… Firebird Curso Stored Procedures Avançado Lição

controle de estoque – como baixar esto…

Firebird

Curso Stored Procedures

Avançado

Lição 1 - Parâmetros de Saída

XML Generator

Instalação e Configuração

No Windows, No Linux, Firewall Windows

Básico

Banco de Dados, Tabela, Generators Triggers, Prefixos New e Old

Lição 2 - Parâmetros de Entrada

Lição 3 - Condições ( if

Lição 4 - Declarando Variáveis

Lição 5 - Loop's ( while

Lição 6 - Suspend - Retornando dados

Lição 7 - Cursores - for select

then

else)

do

end )

Controle de Saldos

Saldo anterior, Listar Extrato, Saldo atual

Alguns Erros

Intermediário

Lock conflict

Wrong or

 

Listar Produtos, Vendas Anuais Vendas Mensais, Referência Cruzada Referência Cíclica, Recursividade

Unsupported on

Unavaliable

Arithmetic exception

 

Estoque

Passagens Aéreas com Ofertas Online Exclusivas Compre na Decolar e programe toda

www.Decolar.com /passagem

Venha P/ o Atual Santana Apto de 4 dorms e até 284m² em.

www.Lopes.com .br/aptoatualsantana

Loja Aves da Mata Venda de papagaios, araras e passarinhos.

www.ave sdam ata.com .br

Links Patrocinados

Planejando tabelas, Eventos "after insert/update", Evento "after delete"

18/10/2010

controle de estoque – como baixar esto…

18/10/2010 controle de estoque – como baixar esto… Home Delphi Downloads Eleições 2010 Firebird
Home

Home

Delphi

Delphi

Downloads

Downloads

Eleições 2010

Eleições 2010

Firebird

Firebird

Noticias

Noticias

Off Topics

Off Topics

Outros

Outros

sql

sql

Tutoriais

Tutoriais

veja

veja

Home Delphi Downloads Eleições 2010 Firebird Noticias Off Topics Outros sql Tutoriais veja

Pesquisar no Blog

Outros sql Tutoriais veja Pesquisar no Blog Home > Firebird , Tutoriais > controle de

Home > Firebird, Tutoriais > controle de estoque – como baixar estoque em varias filiais usando trigger – 2/3

controle de estoque – como baixar estoque em varias filiais usando trigger – 2/3

June 7th, 2010 Fernando Medeiros Leave a comment Go to comments

Nesse tutorial vamos criar 2 procedures para dar baixa no estoque de cada produto.

2 procedures para dar baixa no estoque de cada produto. Duas triggers serão necessárias na tabela

Duas triggers serão necessárias na tabela vendas. Uma no evento after insert (depois de inserir) e outra no evento after update (depois de alterar).

inserir) e outra no evento after update (depois de alterar). Como identificar em que evento colocar

Como identificar em que evento colocar seus códigos ?

Como identificar em que evento colocar seus códigos ? Sempre que quiser a l t e

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.

Para tratar a inclusão de um registro na tabela vendas:

Para tratar a inclusão de um registro na tabela vendas: Neste código, estamos atualizando o campo

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.

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).

Viram como os sufixos new e old ajudam ?

No próximo tutorial vamos tratar a exclusão do registro na tabela vendas.

Firebird, Tutoriais | controle de estoque, Firebird, tutfb06, tutorial

Comments (5) Trackbacks (0) Leave a comment Trackback

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.

Se eu nao entendi, por favor, detalhe mais. Abracos

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).

18/10/2010

5. Dário March 26th, 2010 at 10:49 | #5 Reply | Quote

Valeu de certo! Muito obrigado pela dica!

controle de estoque – como baixar esto…

1. No trackbacks yet.

de estoque – como baixar esto… 1. No trackbacks yet. Name (required) E-Mail (will not be
de estoque – como baixar esto… 1. No trackbacks yet. Name (required) E-Mail (will not be
de estoque – como baixar esto… 1. No trackbacks yet. Name (required) E-Mail (will not be

Name (required)

E-Mail (will not be published) (required)

Website

Security Code:

(will not be published) (required) Website Security Code: Subscribe to comments feed Submit Comment controle de
(will not be published) (required) Website Security Code: Subscribe to comments feed Submit Comment controle de
(will not be published) (required) Website Security Code: Subscribe to comments feed Submit Comment controle de

Subscribe to comments feed

Submit Comment

controle de estoque – como baixar estoque em varias filiais usando trigger – 1/3 controle de estoque – como baixar estoque em varias filiais usando trigger – 3/3 RSS Newsletter Twitter Notebook Dell 15R com 4gb e i5 sem frete

DevMedia Posts:

Neste artigo abordarem os ponteiro s: sua sintaxe a tual e m udançaNotebook Dell 15R com 4gb e i5 sem frete DevMedia Posts: Ponteiros Clube Delphi 118 Introdução

Ponteiros Clube Delphi 118

Introdução Métodos Ágeis ���� Curso Scrum Parte 1 ���� Curso Scrum Parte 1

Nesta vídeo aula, será m o strado alguns problem as no dese

Ve ja nesse curso online todas as caracte rísticas de um a aplica&vídeo aula, será m o strado alguns problem as no dese www.devmedia.com.br Curso online Aplicações Client/Server

www.devmedia.com.br

Curso online Aplicações Client/Server com dbExpress e Firebird

Categories

DelphiClient/Server com dbExpress e Firebird Categories Downloads Eleições 2010 Firebird Noticias Off Topics

DownloadsClient/Server com dbExpress e Firebird Categories Delphi Eleições 2010 Firebird Noticias Off Topics Outros sql

Eleições 2010com dbExpress e Firebird Categories Delphi Downloads Firebird Noticias Off Topics Outros sql Tutoriais veja

Firebirde Firebird Categories Delphi Downloads Eleições 2010 Noticias Off Topics Outros sql Tutoriais veja Blogroll

NoticiasCategories Delphi Downloads Eleições 2010 Firebird Off Topics Outros sql Tutoriais veja Blogroll

Off TopicsDelphi Downloads Eleições 2010 Firebird Noticias Outros sql Tutoriais veja Blogroll

OutrosDownloads Eleições 2010 Firebird Noticias Off Topics sql Tutoriais veja Blogroll

sqlEleições 2010 Firebird Noticias Off Topics Outros Tutoriais veja Blogroll

TutoriaisEleições 2010 Firebird Noticias Off Topics Outros sql veja Blogroll fernandomedeiros.com.br/…/controle-d… 3/4

vejaEleições 2010 Firebird Noticias Off Topics Outros sql Tutoriais Blogroll fernandomedeiros.com.br/…/controle-d… 3/4

Blogroll

18/10/2010

18/10/2010 controle de estoque – como baixar esto… Firebird Curso Stored Procedures Avançado Lição 1 -

controle de estoque – como baixar esto…

Firebird

Curso Stored Procedures

Avançado

Lição 1 - Parâmetros de Saída

XML Generator

Instalação e Configuração

No Windows, No Linux, Firewall Windows

Básico

Banco de Dados, Tabela, Generators Triggers, Prefixos New e Old

Lição 2 - Parâmetros de Entrada

Lição 3 - Condições ( if

Lição 4 - Declarando Variáveis

Lição 5 - Loop's ( while

Lição 6 - Suspend - Retornando dados

Lição 7 - Cursores - for select

then

else)

do

end )

Controle de Saldos

Saldo anterior, Listar Extrato, Saldo atual

Alguns Erros

Intermediário

Lock conflict

Wrong or

 

Listar Produtos, Vendas Anuais Vendas Mensais, Referência Cruzada Referência Cíclica, Recursividade

Unsupported on

Unavaliable

Arithmetic exception

 

Estoque

Imóvel em Vila Medeiros - Consulte um Corretor Online Seu Imóvel está aqui. Clique e faça

www.Lopes.com .br

Serviço Autorizado Hobart Curitiba (3284

4661)

Assistencia Técnica e Peças Hobart

www.hobartcuritiba.com .br

Building Conectores Conectores Eletro-Eletronicos, Placa de Bornes, Tomadas e interruptor.

www.building.ind.br

Links Patrocinados

Planejando tabelas, Eventos "after insert/update", Evento "after delete"

18/10/2010

controle de estoque – como baixar esto…

18/10/2010 controle de estoque – como baixar esto… Home Delphi Downloads Eleições 2010 Firebird
Home

Home

Delphi

Delphi

Downloads

Downloads

Eleições 2010

Eleições 2010

Firebird

Firebird

Noticias

Noticias

Off Topics

Off Topics

Outros

Outros

sql

sql

Tutoriais

Tutoriais

veja

veja

Home Delphi Downloads Eleições 2010 Firebird Noticias Off Topics Outros sql Tutoriais veja

Pesquisar no Blog

Outros sql Tutoriais veja Pesquisar no Blog Home > Firebird > controle de estoque – como

Home > Firebird > controle de estoque – como baixar estoque em varias filiais usando trigger – 3/3

controle de estoque – como baixar estoque em varias filiais usando trigger – 3/3

June 7th, 2010 Fernando Medeiros Leave a comment Go to comments

Agora que já entenderam como trabalhar com as triggers after insert e after update, vamos escrever a trigger after delete:

e after update, vamos escrever a trigger after delete: Não tem mistério , sempre que um
e after update, vamos escrever a trigger after delete: Não tem mistério , sempre que um

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.

ao estoque a quantidade que foi tirada anteriormente. Espero que tenham gostado. Até a próxima. Firebird

Espero que tenham gostado. Até a próxima.

Firebird | controle de estoque, Firebird, triggers, tutfb06, tutorial

Comments (0) Trackbacks (0) Leave a comment Trackback

1. No comments yet.

1. No trackbacks yet.

comment Trackback 1. No comments yet. 1. No trackbacks yet. Name (required) E-Mail (will not be
comment Trackback 1. No comments yet. 1. No trackbacks yet. Name (required) E-Mail (will not be
comment Trackback 1. No comments yet. 1. No trackbacks yet. Name (required) E-Mail (will not be

Name (required)

E-Mail (will not be published) (required)

Website

Security Code:

E-Mail (will not be published) (required) Website Security Code: fernandomedeiros.com.br/…/controle-d… 1/3
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…

18/10/2010 controle de estoque – como baixar esto… Subscribe to comments feed Submit Comment controle de

Subscribe to comments feed

Submit Comment

controle de estoque – como baixar estoque em varias filiais usando trigger – 2/3 stored procedure – como calcular o saldo anterior de uma conta bancaria 1/3 RSS Newsletter Twitter Notebook Dell 15R com 4gb e i5 sem frete

DevMedia Posts:

Neste artigo abordarem os ponteiro s: sua sintaxe a tual e m udançaNotebook Dell 15R com 4gb e i5 sem frete DevMedia Posts: Ponteiros Clube Delphi 118 Introdução

Ponteiros Clube Delphi 118

Introdução Métodos Ágeis ���� Curso Scrum Parte 1 ���� Curso Scrum Parte 1

Nesta vídeo aula, será m o strado alguns problem as no dese

Ve ja nesse curso online todas as caracte rísticas de um a aplica&vídeo aula, será m o strado alguns problem as no dese www.devmedia.com.br Curso online Aplicações Client/Server

www.devmedia.com.br

Curso online Aplicações Client/Server com dbExpress e Firebird

Categories

DelphiClient/Server com dbExpress e Firebird Categories Downloads Eleições 2010 Firebird Noticias Off Topics

DownloadsClient/Server com dbExpress e Firebird Categories Delphi Eleições 2010 Firebird Noticias Off Topics Outros sql

Eleições 2010com dbExpress e Firebird Categories Delphi Downloads Firebird Noticias Off Topics Outros sql Tutoriais veja

Firebirde Firebird Categories Delphi Downloads Eleições 2010 Noticias Off Topics Outros sql Tutoriais veja Blogroll

NoticiasCategories Delphi Downloads Eleições 2010 Firebird Off Topics Outros sql Tutoriais veja Blogroll Firebird

Off TopicsDelphi Downloads Eleições 2010 Firebird Noticias Outros sql Tutoriais veja Blogroll Firebird Instalação e

OutrosDownloads Eleições 2010 Firebird Noticias Off Topics sql Tutoriais veja Blogroll Firebird Instalação e

sqlEleições 2010 Firebird Noticias Off Topics Outros Tutoriais veja Blogroll Firebird Instalação e

TutoriaisEleições 2010 Firebird Noticias Off Topics Outros sql veja Blogroll Firebird Instalação e Configuração No

veja2010 Firebird Noticias Off Topics Outros sql Tutoriais Blogroll Firebird Instalação e Configuração No Windows ,

Blogroll

Noticias Off Topics Outros sql Tutoriais veja Blogroll Firebird Instalação e Configuração No Windows , No

Firebird

Instalação e Configuração

No Windows, No Linux, Firewall

Curso Stored Procedures

Avançado

Lição 1 - Parâmetros de Saída Lição 2 - Parâmetros de Entrada

XML Generator

Lição 3 - Condições ( if

Lição 4 - Declarando Variáveis

Lição 5 - Loop's ( while

end )

then

else)

18/10/2010

controle de estoque – como baixar esto…

Windows

Lição 6 - Suspend - Retornando dados

Lição 7 - Cursores - for select

do

Básico

Banco de Dados, Tabela, Generators Triggers, Prefixos New e Old

Controle de Saldos

Saldo anterior, Listar Extrato, Saldo atual

Alguns Erros

Intermediário

Lock conflict

Wrong or

 

Listar Produtos, Vendas Anuais Vendas Mensais, Referência Cruzada Referência Cíclica, Recursividade

Unsupported on

Unavaliable

Arithmetic exception

 

Estoque

Planejando tabelas, Eventos "after insert/update", Evento "after delete"

Programas Culturais para Família com um Super Desconto Aproveite para conhecer os Museus,

www.ClickOn.com .br/entretenim ento

Pousadas com Desconto na Peixe Urbano As melhores pousadas com 60% de desconto! Confira e junta-se hoje!

www.peixeurbano .com .br

Telas Guara 35 Anos Cercando Você de Segurança e Qualidade Variada linha de telas, grade,

www.tela sguara.com .br

Links Patrocinados