I'm not sure an option to force this behaviour exists, but that may be my fault.
But if you are 'putting' values into cells with some other JSL you might be able to use an 'Expression column" to persist values:
NamesDefaultToHere(1);
dt =
New Table( "Trailing White Space",
Add Rows( 2 ),
New Column( "String",
Character,
"Nominal",
Set Values( {"", ""} ),
Set Display Width( 96 )
),
New Column( "Expression String",
Expression,
"None",
Set Values( {Empty(), Empty()} )
)
);
Wait(3);
txt1 = "Text";
txt2 = "Text ";
Column(dt, 1)[1] = txt1;
Column(dt, 2)[1] = txt1;
Column(dt, 1)[2] = txt2;
Column(dt, 2)[2] = txt2;
for(r=1, r<=NRow(dt), r++, Print(Length(Column(dt, 1)[r]), Length(Column(dt, 2)[r])));
Having stored values this way, the usefulness of this approach will also depend on what happens next.