时间格式化程序

Time Formatter(时间格式化程序)动作以多种标准格式(包括自定义格式)将 TIMESTAMP 变量格式化为 STRING 变量。

参数描述

参数 描述
Format(格式) 这是您希望用于显示日期和时间信息的输出格式。从列表中选择一种格式。
 
选项包括:
  • Y-m-dTH:M:S - 完整日期以及小时、分、秒。
    例如:2008-04-22T19:20:30
    按照 ISO 8601 中的规定。
  • Y-m-dTH:M:SZ - 完整日期以及小时、分、秒和时区。
    例如:2008-04-22T19:20:30Z 或 2008-04-22T1920:30-04:00
    按照 RFC 8339 中的规定。
  • Y-m-d - 完整日期。
    例如:2008-04-22
  • Ymd - 完整日期。
    例如:20080422
  • H:M:S - 小时、分、秒。
    例如:11:36:06
  • Custom(自定义)- 程序员注意事项:自定义格式实际上使用 C 运行时 strftime() 函数,因此格式字符串必须是 strftime() 的有效格式字符串。
    有关更多信息,请参见以下部分:strftme 函数格式
Append Milliseconds(追加毫秒) 选项包括:
  • True - 将向格式化输出字符串的末尾追加句点,并后接三位数毫秒值(例如 .334)。
  • False - 不会向格式化输出字符串末尾追加毫秒。此选项为默认选项。
Use Advanced Properties(使用高级属性) 选择 Use Advanced Properties(使用高级属性)复选框可显示其他参数:Array Size(数组大小)、Use GMT time(使用 GMT 时间)和 Set Timezone(设置时区)。当 Use GMT time(使用 GMT 时间)设置为 False 且存在暂存浏览器文件夹 /system/zoneinfo 时,将显示 Set Timezone(设置时区)参数。

Array Size(数组大小) 当必须将数据类型为 TIMESTAMP 的数组转换为 STRING 数组时使用。
如果输入变量为单一 TIMESTAMP 变量,请输入大小 1。
Use GMT time(使用 GMT 时间) 用于指定输出变量将采用格林威治标准时间 (GMT)。
选项包括:
  • True - 使用 GMT 时间来格式化输出变量 STRING。
  • False - 不使用 GMT 时间来格式化输出变量 STRING。输出变量 STRING 将使用为网关配置的时区。此选项为默认选项。
Set Timezone(设置时区)

Use GMT time(使用 GMT 时间)设置为 False 且存在暂存浏览器文件夹 /system/zoneinfo 时,将显示 Set Timezone(设置时区)参数。

选项包括:

  • True - 使用 Input(输入)选项卡的 Timezone(时区)参数中指定的备用时区来格式化输出变量 STRING。
    当此选项设置为 True 时,Input(输入)选项卡的 Timezone(时区)参数将变为可见。
  • False - 不使用备用时区来格式化输出变量 STRING。输出变量 STRING 将使用为网关配置的时区。此选项为默认选项。

时区文件

使用备用时区时,表示既不是为网关配置的时区,也不是 GMT。时区文件必须存在于暂存浏览器的 /system/zoneinfo/ 文件夹中。

这些时区文件可以是多个时区的完整文件集,也可以是仅适用于您的网关和解决方案的少数时区的文件子集。

时区文件的压缩文件以及相应的未压缩文件夹可从管理门户的 Developer(开发者)-> Resources(资源)区域中获取。有关更多信息,请参见资源

从 Resources(资源)区域下载压缩文件后,可以将其解压缩,并可将整个文件集或文件子集传送至网关的暂存浏览器区域。有关更多信息,请参见暂存浏览器

未压缩文件的文件夹和文件结构应予以保留。

输入选项卡

Set Timezone(设置时区)参数为 False 或不可用时的 Input(输入)选项卡:

Set Timezone(设置时区)参数为 True 时的 Input(输入)选项卡:

参数 描述
Timestamp(时间戳) 要转换为字符串的输入 TIMESTAMP
Count to Parse(计数至解析) 要格式化的数组中的项目数(可能小于最大数组大小)。
Timezone(时区) 用于指定您希望显示日期和时间信息的时区。仅当 Set Timezone(设置时区)字段设置为 True 时,才启用此字段。

与暂存浏览器的 /system/zoneinfo/ 文件夹相对的时区文件的文件名或路径。输入必须为字符串格式。

例如:

  • America/New_York
  • America/Indiana/Indianapolis
  • America/Sao_Paulo
  • America/Toronto
  • Europe/London

注:指定此输入字段并选择包含 %Z(自定义或 RFC8339)的格式时,即使时间属于指定时区,输出字符串也会将时区表示为“Z”或“GMT”。

输出选项卡

参数 描述
Output(输出) 此输出 STRING 变量的日期和时间格式由 Format(格式)参数指定。
指定长度超过 64 个字符的字符串可确保能够容纳所有字符串格式。

导出包含时区文件引用的触发器

导出触发器或使用 Workbench(工作台)-> Back Up(备份)函数进行 Back Up(备份)时,触发器 Time Formatter(时间格式化程序)动作引用的时区文件将不包括在导出(或备份)中。

必须将时区文件复制到暂存浏览器 /system/timezone 文件夹中的任何新节点上,才可导入先前导出的触发器(或从备份中还原)。

添加自定义格式

Time Formatter(时间格式化程序)动作也可用于定义输出字符串的 Custom(自定义)格式。自定义格式最多可定义 9 个格式代码。
可以按照下方所示添加 Custom(自定义)格式:

  1. Actions(动作)选项卡底部选择 Add(添加)。
    随即显示 New Action(新动作)窗口。
  2. 展开 String(字符串)类别,选择 Time Formatter(时间格式程序),然后选择 Add(添加)。
    右侧窗格会更改以容纳 Time Formatter(时间格式化程序)动作。

  3. Format(格式)旁边,选择向下箭头,然后选择 Custom(自定义)。
    Custom Format(自定义格式)方框变为可用。

    Custom(自定义)格式将会是一个字符串,其中包含 strftime() 函数的格式代码,用于替换为运行时值。
  4. Custom Format(自定义格式)方框中,键入用于时间戳输出变量的格式。

strftime 函数格式

strftime() 函数可将日期和时间信息转换为每个格式代码指定的格式,然后将结果存储在字符串中(最大字符大小)。
注:您必须为 C 运行时库 strftime() 函数和操作系统环境提供有效的格式代码。格式代码不正确可能会导致运行时问题。
可以使用以下格式代码:

代码 替换为 示例
%a 工作日缩写名称。* 周五
%A 工作日完整名称。* 星期五
%b 月份缩写名称。* 10 月
%B 月份完整名称。* 十月
%c 标准日期和时间字符串。 2019 年 8 月 23 日,星期四,14:55:02
%d 以数字表示的当月某日 (01-31)。 23
%H 24 时制小时 (00-23)。 14
%I 12 时制小时 (01-12)。 02
%j 以数字表示的当年某日 (001-366)。 235
%m 以数字表示的月份 (01-11)。 08
%M 以数字表示的分钟 [00-59]。 55
%p 等效于上午或下午的区域设置。 下午
%S 以数字表示的秒 (00-59)。 02
%U 以数字表示的当年某周,星期日为每周第一天 (00-53)。 33
%w 以数字表示的工作日 (0-6),其中 0 代表星期日。 4
%W 以数字表示的当年第几周,星期一为每周第一天 (00-53)。新年首个星期一之前的天数视为第 0 周。 34
%x 标准日期表示形式。* 2019-08-23
%X 标准时间表示形式。* 14:55
%y 不带世纪的十进制年份 (00-99)。 01
%Y 带世纪的十进制年份。 2019
%z 以 +hhmm 或 -hhmm 数值形式表示的时区(即相比 UTC 的小时和分钟偏移量)。(SU) -0400
%Z 时区名称或缩写。 CDT
%% 百分比 (%) 符号。 %

* 表示取决于区域设置。