Ver Mensaje Individual
  #2  
Antiguo 03-12-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Esta es la definición de WeekOfTheMonth:
Código Delphi [-]
function WeekOfTheMonth(const AValue: TDateTime): Word; overload;
function WeekOfTheMonth(const AValue: TDateTime; var AYear, AMonth: Word): Word; overload;
En la función que quieres crear, deberías tener en cuenta AYear y AMonth. Esto te devuelve el año y el mes en el que empieza la semana. Por lo tanto, comparando el año y el mes de la fecha con los que te devuelve puedes saber que la semana que contiene esa fecha pertenece al principio del mes siguiente o al final de mes anterior.
Ejemplo:
El 1 de julio de 2008 fue martes -- primera semana de julio.
El 30 de junio fue lunes -- pertenece a la primera semana de julio.

No se que es exactamente lo que te devuelve datepart.
También deberías hechar un vistazo a WeekOf - devuelve un valor de 1 a 53. La primera semana es la que contiene el primer jueves del año. (si el año comienza en viernes, esos 3 primeros días no son la primera semana del año)
WeekOfTheYear además te devuelve el año en el que se produce la primera semana.
Responder Con Cita