What you describe should work and equally well whether you use a variable, a field or just make it a calculation inside the "Body" box of the Send Mail dialog. Have done similar of all three frequently.
Note that the correct syntax in all three cases would be: List ( RelatedTable::Field ) not List ( Field ).
And while that should work, you can also eliminate the need for the calculation field in the related table these days as you can use ExecuteSQL to build your list of text values from multiple fields and thus remove one field from what is defined in your related table.
glad to know they should work, at least my understanding of these 'tools' seems correct, but they didn't produce the desired result.
and yes, was using List (related TO:: field) I just simply typed in the post List (field)
using ExecuteSQL would be a tool for me, haven't ventured there yet.
I appreciate your time in replying
good news is, we're getting the desired result, it just took a lot longer getting there.
And the point that I was trying to make is that since all of the approaches should have produced the correct result, you should revisit each method to see what was different that may have kept it from working.
Two ways that I can think of that List might fail for you for any of these approaches:
Wrong Context. List ( RelatedTable::Field ) evaluates from either the context of the current record in the current layout's table occurrence (Script step) or from a record in a table where the calculation is defined via the "context" table occurrence specified for that calculation (calculation field or auto-entered calculation). If you get that "starting point" table occurrence wrong, you might not be matching the related records that you expect and thus list returns a different list of values than you expected.
Failure to update:
If changes have been made by another user or in a different window and have not yet been committed, these changes will not be returned by the function as they aren't yet "there" to reference. Also, if you are using an auto-enter calculation instead of a field of type calculation, changes to the records in the related table will not trigger an update of the auto-enter calculation.
Edit Note: just added a bit more info to the "wrong context' paragraph...