Try a Refresh Window [Flushed cached join results] script step, to be triggered OnObjectValidate.
Phil, on this same topic, I've only recently played with using Refresh Window to update portals. I was using it in a script that was triggered on exiting a field. Normally, tabbing out of the field would take the cursor to the next field in the tab order, but in on particular instance, I wanted the script to recirculate to the beginning of the tab order.
The issue I had was getting the cursor into a field of my choosing after the script ran. I finally used a SetVariable to pre-set the object name for what the next field should be. However, even when I used the GoToObject script step, I still had to finish the script off with an ExitScript [False] in order to stop the cursor from going to the field it would have gone to in the tab order.
This is only for a very specific use of a multi-use script, but the bottom line is the use of "false" as a script result to ensure which field is active after the script has run. Is there a better way, in general?
Take a look at the table in "Setting up script triggers" in FileMaker help. Certain script triggers perform their assigned script before the triggering event is processed. Others perform the script after the event is processed. For triggers that perform the script before the event, exit script [false] is the documented method for keeping the triggering event from being processed.
The classic example is to use exit script [false] in a script performed by the OnObjectExit trigger to put the cursor in a different field than the one specified by the layout's tab order--which would appear to be what you report here.
But this post does not appear to apply to the issue opened by Symbister. It seems a new issue that should be in a thread all its own.
works fine - just changed trigger to OnObjectModify..