Hello I have two cascading fields, where I want to copy the value from parent to sub-task. I'm using advanced edit option to update using JSON function. I have used following lines,
{
"update": {
"customfield_1234": [
{
"set": {
"value": "{{triggerIssue.fields.customfield_1234.value}}",
"child": {
"value": "{{triggerIssue.fields.customfield_1234.child.value}}"
}
}
}
]
"update": {
"customfield_5678": [
{
"set": {
"value": "{{triggerIssue.fields.customfield_5678.value}}",
"child": {
"value": "{{triggerIssue.fields.customfield_5678.child.value}}"
}
}
}
]
}
but I was getting error, "json" cannot be parsed.
Any appreciate will be helpful. Thanks.
Hi @Sarath
In your sample JSON, the curly brackets are not all matched:
Please add those and see what happens. Thanks!
Best regards,
Bill
Thank you @Bill Sheboy, identified that "}" are not updated correctly and using only 1 update field worked as well.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
JSON validators like https://jsonlint.com/ or a JSON-aware text editor like Vim have proven invaluable to me for checking my JSON.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Sarath , this is because you have duplicated the "update" field in the JSON. Each custom field should be a separate key inside the "update" field as in the below example:
{
"update": {
"customfield_1234": [ ... ],
"customfield_5678": [ ... ]
}
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@Gareth Cantrell - thank you Gareth. Using only one update function worked along with correcting number of curly brackets.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I was curious what would happen if you do have two updates in the same JSON (properly formatted). Turns out that Automation Rules does complain that the JSON is invalid, but it only acts on the second one, presumably because it reads/loads the JSON in order and the first update gets overwritten before executing.
So with this block, only the Description got updated:
{
"update":{
"summary":[
{
"set":"This is a new Summary to replace."
}
]
},
"update":{
"description":[
{
"set":"This is a new Description to replace."
}
]
}
}
(I know my indenting is not-good. I blame the Community text editor stripping the spaces. :-/)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@Darryl Lee a JSON object is represented as a hash table internally, so while it is not an error to have the same key appear multiple times, the properties of a hash table mean that the value of the earlier key will be overwritten if the same key is encountered later during the parsing of the JSON.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
An example with Automation Cloud to copy two cascade fields from parent to sub-tasks
{
"fields": {
"customfield_10071": {"value":"{{triggerIssue.parent.customfield_10071.value}}", "child":{"value": "{{triggerIssue.parent.customfield_10071.child.value}}"}},
"customfield_10069": {"value":"{{triggerIssue.parent.customfield_10069.value}}", "child":{"value": "{{triggerIssue.parent.customfield_10069.child.value}}"}}
}
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.