将当前日期转换为第 n 个日期



如何将October 24, 2018转换为24th of October, 2018

这将需要将自定义样式应用于显示日期的字段。 要创建此字段,请右键单击该字段,然后单击"格式化字段"。 在格式编辑器的日期选项卡上,单击自定义按钮。

您现在应该看到"自定义样式"窗口。

在"格式"组中,将"月份"设置为使用月份的长名称。
在"订单"组中,单击 DMY 的单选按钮。 在"分隔符"组中,单击标有"First:"的字段的 X-2 按钮,然后输入以下公式:

If Right(ToText(Day({GLPREPOST.START_DATE}),0,""),1) = "1" Then
"st of "
Else If Right(ToText(Day({GLPREPOST.START_DATE}),0,""),1) = "2" Then
"nd of "
Else If Right(ToText(Day({GLPREPOST.START_DATE}),0,""),1) = "3" Then
"rd of "
Else 
"th of "

{GLPREPOST.START_DATE}替换为对数据库中包含要设置格式的日期的字段的引用。

您还需要在标有"秒:"的字段的"分隔符"组中输入一个空格。

单击"确定"按钮以保存自定义样式。

此时,您的日期应按要求显示。 :)

我认为你需要一个公式。我不知道是否有现成的功能。在英语中,您可以执行以下操作:

NumberVar DayIn := Day ({YourTable.YourDate});
Totext (DayIn , 0 )
& (if DayIn in 4 to 20 then 'th' else
if remainder (DayIn , 10) = 1 then 'st' else
if remainder (DayIn , 10) = 2 then 'nd' else
if remainder (DayIn , 10) = 3 then 'rd' else 'th')
& " of "
& Totext ({YourTable.YourDate}, "MMMM, yyyy")

最新更新