Fórum Inativar Doador que não oferta ha 2 meses #532622

23/09/2015

0

Boa tarde a todos, estou desenvolvendo um sistema de oferta de dízimo em Delphi 7 e Firebird 2.5, onde estou com o seguinte problema;

- Preciso fazer um comando que varre a tabela de recebimento de doações, e caso o doador não ofertou sua contribuição há 2(dois) meses atrás o sistema inativa o mesmo automaticamente.

Ex:

Doador : Josenildo
DATA DA OFERTA: 10/07/2015

Quando eu abrir o sistema na data de hj 23/09/2015, gostaria que o comando varresse a tabela e ao achar o doador Josenildo automaticamente inativasse o mesmo, pois ele já não contribui a 2 meses atras.

Alguém pode me ajudar. ?
Josenildo Rosa

Josenildo Rosa

Responder

Posts

24/09/2015

Mateus Carvalho

Um algorítimo um pouco chato de fazer, mais não complicado.

- Esse "inativo" para você, o que seria? Você vai remover os dados do banco?

Os passos, serão o seguinte:

Primeiro, teremos que fazer uma subtração da data da ultima contribuição com a data atual de cada usuário. Se o sistema achar um usuário com tempo maior que 60 dias, ai ele deve desabilitá-lo, caso contrário, ele vai para o próximo.
Responder

Gostei + 0

29/09/2015

Josenildo Rosa

Exatamente isso meu amigo MAC, mas não vou remover do banco de dados apenas inativar o dizimista.
Responder

Gostei + 0

05/10/2015

Mateus Carvalho

Ok. Desculpe a demora.

Você já tem o código para realizar a subtração? Você pretende realizar a operação de verificação em segundo plano?


Att!
Responder

Gostei + 0

05/10/2015

Paulo Freire

Olá Josenildo, também tenho um sistema de Igrejas chamado Shalom e ShalomWeb feitos em Delphi, no meu caso , no meu caso eu tenho uma store procedure, que apartir do resultado faço o update para inativar o membros que não ofertas ou dizimam a mais de 2 meses.

Exemplo:

Minha SELECT

WHERE
--Pegando membros que não dizimam e nem ofertas por mais de 2 meses
DATEDIFF(month, TBL_DIZIMOS.[DATA], getdate()) < 2

Se encontrar membros com esse paramentro dou o UPDATE
Responder

Gostei + 0

06/10/2015

Josenildo Rosa

Olá Paulo eu até pensei fazer essa store procedure mas não sabia como faze-la, teria como me passar a estrutura dessa procedure se não for encomodo
Responder

Gostei + 0

06/10/2015

Josenildo Rosa

Meu amigo MAC, sim eu desejo executar em segundo plano ou seja, como uma store procedure ou trigger.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar