时间函数
本文为你列举了宜搭所有的时间函数,以及在使用时间函数时可能遇到的问题。
函数概览
函数名称 | 说明 |
计算日期区间选择框组件中的,开始和结束日期的相隔天数。 | |
返回日期区间2个日期的天数。 | |
将时间戳转换为日期对象。 | |
将指定日期加/减指定天数。 | |
返回某日期的天数。 | |
将指定日期组件的时间戳的时分秒置零后的时间戳结果。 | |
将指定日期组件的时间戳的时分秒设置成最大。 | |
返回两个日期之间的天数。 | |
DAYS360 函数返回两个日期间相差的天数。 | |
返回某日期的小时数。 | |
一个指定日期在当年的周数。 | |
返回某日期的分钟数。 | |
返回某日期的月份。 | |
可以计算两个特定日期中的工作日天数。 | |
返回当前时间,与 TODAY 函数相同。 | |
返回某日期的秒数。 | |
返回当前服务器时间。 | |
返回特定时间的十进制数字。 | |
将日期对象转换成时间戳,主要用来将日期公式计算出的日期对象转为时间戳,给日期组件赋值。 | |
返回今天。 | |
返回特定日期的周数。 | |
可以计算出距离某个具体时间点N个工作日后的另一个时间点默认工作日排除周末,且可以通过假期(Holiday)进行更加细致的工作日定义。 | |
返回某日期的年份。 | |
获取日期所在年份的首个日期。 | |
获取日期所在年份的最后一个日期。 |
基础概念
日期组件的返回值为时间戳(timestamp),单位是毫秒。
下面介绍关于日期函数的两个基本概念:
- 时间戳(timestamp):时间戳是计算机记录时间的一种格式。通常是一个字符序列,唯一地标识某一刻的时间。在宜搭表单中,日期组件便是由这样的序列来存储的。
- 日期对象:可以理解为年月日时分秒;日期对象的格式为 Sat Aug 01 2015 00:00:00 GMT+0800(中国标准时间),即北京时间 2015 年 8 月 1 日 00:00:00,日期对象可以进行各种运算,比如日期加减法等。
在宜搭中通常会使用字母表示日期格式,以下表格是各字母所代表的含义。
字母 | 含义 |
G | 年代标志符 |
y | 年 |
M | 月 |
d | 日 |
h | 时 在上午或下午 (1~12) |
H | 时 在一天中 (0~23) |
m | 分 |
s | 秒 |
S | 毫秒 |
E | 星期 |
D | 一年中的第几天 |
F | 一月中第几个星期几 |
w | 一年中第几个星期 |
W | 一月中第几个星期 |
a | 上午 / 下午 标记符 |
k | 时 在一天中 (1~24) |
K | 在上午或下午 (0~11) |
z | 时区 |
例如:使用模式串yyyy年MM月dd日 HH:mm:ss:S E D F w W z
来格式化当前时间作为文本组件格式化日期的默认值,公式内容定义如下:
页面展示如下:
常见问题
- Q1:如何使用公式获取取当天时间?
A:打开表单设计器页面,页面中已经包含一个一个日期组件,鼠标选中它,在右侧的默认值中下拉选择【公式编辑】,接着点击下方蓝色的【编辑公式】按钮。
通过点选的方式,编辑完整的公式内容为:TIMESTAMP(NOW())
,点击【确定】按钮,在页面设计器中点击右上角的【保存】按钮。
Q:如何自动获取合同结束时间?
A:你可以参考以下步骤配置合同结束时间。
- 在表单中添加两个日期组件,分别命名为开始日期和结束日期。
- 添加两个数值组件,分别命名为合同年限和闰年处理。
- 由于有闰年、平年区分,合同时长一般按平年(365 天)计算,此时需要提前进行公式处理,为表单美观可将该字段隐藏,将数据设置始终提交即可,详细公式配置如下图:
- 填写合同开始时间、合同年限后自动获取出合同截止时间,公式配置如下。
DATEDELTA(DATE(DATEDELTA(DATE(开始时间),365*合同年限)),-1+闰年处理)
- 效果展示