使用 Orbeon 根据当前日期设置开始日期和停止日期

Posted

技术标签:

【中文标题】使用 Orbeon 根据当前日期设置开始日期和停止日期【英文标题】:Setting up a startdate and a stopdate based on current date using Orbeon 【发布时间】:2021-12-07 04:40:57 【问题描述】:

我正在使用 Orbeon 创建自助服务表单。

我有两个日期字段,我想根据当前日期为其设置初始值。 我的开始日期必须设置为前一年的 1 月 1 日,我的停止日期必须设置为前一年的 12 月 31 日。

也就是说,如果当前日期是 20211020,我的 startdate 应该设置为 20200101,我的 stopdate 应该设置为 20201231。

我尝试过: (current-date() - xs:yearMonthDuration('P8M') - xs:yearMonthDuration('P1Y'))

但这只是将日期设置为 20200220。

我正在操作我的开始日期和停止日期的控制设置,将公式设置为初始值以设置我的日期。

我认为我不应该使用 xs:yearMonthDuration,但是如何解决我的问题,我应该使用什么来代替?

问候海尔

【问题讨论】:

我在下面的回答中添加了一些表达方式,但如果这对您不起作用,或者我误解了您的问题,请告诉我。 -亚历克斯 【参考方案1】:

下面的表达式应该做到这一点:

去年1月1日:concat(year-from-date($date) - 1, '-01-01') 去年12月31日:concat(year-from-date($date) - 1, '-12-31')

这将给出以下内容,您还可以使用this form 测试您可以将哪个源粘贴到表单生成器中。

【讨论】:

非常感谢您的贡献 - 它帮助我解决了我的问题 :-) 我只是不想操作 XML,所以我操作了 startdate 和 stopdate 的控件设置,将公式设置为初始值来设置我的日期。我做了以下陈述,他们解决了我的问题: concat(year-from-date(current-date()) - 1, '-01-01') concat(year-from-date(current-date()) - 1, '-31-12') 优秀的@HMFN,我很高兴成功了,感谢您的更新。 -亚历克斯

以上是关于使用 Orbeon 根据当前日期设置开始日期和停止日期的主要内容,如果未能解决你的问题,请参考以下文章

日期/时间占位符本地化

如何使用 Vue.js 根据当前日期/时间设置时间间隔

如果根据当前日期获取当前周日期和当前周日期

Excel 根据结束日期自动填写日期

Java根据当前第几周获取周一和周日的日期方法

Java根据当前第几周获取周一和周日的日期方法