Dates relatives (code)

De Wiki1000
Révision datée du 14 août 2009 à 08:36 par Syfre (discussion | contributions) (Nouvelle page : Une date relative est une date qui représente un déplacement par rapport à une date de référence. Une date relative encode : * Un déplacement qui est un nombre. * Une unité ...)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Une date relative est une date qui représente un déplacement par rapport à une date de référence.

Une date relative encode :

  • Un déplacement qui est un nombre.
  • Une unité de déplacement qui peut être des jours, semaines, mois, années.
  • Un déterminant qui peut être le début ou la fin de l'année, le mois, la semaine, le trimestre, la décade.

Ces informations sont encodées pour former une valeur négative de TDatetime.

Exemple :

<source lang='delphi'> function TRelativeDateInfo.RelativeToAbsolute:TDatetime; begin

 aReference := Now;
 case aBase of
   rbday:   Result := AddDays(aReference, aOffset);
   rbweek:  Result := AddWeeks(aReference, aOffset);
   rbmonth: Result := AddMonths(aReference, aOffset);
   else     Result := AddYrs(aReference, aOffset);
 end;
 DecodeDate(Result, aYear, aMonth, aDay);
 case aFlag of
   rdbstartyear:    Result := GetFirstDayOfYear(aYear);
   rdbendyear:      Result := GetLastDayOfYear(aYear);
   rdbstartmonth:   Result := GetFirstDayOfMonth(Result);
   rdbendmonth:     Result := GetLastDayOfMonth(Result);
   rdbstartweek:    Result := StartOfISOWeek(Result);
   rdbendweek:      Result := EndOfISOWeek(Result);
   rdbstartquarter: Result := GetFirstDayOfQuarter(Result);
   rdbendquarter:   Result := GetLastDayOfQuarter(Result);
   rdbstartdecade:  Result := StartOfDecade(Result);
   rdbenddecade:    Result := EndOfDecade(Result);
 end;

end; </source>

{{#if:Code métier|

{{#if:Code métier|— Code métier |}} — Développement DSM

|

{{#if:|— [[{{{1}}}]] |}} — Développement DSM

}}