Syntax
function Util.FormatDateTime(FormatStr: string; DateTimeValue: datetime): string
Alternative Names
Description
Formats the given DateTimeValue according to the format as specified in FormatStr.
Returns a string with a formatted datetime value.
Specifier
|
Displays
|
c
|
Displays the date using the format given by the ShortDateFormat system text, followed by the time using the format given by the LongTimeFormat system text. The time is not displayed if the date-time value indicates midnight precisely.
|
d
|
Displays the day as a number without a leading zero (1-31).
|
dd
|
Displays the day as a number with a leading zero (01-31).
|
ddd
|
Displays the day as an abbreviation (Sun-Sat) using the strings given by the ShortDayNames system text.
|
dddd
|
Displays the day as a full name (Sunday-Saturday) using the strings given by the LongDayNames system text.
|
ddddd
|
Displays the date using the format given by the ShortDateFormat system text.
|
dddddd
|
Displays the date using the format given by the LongDateFormat system text.
|
m
|
Displays the month as a number without a leading zero (1-12). If the m specifier immediately follows an h or hh specifier, the minute rather than the month is displayed.
|
mm
|
Displays the month as a number with a leading zero (01-12). If the mm specifier immediately follows an h or hh specifier, the minute rather than the month is displayed.
|
mmm
|
Displays the month as an abbreviation (Jan-Dec) using the strings given by the ShortMonthNames system text.
|
mmmm
|
Displays the month as a full name (January-December) using the strings given by the LongMonthNames system text.
|
yy
|
Displays the year as a two-digit number (00-99).
|
yyyy
|
Displays the year as a four-digit number (0000-9999).
|
h
|
Displays the hour without a leading zero (0-23).
|
hh
|
Displays the hour with a leading zero (00-23).
|
n
|
Displays the minute without a leading zero (0-59).
|
nn
|
Displays the minute with a leading zero (00-59).
|
s
|
Displays the second without a leading zero (0-59).
|
ss
|
Displays the second with a leading zero (00-59).
|
z
|
Displays the millisecond without a leading zero (0-999).
|
zzz
|
Displays the millisecond with a leading zero (000-999).
|
t
|
Displays the time using the format given by the ShortTimeFormat system text.
|
tt
|
Displays the time using the format given by the LongTimeFormat system text.
|
am/pm
|
Uses the 12-hour clock for the preceding h or hh specifier, and displays 'am' for any hour before noon, and 'pm' for any hour after noon. The am/pm specifier can use lower, upper, or mixed case, and the result is displayed accordingly.
|
a/p
|
Uses the 12-hour clock for the preceding h or hh specifier, and displays 'a' for any hour before noon, and 'p' for any hour after noon. The a/p specifier can use lower, upper, or mixed case, and the result is displayed accordingly.
|
ampm
|
Uses the 12-hour clock for the preceding h or hh specifier, and displays the contents of the TimeAMString system text for any hour before noon, and the contents of the TimePMString system text for any hour after noon.
|
/
|
Displays the date separator character given by the DateSeparator system text.
|
:
|
Displays the time separator character given by the TimeSeparator system text.
|
'xx'/"xx"
|
Characters enclosed in single or double quotation marks are displayed as such, and do not affect formatting.
|
The constants for several items are taken from the Control Panel and can be modified using Util.SetSystemText.
See Also
Example
execute UDSBlock
as
declare dtvalue timestamp;
begin
dtvalue = Util.Now();
/* format date as yyyy-mm-dd and time as hh:nn:ss */
Util.SetSystemText(__sysDateSeperator, '-');
datestr = Util.FormatDateTime('yyyy/mm/dd', dtvalue);
timestr = Util.FormatDateTime('hh":"nn":"ss', dtvalue);
GUI.ShowMessage('The date: ' || datestr || ', the time: ' || timestr);
/* format combined, 12 hour click with am/pm indicator */
datetimestr = Util.FormatDateTime('dd"/"mm"/"yyyy hh":"nn":"ss am/pm', dtvalue);
GUI.ShowMessage('Date and time: ' || datetimestr);
Util.SetSystemText(__sysLongDayNames, 'Zondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag');
/* format with textual representation of day and month with actual text in the formatting string */
datetimestr = Util.FormatDateTime('"Today it''s "dddd", the "d"th of "mmmm" in "yyyy"."', dtvalue);
GUI.ShowMessage(datetimestr);
end
|