funcion date para poner una fecha inicial y una fecha vencimiento

3,130 views
Skip to first unread message

Jose carmona

unread,
Jun 7, 2012, 1:03:41 PM6/7/12
to Comunidad de Visual Foxpro en Español
buenas cominidad soy un poco novato con esta funcion...si podrian
facilitarme con una explicacion d como hacerlo serviria d mucho
gracias d antemano.

la funcion es asi date() sera q le asigno a una variable la fecha
inicial y despues le sumo.?; es decir quiero sumar los dias, seria
algo asi fecha inicio (07-06-2012) y fecha vencimiento (07-07-2012)
cual seria la solucion la misma funcion date() o la funcion
day()...saludos

Walter R. Ojeda Valiente

unread,
Jun 7, 2012, 1:20:53 PM6/7/12
to publice...@googlegroups.com
A una fecha le puedes sumar un número.

FechaInicio = Date()
FechaVencimiento = FechaInicio + 60
? FechaVencimiento     && Debería mostrarte 06/08/2012     (porque hoy es 7 de Junio, mañana te mostrará otra fecha, desde luego)

Saludos.

Walter.




> Date: Thu, 7 Jun 2012 10:03:41 -0700
> Subject: [vfp] funcion date para poner una fecha inicial y una fecha vencimiento
> From: jrca...@gmail.com
> To: publice...@googlegroups.com

Jose carmona

unread,
Jun 7, 2012, 1:52:09 PM6/7/12
to Comunidad de Visual Foxpro en Español
muchas gracias por el aporte, pero lo q quiero poner son 30 dias d
vencimiento y por lo q veo solo aumento 1 dia...=\

On 7 jun, 19:20, "Walter R. Ojeda Valiente" <w...@hotmail.com> wrote:
> A una fecha le puedes sumar un número.
>
> FechaInicio = Date()
> FechaVencimiento = FechaInicio + 60
> ? FechaVencimiento     && Debería mostrarte 06/08/2012     (porque hoy es 7 de Junio, mañana te mostrará otra fecha, desde luego)
>
> Saludos.
>
> Walter.
>
>
>
>
>
>
>
> > Date: Thu, 7 Jun 2012 10:03:41 -0700
> > Subject: [vfp] funcion date para poner una fecha inicial y una fecha vencimiento
> > From: jrcar...@gmail.com

Jose carmona

unread,
Jun 7, 2012, 1:55:09 PM6/7/12
to Comunidad de Visual Foxpro en Español

y si embargo cambio la fecha d mi sistema a (08-06-2012) si me sale un
mes completo (08-07-2012).
ahora le puse la fecha d hoy y me muesta (07-06-2012) y (08-06-2012)
On 7 jun, 19:20, "Walter R. Ojeda Valiente" <w...@hotmail.com> wrote:
> A una fecha le puedes sumar un número.
>
> FechaInicio = Date()
> FechaVencimiento = FechaInicio + 60
> ? FechaVencimiento     && Debería mostrarte 06/08/2012     (porque hoy es 7 de Junio, mañana te mostrará otra fecha, desde luego)
>
> Saludos.
>
> Walter.
>
>
>
>
>
>
>
> > Date: Thu, 7 Jun 2012 10:03:41 -0700
> > Subject: [vfp] funcion date para poner una fecha inicial y una fecha vencimiento
> > From: jrcar...@gmail.com

Luis Maria Guayan

unread,
Jun 7, 2012, 2:16:50 PM6/7/12
to publice...@googlegroups.com
-- Trabajar con fechas y horas en Visual FoxPro --
http://www.portalfox.com/article.php?sid=1162



Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________

Edgar Acevedo

unread,
Jun 7, 2012, 2:41:01 PM6/7/12
to publice...@googlegroups.com
Las fechas en VFP aceptan ciertas operaciones aritméticas. Pero para manipulararlas debes poner atención a lo siguiente:

1- Ajustar el comando   SET STRICTDATE TO.  Te acepta por parámetros desde 0 a 2.  Yo en lo personal lo manejo como SET STRICTDATE TO 0

2- Debes escoger el formato que vas a manejar la fecha.  Yo en lo personal lo manejo así:  SET DATE BRITISH, para que se maneje como  Día/Mes/Año

3- Debes elegir si manejaras el año en 2 o 4 dígitos.  Yo prefiero manejarlo en 4 dígitos usando el comando SET CENTURY ON.

4- Ahora sí, ya puedes hacer "cosas" con las fechas.  Utilizando lo arriba descrito podría darte los siguientes ejemplos de código:

* Esto lo pones solamente al inicio de tu programa
   SET STRICTDATE TO 0
   SET DATE BRITISH
   SET CENTURY ON
* Aquí ya "hacemos cosas" con las fechas...
  ? DATE() + 30                   && Sumarle 30 días a la fecha de hoy.
  ? {05/05/2012}  + 30          && Sumarle 30 días a una fecha determinada.
  ? DATE() - 60                    && Restarle 60 días a la fecha de hoy.
  ? {05/05/2012}  - 45           && Restarle 45 días a una fecha determinada
  ? DATE() - {05/11/1966}      && A la fecha de hoy le resto la fecha de mi nacimiento y obtengo mis días de vida
  M.DíaHoy = DATE()           && Asignar a la variable M.DíaHoy la fecha de hoy
  ? M.DiaHoy + 20               && Sumarle 20 días a la fecha de la variable M.DiaHoy
  ? M.DiaHoy - 30                && Restarle 30 días a la fecha de la variable M.DiaHoy
  ? DTOC(M.DiaHoy)            && Convierto la variable M.DiaHoy tipo fecha en un resultado tipo caracter
  ? DAY(M.DiaHoy)              && Extaer el día (numérico) de la variable M.DiaHoy (tipo fecha)
  ? MONTH(M.DiaHoy)         && Extraer el mes (numérico) de la variable M.DiaHoy (tipo fecha)
  ? YEAR(M.DiaHoy)            && Extraer el año (numérico) de la variable M.DiaHoy (tipo fecha)
  ? CDOW(M.DiaHoy)          && Extraer el "nombre del día" (caracter) de la variable M.DiaHoy (tipo fecha)

Salu2,


Edgar

Jose carmona

unread,
Jun 8, 2012, 8:55:41 PM6/8/12
to Comunidad de Visual Foxpro en Español
EDGAR MUY BUENO TU APORTE ME REQUETE SIRVIO MUCHAS GRACIAS AMIGO

On 7 jun, 20:41, Edgar Acevedo <aperso...@gmail.com> wrote:
> Las fechas en VFP aceptan ciertas operaciones aritméticas. Pero para
> manipulararlas debes poner atención a lo siguiente:
>
> 1- Ajustar el comando   SET STRICTDATE TO.  Te acepta por parámetros desde
> 0 a 2.  Yo en lo personal lo manejo como SET STRICTDATE TO 0
>
> 2- Debes escoger el formato que vas a manejar la fecha.  Yo en lo personal
> lo manejo así:  SET DATE BRITISH, para que se maneje como  Día/Mes/Año
>
> 3- Debes elegir si manejaras el año en 2 o 4 dígitos.  Yo prefiero
> manejarlo en 4 dígitos usando el comando SET CENTURY ON.
>
> 4- Ahora sí, ya puedes hacer "cosas" con las fechas.  Utilizando lo arriba
> descrito podría darte los siguientes ejemplos de código:
>
> * Esto lo pones solamente al inicio de tu programa
> *   SET STRICTDATE TO 0
>    SET DATE BRITISH
>    SET CENTURY ON
> ** Aquí ya "hacemos cosas" con las fechas...
>  * ? DATE() + 30                *   && Sumarle 30 días a la fecha de hoy.
>   *? {05/05/2012}  + 30 *         && Sumarle 30 días a una fecha
> determinada.
>  * ? DATE() - 60      *              && Restarle 60 días a la fecha de hoy.
>  * ? {05/05/2012}  - 45 *          && Restarle 45 días a una fecha
> determinada
>   *? DATE() - {05/11/1966} *     && A la fecha de hoy le resto la fecha de
> mi nacimiento y obtengo mis días de vida
>  * M.DíaHoy = DATE() *          && Asignar a la variable M.DíaHoy la fecha
> de hoy
>   *? M.DiaHoy + 20*               && Sumarle 20 días a la fecha de la
> variable M.DiaHoy
>   *? M.DiaHoy - 30*                && Restarle 30 días a la fecha de la
> variable M.DiaHoy
>   *? DTOC(M.DiaHoy) *           && Convierto la variable M.DiaHoy tipo
> fecha en un resultado tipo caracter
>   *? DAY(M.DiaHoy)*              && Extaer el día (numérico) de la variable
> M.DiaHoy (tipo fecha)
>   *? MONTH(M.DiaHoy) *        && Extraer el mes (numérico) de la variable
> M.DiaHoy (tipo fecha)
>  * ? YEAR(M.DiaHoy) *           && Extraer el año (numérico) de la variable
> M.DiaHoy (tipo fecha)
>   *? CDOW(M.DiaHoy) *         && Extraer el "nombre del día" (caracter) de
> la variable M.DiaHoy (tipo fecha)
>
> Salu2,
>
> Edgar
>
Reply all
Reply to author
Forward
0 new messages