繁体   English   中英

如何在Dataweave-Mulesoft中执行日期操作

[英]How to perform date operations in Dataweave-Mulesoft

我有一个逻辑可以过滤掉30天之前加入的学生。 我在xml元素中有加入日期和lastdate。 我必须使用数据编织从这两个字段中减去日期。

<School>
  <joindate>2015-10-18T00:00:00.000-08:00</joindate>
  <lastdate>2016-01-18</lastdate>
</School>

XPath / XSLT 2.0及更高版本提供了许多日期和时间功能 看来DataWeave最多支持XSLT 3.0

以下表达式将解决所有日期为lastdatejoindate的天差小于30的School元素。

//School[days-from-duration(xs:date(lastdate) - xs:date(xs:dateTime(joindate))) lt 30]

尝试使用DataWeave Date Time操作:

https://docs.mulesoft.com/mule-user-guide/v/3.7/dataweave-reference-documentation#adding-a-period-of-time

从XML中获取值并将其存储在DataWeave中的变量中,将其转换为:date并在脚本中减去它们。

这是一个为您提供对象的示例,我认为您可以从那里修复它?

%dw 1.0
%output application/java
%var join = payload.School.joindate as :date
%var last = payload.School.lastdate as :date
---
period: join - last

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM