如何更改 OpenEdge Progress 中 DATE 变量的默认格式?
How to change the default format of DATE variables in OpenEdge Progress?
显示日期时的默认 DATE 格式是 DD/MM/YY
我想将其更改为 DD.MM.YYYY
这只是一个简单的程序:
DEFINE VARIABLE daDate AS DATE NO-UNDO.
daDate = TODAY.
MESSAGE daDate.
当前输出如下所示:16/09/20
我尝试在变量名称后添加 FORMAT "99.99.9999",如下所示:DEFINE VARIABLE daDate FORMAT "99.99.9999" AS DATE NO-UNDO.
但它根本没有改变输出。
当我使用 DISPLAY
而不是 MESSAGE
然后用 FORMAT 写出来时,它显示正确的格式:DISPLAY daDate FORMAT "99.99.9999".
我是做错了什么还是遗漏了什么?
您发送消息的表达式将首先转换为字符,因此您可以控制该转换:
MESSAGE STRING(daDate,"99.99.9999").
DEFINE VARIABLE hoy AS CHARACTER NO-UNDO.
hoy = STRING (DAY (TODAY), "99") + "."
+ STRING (MONTH (TODAY), "99") + "."
+ STRING (YEAR (TODAY)) .
Message hoy.
显示日期时的默认 DATE 格式是 DD/MM/YY
我想将其更改为 DD.MM.YYYY
这只是一个简单的程序:
DEFINE VARIABLE daDate AS DATE NO-UNDO.
daDate = TODAY.
MESSAGE daDate.
当前输出如下所示:16/09/20
我尝试在变量名称后添加 FORMAT "99.99.9999",如下所示:DEFINE VARIABLE daDate FORMAT "99.99.9999" AS DATE NO-UNDO.
但它根本没有改变输出。
当我使用 DISPLAY
而不是 MESSAGE
然后用 FORMAT 写出来时,它显示正确的格式:DISPLAY daDate FORMAT "99.99.9999".
我是做错了什么还是遗漏了什么?
您发送消息的表达式将首先转换为字符,因此您可以控制该转换:
MESSAGE STRING(daDate,"99.99.9999").
DEFINE VARIABLE hoy AS CHARACTER NO-UNDO.
hoy = STRING (DAY (TODAY), "99") + "."
+ STRING (MONTH (TODAY), "99") + "."
+ STRING (YEAR (TODAY)) .
Message hoy.