Hi all. I am working on a component (M376 on plug-in dev, revision 25) which is part of the NNetwork Trello integration roadmap.
I would like to give some context before I get to my question. There are a couple of parts that contribute to the implementation:
- Trello workspaces
- Trello boards
- Trello lists
- Trello tickets
- Trello lists
- Trello boards
- Product Issues
- Service requests
A trello ticket can be linked to either a PI or an SR. Once linked, a record reference type and a record link are filled on the ticket record.
On the other hand, both PI and SR can be linked to many tickets. One of the features requested is that the status of the SR/resolution of PI gets updated whenever the ticket is moved to a given column. To accommodate that each trello list can be configured to correspond to a given status/resolution. Additionally, we have set up an After Commit process on the Trello Ticket record that will reflect the movement of the ticket on the PI/SR. The process decides whether the ticket is linked to a PI by evaluating the following expression productissues:first({productissues,this,true}).mostspecifictypename()
and checks if the record reference type starts with the result of the expression. After that a Cache Value is used to get the PI with an id equal to the one linked on the trello ticket record. If it exists, the resolution on the PI record is editted and the process terminates. The process is similar for an SR.
Although this works, we are wondering, if there is a better/optimal way to handle the retrieval of the record linked to a trello ticket, since this feels like a work around.
Here is what the process looks like: