风满楼 发表于 2021-1-13 13:16:52

日期间隔问题,出现报错,自动更新

设计一个员工档案表,想实现:当打开表单后,工龄自动更新




通过填表公式设置公式




执行出错







什么原因?如何解决?

Pony马彬球 发表于 2021-1-13 14:45:03

可以用填表公式的值变化事件赋值,但是好像只能单独计算年或者天数,年数我不太会写,只会写相隔多少天,要用系统变量的当前日期


小花儿0000 发表于 2021-1-13 14:46:38

可以试试系统变量的当前日期

Pony马彬球 发表于 2021-1-13 14:48:04

你试下,用值变化事件好点,在编辑的时候就赋值了,你保存表单或者打开表单的时候就不进行赋值操作了。

Eientop 发表于 2021-1-13 15:12:51

公式应该没有问题,我这边也这么设置了一下公式,没有报错;
唯一矛盾的数据项为必填,公式执行就不用再做判断为空了;






风满楼 发表于 2021-1-13 16:28:20

重新设置了下,不知道怎么回事又可以了。
有个注意点,统计工龄公式,不要用间隔年份,因为这个公式只考虑年,不考虑月和日,也就是说,2020.12.30入职,到2021.1.1,也会计算成1年,实际只有2天。所以这个公式要改成:
INT(日期间隔("dd",本表单.入职日期 ,系统变量.当前日期 ) / 365)


cayrus 发表于 2021-1-13 16:39:41

本帖最后由 cayrus 于 2021-1-13 16:41 编辑

我按照你的设置测试了,你的公式没有问题。如果是公式有问题,系统会在报错后提示具体哪个参数出错。
唯一可能的问题在于司龄的格式设置(string error)。我的司龄单元格类型设置的文本框,数字分类为常规,数据表管理中数据类型为整数,测试通过。

风满楼 发表于 2021-1-14 09:02:03

风满楼 发表于 2021-1-13 16:28
重新设置了下,不知道怎么回事又可以了。
有个注意点,统计工龄公式,不要用间隔年份,因为这个公式只考虑 ...

360天还没到1年,显示0是正常的。
页: [1]
查看完整版本: 日期间隔问题,出现报错,自动更新