Date.ToText(date as nullable date, optional options as any, optional culture as nullable text) as nullable text


Returns a textual representation of date. An optional record parameter, options, may be provided to specify additional properties. culture is only used for legacy workflows. The record can contain the following fields:

  • Format: A text value indicating the format to use. For more details, go to and Omitting this field or providing null will result in formatting the date using the default defined by Culture.

  • Culture: When Format is not null, Culture controls some format specifiers. For example, in "en-US" "MMM" is "Jan", "Feb", "Mar", ..., while in "ru-RU" "MMM" is "янв", "фев", "мар", .... When Format is null, Culture controls the default format to use. When Culture is null or omitted, Culture.Current is used.

To support legacy workflows, options and culture may also be text values. This has the same behavior as if options = [Format = options, Culture = culture].

Example 1

Convert #date(2010, 12, 31) into a text value. Result output may vary depending on current culture.


Date.ToText(#date(2010, 12, 31))



Example 2

Convert using a custom format and the German culture.


Date.ToText(#date(2010, 12, 31), [Format="dd MMM yyyy", Culture="de-DE"])


"31 Dez 2010"

Example 3

Find the year in the Hijri calendar that corresponds to January 1st, 2000 in the Gregorian calendar.


Date.ToText(#date(2000, 1, 1), [Format="yyyy", Culture="ar-SA"])