Note that for the expression’s values you use the name of the attribute for each column (‘Modified’) rather than a reference to its value (’$Modified’).
As @eastgate has said, you need to quote the table expression so that $Name and $Modified don’t get evaluated for the parent note’s $Name and $Modified.
However, @mwra’s solution ($TableExpression="Name|Modified") won’t work, because it will return the logical OR of each child’s $Name and $Modified, which will just evaluate to $Name (unless $Name is empty, in which case it will evaluate to $Modified). The problem here is that | is getting interpreted as an expression operator, rather than being embedded in the expression string.
You have to make sure everything is quoted properly. This will work:
$TableExpression='$Name + "|" + $Modified';
Note the single quotes around the expression (necessary if you want to embed double quotes in the string).
Given the fiddliness of nested quotations and Tinderbox’s rather limited support for escaping strings, @eastgate’s solution of keeping the expression in a sample note is a really good one.
I’m confused. @eastgate’s post doesn’t mention a ‘sample expression’. I’m not sure it woulds necessarily help. A expression in simple one or more executable (evaluate-able) sections of code. This is a single expression:
$Color="blue";
This is a piece of action code containing two discrete expressions:
Documentation of Tinderbox paths, including specifying attributes of other notes by path is here.
Basically if you have a note named “Sample Table Note”, you can refer to an attribute of that note with the syntax $AttributeName(Sample Table Note). If “Sample Table Note” isn’t a unique name, you can refer to it by its full path instead — for example, if “Sample Table Note” is in the “/configuration” container, you can refer to its attribute values with $AttributeName(/configuration/Sample Table Note).
Here @eastgate is suggesting that you store the table expression you are interested in using in the $TableExpression of such a note, and then refer to that $TableExpression in your stamp. This will allow you to avoid messing around with getting the quotes right in the action code of the stamp.
Here’s an example Tinderbox file that shows you what he means: