DecodeDayOfWeekInMonth

Decode a TDateTime value in year, month, day of week parts

Declaration

Source position: dateutil.inc line 380

  procedure DecodeDayOfWeekInMonth(const AValue: TDateTime; 
                                  out AYear: Word; out AMonth: Word; 
                                  out ANthDayOfWeek: Word; 
                                  out ADayOfWeek: Word);

Description

DecodeDayOfWeekInMonth decodes the date AValue in a AYear, AMonth, ADayOfweek and ANthDayOfweek. (This is the N-th time that this weekday occurs in the month, e.g. the third Saturday of the month.)

See also

Name Description
EncodeDateMonthWeek Encodes a year, month, week of month and day of week to a TDateTime value
EncodeDayOfWeekInMonth Encodes a year, month, week, day of week specification to a TDateTime value
NthDayOfWeek Calculate which occurrence of weekday in the month a given day represents
#rtl.sysutils.DayOfWeek Returns the day of the week.
TryEncodeDayOfWeekInMonth Encode a year, month, week, day of week triplet to a TDateTime value

Example

Program Example105;
{ This program demonstrates the DecodeDayOfWeekInMonth function }
Uses SysUtils,DateUtils;
Var
  Y,M,NDoW,DoW : Word;
  D : TDateTime;
Begin
  DecodeDayOfWeekInMonth(Date,Y,M,NDoW,DoW);
  D:=EncodeDayOfWeekInMonth(Y,M,NDoW,DoW);
  Write(DateToStr(D),' is the ',NDow,'-th ');
  Writeln(formatdateTime('dddd',D),' of the month.');
End.