Map Status of project B to custom column on project A fails on initial sync

Originally asked by Destri Weir on 26 January 2022 (original question)


Me again! I thought I had this working, but it’s not. I’ll give a lengthier explanation this time.

The connection is Support→Engineering. I am trying to map the system Status field from the Engineering project to a custom Linked Engineering Status field in the Support project. The Support status is a separate field that won’t be Exalated.

Both fields are currently ddl, but it’s not necessary that the Linked Engineering Status field be a ddl. It can be any field format.

Currently I have this code:

Outgoing:

replica.status = issue.status

Incoming:

issue.customFields.“Linked Engineering Status”.value = replica.status?.name

On the initial sync, I get this error: Field Field ‘customfield_10182’ cannot be set. It is not on the appropriate screen, or unknown.: customfield_10182.

If I comment out the code above, let the sync run without error, and then add the code and let the sync run again, the column starts updating as expected.

I thought I had this figured out, but I realized it only works in the situation above, so I know the issue has to do with setting the column value initially, but I’m not sure how to handle that. I tried adding a default, and I thought it worked, but it didn’t. I added a transition to set the column value at the time of sync, but that didn’t work either. I tried putting a value in the column when the story was created in Support, but that didn’t work.

Does the custom field need to be on the screens for both projects even though it makes no sense to have it on the Engineering screen since I’m mapping that status to the column? If I want to set the status via the script, do I just do that on the Incoming side? How does that tie in to the other script needed?


Answer by Destri Weir on 28 January 2022

I resolved this by switching to a visual connection with some scripted sync. I still don’t know why the script didn’t work.