更新 Salesforce:日期格式 Dataweave
Update Salesforce: Date format Dataweave
我有一个字段 dateLastPaid 到 JSON 有效负载中。该字段的类型是格式为 2019-05-10T00:00:00.000-0300 的日期。
Salesforce API 需要一个仅限日期的字段,但我无法转换它。
我尝试使用 payload.dateLastPaid 作为 :date{format: "yyyy-MM-dd"} 但它仍然添加时间。
你能帮帮我吗?
问题在于尝试格式化日期。您可以格式化字符串,或使用格式来解析字符串,但在 DataWeave 或 Java 中,日期和日期时间没有格式。它在将日期从初始字符串格式转换为日期时间之后,然后再尝试将其格式化回所需格式后起作用。
我假设日期在 JSON 字符串属性中,因为您没有显示实际示例。
输入:
{
"dateLastPaid" : "2019-05-10T00:00:00.000-0300"
}
DataWeave 脚本:
%dw 1.0
%output application/json
---
{
date: ( payload.dateLastPaid as :date {format: "yyyy-MM-dd'T'HH:mm:ss.SSSZ"}) as :string {format: "yyyy-MM-dd"}
}
输出:
{
"date": "2019-05-10"
}
此脚本将输出字符串 "2019-05-10"
%dw 2.0
output application/json
var array = [0,1,2,3,4,5,6,7,8,9]
---
array map ((item, index) ->
payload.dateLastPaid[index]
) joinBy ""
我有一个字段 dateLastPaid 到 JSON 有效负载中。该字段的类型是格式为 2019-05-10T00:00:00.000-0300 的日期。 Salesforce API 需要一个仅限日期的字段,但我无法转换它。
我尝试使用 payload.dateLastPaid 作为 :date{format: "yyyy-MM-dd"} 但它仍然添加时间。
你能帮帮我吗?
问题在于尝试格式化日期。您可以格式化字符串,或使用格式来解析字符串,但在 DataWeave 或 Java 中,日期和日期时间没有格式。它在将日期从初始字符串格式转换为日期时间之后,然后再尝试将其格式化回所需格式后起作用。
我假设日期在 JSON 字符串属性中,因为您没有显示实际示例。
输入:
{
"dateLastPaid" : "2019-05-10T00:00:00.000-0300"
}
DataWeave 脚本:
%dw 1.0
%output application/json
---
{
date: ( payload.dateLastPaid as :date {format: "yyyy-MM-dd'T'HH:mm:ss.SSSZ"}) as :string {format: "yyyy-MM-dd"}
}
输出:
{
"date": "2019-05-10"
}
此脚本将输出字符串 "2019-05-10"
%dw 2.0
output application/json
var array = [0,1,2,3,4,5,6,7,8,9]
---
array map ((item, index) ->
payload.dateLastPaid[index]
) joinBy ""