I have to admit that I had worked with Nintex Workflow for well over a year before I discovered these beautiful actions! When I realised what they could do, I realised that I was repeating a lot of stuff in separate workflows unnecessarily.
Using these actions together allows you to store variable values and pass them between different instances of running workflows. Where might this ability come in handy? Well I do not like to have workflow that are too large, so I occasionally break them down into smaller and more manageable chunks as separate workflows. I join them together using the "Start workflow" action. Often I will require an output from the workflows I start in the main workflow they are being started from. Here's how to grab them:
Start workflow action
When configuring this to run, ensure you capture the instance ID in a text variable of the workflow you are starting. This is required later when you retrieve whatever is returned and stored from the workflow you are starting:
Whatever it is you want to store from the workflow you started and be passed back to the main workflow is configured here. Choose to store the data to the current workflow instance, give it an appropriate name and then a value.
Now comes the clever part, the retrieving of this value from the workflow we started in our main workflow:
Make sure you are in the main workflow when you use this (so you store in the child workflow, and retrieve in the main workflow).
Configure this action to look at the instance variable we stored in Start workflow action, Item to retrieve (note this needs to be the same name as the "Store as" value in the store data action), and a variable to retrieve this data to.
Now you have data from your other workflow in your main workflow!
It's not something I use very often, but it does still make me smile when I do