Clique para saber mais...
  Home     Download     Produtos / Cursos     Revista     Vídeo Aulas     Fórum     Contato   Clique aqui para logar | 05 de Outubro de 2026
  Login

Codinome
Senha
Salvar informações

 Esqueci minha senha
 Novo Cadastro

  Usuários
64 Usuários Online

  Revista ActiveDelphi
 Assine Já!
 Edições
 Sobre a Revista

  Conteúdo
 Apostilas
 Artigos
 Componentes
 Dicas
 News
 Programas / Exemplos
 Vídeo Aulas

  Serviços
 Active News
 Fórum
 Produtos / Cursos

  Outros
 Colunistas
 Contato
 Top 10

  Publicidade

  [Dicas]  Automatizando um registro de "pago" com trigger
Publicado por fabinho : Segunda, Fevereiro 09, 2009 - 10:15 GMT-3 (2001 leituras)
Comentários 3 Comentários   Enviar esta notícia a um amigo Enviar para um amigo   Versão para Impressão Versão para impressão
Administrador Olá companheiros desenvolvedores. Este é o meu primeiro artigo que escrevo no site, portanto espero começar bem. Todos nós lidamos com contas a pagar e receber, certo? Pois bem: que tal automatizar um registro de uma conta paga ou recebida?

O que quero dizer é, quando criamos uma tabela no Firebird com os campos abaixo:

Código            integer
Histórico         varchar
Data_pagamento    date
Pago              integer

O campo Pago terá valor 0 (zero) como default, indicando que a conta está pendente e valor 1 se ela estiver paga.

Quer tal deixar o próprio Firebird setar o campo Pago como 1 automaticamente quando colocarmos a data de pagamento, sem precisar escrever uma linha sequer de código em Delphi?

Para isso, basta rodar o script abaixo, para inserir a trigger:

CREATE TRIGGER trg_pagar FOR CONTAS
ACTIVE BEFORE INSERT OR UPDATE POSITION 0
AS
begin

  if (new.Data_pagamento is not null) then
   new.Pago = 1;
  else
   new.Pago = 0;
end

Agora, quando pagar uma conta, basta colocar a data de pagamento que o Firebird marcará ela como paga, setando o campo Pago com valor 1.

É isso!
Grande abraço!

Por: Fabio.
Contato: gatascheguei@yahoo.com.br



Comentários Comentários
   Ordem:  
Comentários pertencem aos seus respectivos autores. Não somos responsáveis pelo seus conteúdos.


por: t3r3son (t3r3son@terra.com.br) : Mar 25, 2009 - 05:31
(Informações sobre o membro | Enviar uma mensagem) http://
Olá!!!
Mas precisa mesmo de mais um atributo pra fazer o que uma simples consulta na data de pagamento devolvesse o mesmo??? Sei lá. Cada uma com seu cada um mas prefiro fazer uma consulta se houve uma data em data_pagamento eu já tenho a informação que estou buscando. De qq forma valeu pela dica
[]´s
Evaristo


por: tembra (claubertembra@hotmail.com) : Jun 27, 2009 - 10:59
(Informações sobre o membro | Enviar uma mensagem) http://
Meu caro, é um ótimo exemplo ilustrativo de criação de Trigger, porém no mundo real ficaria bem mais fácil testar a data de pagamento, se estivesse preencida (not null) a conta foi paga. Assim vc deixaria de criar flags sem necessidade em seu sistema.
  Edição 112

Revista ActiveDelphi

  50 Programas Fontes


  Produtos

Conheça Nossos Produtos

Copyright© 2001-2016 – Active Delphi – Todos os direitos reservados