When using a joined object and then create a GOA script to email the results based on it, it can happened that the variable substitution provides wrong values.
This is the consequence of object definition changes.
So you need to recreate a Join definition each time you know that an object used by the Join was updated.
So you need to delete your actual joindef and recreate it.
Then you need to modify the GOA script associated with and change the fields variables to get the new ones.
This will make you getting the correct email data with the correct variable substitution value.