Page 1 of 1

SUMAR UN AÑO, MES O DIA A UNA FECHA

Posted: Mon Mar 26, 2007 5:38 am
by maecmx
Hola a todos...

Me gustaria saber si existe una opción para sumas a una fecha un número para aumentar un dia, meses o años....

Yo tenia esta utileria en Clipper y me permitia sumas un mes un dia y años.

lhasta:= date_addm(hasta,12)



Saludos y gracias..
Mario Espinosa

Posted: Mon Mar 26, 2007 9:58 am
by lorenzo
Mario, si tienes declarada la variable como DATE, es muy facil:

dfecha:=date()

nuevafecha:=dfecha+10 && si quieres añadir, por ejemplo, 10 dias

... y listo....

Un saludo
LORENZO

Posted: Mon Mar 26, 2007 7:28 pm
by maecmx
El problema no son los dias yo tengo que hacer la renovación de una fecha :

ejemplo: 26/03/2007

Con la opcion que tenia solo ponia add_m( fecha,12) y me aumenta los 12 meses y en forma automatica me da el nuevo año:

Resultado 23/03/2008

El problema con los dias es que tendrias que sumas los dias del años para aumentarlos para que sea exacto.

SI pongo fecha + 365 la fecha que me da no es 23/03/2008 es 20 o 21

Por so queria ver si existe algo solo para poner fecha y mes * año

Posted: Mon Mar 26, 2007 8:32 pm
by jacgsoft
Primero:
---------
A ver no entiendo Si yo le sumo 12 meses(1 año) a 26/03/2007, es igual a 26/03/2008, ¿porque la funcion add_m( fecha,12) te da 23/03/2008?

Segundo:
----------
Lo que yo hago cuando quiero sumarle 1 año(12 meses) auna fecha hago lo siguiente

Fecha:=Ctod('26/03/2007')
Fecha:=Dtoc(Fecha)
Fecha:=Ctod(Subs(Fecha,1,6)+Str(Val(Right(Fecha,4))+1,4))

entonces Fecha='26/03/2008'




Atentamente Jaime

Posted: Mon Mar 26, 2007 8:48 pm
by jacgsoft
Primero:
---------
A ver no entiendo Si yo le sumo 12 meses(1 año) a 26/03/2007, es igual a 26/03/2008, ¿porque la funcion add_m( fecha,12) te da 23/03/2008?

Segundo:
----------
Lo que yo hago cuando quiero sumarle 1 año(12 meses) auna fecha hago lo siguiente

Fecha:=Ctod('26/03/2007')
Fecha:=Dtoc(Fecha)
Fecha:=Ctod(Subs(Fecha,1,6)+Str(Val(Right(Fecha,4))+1,4))

entonces Fecha='26/03/2008'




Atentamente Jaime

Posted: Mon Mar 26, 2007 10:04 pm
by jacgsoft
Primero:
---------
A ver no entiendo Si yo le sumo 12 meses(1 año) a 26/03/2007, es igual a 26/03/2008, ¿porque la funcion add_m( fecha,12) te da 23/03/2008?

Segundo:
----------
Lo que yo hago cuando quiero sumarle 1 año(12 meses) auna fecha hago lo siguiente

Fecha:=Ctod('26/03/2007')
Fecha:=Dtoc(Fecha)
Fecha:=Ctod(Subs(Fecha,1,6)+Str(Val(Right(Fecha,4))+1,4))

entonces Fecha='26/03/2008'




Atentamente Jaime

Posted: Mon Mar 26, 2007 10:04 pm
by jacgsoft
Primero:
---------
A ver no entiendo Si yo le sumo 12 meses(1 año) a 26/03/2007, es igual a 26/03/2008, ¿porque la funcion add_m( fecha,12) te da 23/03/2008?

Segundo:
----------
Lo que yo hago cuando quiero sumarle 1 año(12 meses) auna fecha hago lo siguiente

Fecha:=Ctod('26/03/2007')
Fecha:=Dtoc(Fecha)
Fecha:=Ctod(Subs(Fecha,1,6)+Str(Val(Right(Fecha,4))+1,4))

entonces Fecha='26/03/2008'




Atentamente Jaime

Posted: Tue Mar 27, 2007 4:17 am
by wmormar
ok, ya entendi.

jjejjejjejje

jacgsoft wrote:Primero:
---------
A ver no entiendo Si yo le sumo 12 meses(1 año) a 26/03/2007, es igual a 26/03/2008, ¿porque la funcion add_m( fecha,12) te da 23/03/2008?

Segundo:
----------
Lo que yo hago cuando quiero sumarle 1 año(12 meses) auna fecha hago lo siguiente

Fecha:=Ctod('26/03/2007')
Fecha:=Dtoc(Fecha)
Fecha:=Ctod(Subs(Fecha,1,6)+Str(Val(Right(Fecha,4))+1,4))

entonces Fecha='26/03/2008'




Atentamente Jaime

Posted: Tue Mar 27, 2007 11:05 am
by jose_murugosa
jeje, hacía días que no me divertía tanto.....