Años de 54 semanas ¿ Como ?

09/02/2004 - 10:35 por Javier Amoros | Informe spam
Hola, tengo una aplicacion en la que le he incorporado un calendario, todo
va ok, pero
en los años que tienen 54 semanas ( al menos algun dia en dicha semana )
ej, 1984
y cada 28 años, no consigo obtener el valor 54 con la funcion WEEK().

Si probais el siguiente codigo, vereis lo que os comento.

* ****************************************************************
* prueba para dererminar las distintas semenas de fin de año
* ojo en los años con 54 semanas, falla ( solo da 53 )
LOCAL nAño,dFecha,nWeek
CREATE cursor semanas ( ;
fecha d, ;
;
semana02 n(2), ;
semana12 n(2), ;
semana22 n(2), ;
semana32 n(2), ;
;
semana01 n(2), ;
semana11 n(2), ;
semana21 n(2), ;
semana31 n(2), ;
;
semana03 n(2), ;
semana13 n(2), ;
semana23 n(2), ;
semana33 n(2), ;
;
semana04 n(2), ;
semana14 n(2), ;
semana24 n(2), ;
semana34 n(2), ;
;
semana05 n(2), ;
semana15 n(2), ;
semana25 n(2), ;
semana35 n(2), ;
;
semana06 n(2), ;
semana16 n(2), ;
semana26 n(2), ;
semana36 n(2), ;
;
semana07 n(2), ;
semana17 n(2), ;
semana27 n(2), ;
semana37 n(2) )


FOR i = 1900 TO 2300
MiDate = DATE(i,12,31)
INSERT INTO semanas VALUES (;
DATE(i,12,31), ;
;
WEEK(MiDate,0,2), ;
WEEK(MiDate,1,2), ;
WEEK(MiDate,2,2), ;
WEEK(MiDate,3,2), ;
;
WEEK(MiDate,0,1), ;
WEEK(MiDate,1,1), ;
WEEK(MiDate,2,1), ;
WEEK(MiDate,3,1), ;
;
WEEK(MiDate,0,3), ;
WEEK(MiDate,1,3), ;
WEEK(MiDate,2,3), ;
WEEK(MiDate,3,3), ;
;
WEEK(MiDate,0,4), ;
WEEK(MiDate,1,4), ;
WEEK(MiDate,2,4), ;
WEEK(MiDate,3,4), ;
;
WEEK(MiDate,0,5), ;
WEEK(MiDate,1,5), ;
WEEK(MiDate,2,5), ;
WEEK(MiDate,3,5), ;
;
WEEK(MiDate,0,6), ;
WEEK(MiDate,1,6), ;
WEEK(MiDate,2,6), ;
WEEK(MiDate,3,6), ;
;
WEEK(MiDate,0,7), ;
WEEK(MiDate,1,7), ;
WEEK(MiDate,2,7), ;
WEEK(MiDate,3,7) )
ENDFOR
SELECT semanas
GO top
BROWSE IN SCREEN TITLE 'semanas'
* *****************************************************************

¿ Podeis ayudarme ?
Desde ya, gracias.


Javier Amoros
XaaM

-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa
 

Leer las respuestas

#1 Ana María Bisbé York
09/02/2004 - 11:06 | Informe spam
Hola Javier:

¿Cómo es eso de años de 54 semanas? 52* 7 = 364, ok, no entran todos; pero
53 * 7 = 371, entran hasta los biciestos.

Saludos,

Ana

"Javier Amoros" escribió en el mensaje
news:
Hola, tengo una aplicacion en la que le he incorporado un calendario, todo
va ok, pero
en los años que tienen 54 semanas ( al menos algun dia en dicha semana )
ej, 1984
y cada 28 años, no consigo obtener el valor 54 con la funcion WEEK().

Si probais el siguiente codigo, vereis lo que os comento.

* ****************************************************************
* prueba para dererminar las distintas semenas de fin de año
* ojo en los años con 54 semanas, falla ( solo da 53 )
LOCAL nAño,dFecha,nWeek
CREATE cursor semanas ( ;
fecha d, ;
;
semana02 n(2), ;
semana12 n(2), ;
semana22 n(2), ;
semana32 n(2), ;
;
semana01 n(2), ;
semana11 n(2), ;
semana21 n(2), ;
semana31 n(2), ;
;
semana03 n(2), ;
semana13 n(2), ;
semana23 n(2), ;
semana33 n(2), ;
;
semana04 n(2), ;
semana14 n(2), ;
semana24 n(2), ;
semana34 n(2), ;
;
semana05 n(2), ;
semana15 n(2), ;
semana25 n(2), ;
semana35 n(2), ;
;
semana06 n(2), ;
semana16 n(2), ;
semana26 n(2), ;
semana36 n(2), ;
;
semana07 n(2), ;
semana17 n(2), ;
semana27 n(2), ;
semana37 n(2) )


FOR i = 1900 TO 2300
MiDate = DATE(i,12,31)
INSERT INTO semanas VALUES (;
DATE(i,12,31), ;
;
WEEK(MiDate,0,2), ;
WEEK(MiDate,1,2), ;
WEEK(MiDate,2,2), ;
WEEK(MiDate,3,2), ;
;
WEEK(MiDate,0,1), ;
WEEK(MiDate,1,1), ;
WEEK(MiDate,2,1), ;
WEEK(MiDate,3,1), ;
;
WEEK(MiDate,0,3), ;
WEEK(MiDate,1,3), ;
WEEK(MiDate,2,3), ;
WEEK(MiDate,3,3), ;
;
WEEK(MiDate,0,4), ;
WEEK(MiDate,1,4), ;
WEEK(MiDate,2,4), ;
WEEK(MiDate,3,4), ;
;
WEEK(MiDate,0,5), ;
WEEK(MiDate,1,5), ;
WEEK(MiDate,2,5), ;
WEEK(MiDate,3,5), ;
;
WEEK(MiDate,0,6), ;
WEEK(MiDate,1,6), ;
WEEK(MiDate,2,6), ;
WEEK(MiDate,3,6), ;
;
WEEK(MiDate,0,7), ;
WEEK(MiDate,1,7), ;
WEEK(MiDate,2,7), ;
WEEK(MiDate,3,7) )
ENDFOR
SELECT semanas
GO top
BROWSE IN SCREEN TITLE 'semanas'
* *****************************************************************

¿ Podeis ayudarme ?
Desde ya, gracias.


Javier Amoros
XaaM


PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway

Preguntas similares