Fórum efetuar calculos com data #365688
30/10/2008
0
eu gostaria de saber como faço para efetuar calculos com datas
por exemplo
eu tenho um contas a receber
ai efetuei uma venda hoje para pagamento com 30 dias
gostaria de saber como faço para jogar a data do pagamento para daqui a 30 dias
como seria o calculo para fazer isto?
tecnologias usadas:
Delphi 7, Firebird 2.1 e DBExpress
des de ja agradeço a atenção :D
Jeovanne
Curtir tópico
+ 0Posts
31/10/2008
Marciodossantosprog
No Firebird não sei se existe a função GetDate() do Sql Server. Se Existir, Vc poderá solucionar seu problema assim:
Insert Into TabelaPagamento (DataDaOperacao, DataDeVencimento)
Values (GetDate(), GetDate() + 30).
Simples assim.
Espero ter ajudado.
Gostei + 0
31/10/2008
Rasn
SELECT CURRENT_TIMESTAMP FROM RDB$DATABASE para obter a data atual do servidor no lugar do GetDate() do SQLServer
Logo, o exemplo ficaria assim:
Insert Into TabelaPagamento (DataDaOperacao, DataDeVencimento)
Values ((SELECT CURRENT_TIMESTAMP FROM RDB$DATABASE), (SELECT CURRENT_TIMESTAMP FROM RDB$DATABASE) + 30)
Gostei + 0
31/10/2008
Rodolpho123
Eu aconselho vc a utilizar a função [b:b887820139]IncMonth()[/b:b887820139] do Delphi7 ( está na unit DateUtils), onde:
IncMonth([data],[numero de meses a incrementar])
Ela vai lhe retornar exatamente o próximo mês, independente dele conter ou não 30 dias, ex:
Data: 01/10/2008 Incrementar 30 dias: 30/10/2008 Utilizando a função: 01/11/2008
Gostei + 0
03/11/2008
Jeovanne
não intendi sua colocação tentei algumas coisas aqui mas não consegui
Gostei + 0
03/11/2008
Rodolpho123
Jeovanne,
1- Vamos ter como exemplo o mês de fevereiro/2008 = 29 dias.
2- Adicione 30 dias apartir do dia 15/02/2008 (15/02 + 30)
3- Vc espera com esse cálculo chegar a data 15/03/2008? Correto?
Errado! Vc vai chegar no dia 16/03/2008. Se vc utilizar a função [b:30ee78e687]IncMonth[/b:30ee78e687] vc vai ter, independente do ano ser bissexto ou o mês ter 31 dias, a data como vc espera ter, ou seja 15/03/2008.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)