Unstored calc doesn't update, but related field does
Operating system version
Mac OS X 10.6.4
Description of the issue
There is an issue in FileMaker Pro where a related timestamp field placed on a layout will instantly update on the layout whenever that field's value changes. However, an unstored calculation referencing the exact same related field will NOT update until the user leaves the layout and comes back to it.
Steps to reproduce the problem
Create an invoice table, and an invoice line items table. Relate them by Invoice ID.
In the line items table, create a timestamp field called "Modified Timestamp" which auto-enters the modification timestamp.
Now create another relationship from the invoices to the line items. Let's call this relationship "Invoice Line Items TIMESTAMP SORT", which relates the Invoice ID in the invoice table to the Invoice ID in the line items table, and the relationship is reverse chronologically sorted by the "Modified Timestamp" field. Therefore , the first related record is always the most recently-modified line item.
If you're on your master invoice layout, and you place the related field "Invoice Line Items TIMESTAMP SORT::Modified Timestamp" directly on your master invoice layout, it works just as you would expect. The related field ALWAYS updates instantly to show you the latest time that any of the related line items have been modified. It works just fine, and it updates instantly.
Okay, so go ahead and REMOVE THAT RELATED FIELD FROM YOUR LAYOUT. That is crucial, in order to see this bug in action.
Next, if you create an UNSTORED CALCULATION in the master table with the EXACT SAME expression (Invoice Line Items TIMESTAMP SORT::Modified Timestamp), and place that unstored calculation on the layout, that field does NOT update instantly. The user has to refresh the layout in order to get the unstored calculation field to update with the latest information.
Even though that calculation is unstored, and even though that calculation is nothing more than pointing to that very same related field that you had placed on the layout earlier, it doesn't update instantly... until a refresh.
Funny enough, if you go ahead and put BACK the original related field on the layout somewhere that the user can't see it, the very fact that the related field is sitting on the layout somewhere does actually force the unstored calculation to update instantly. But you shouldn't have to hide a field on a layout just to get an unstored calc to update properly.
The expected result is that both the related field on the layout AND the unstored calculation referencing that same related field should each update instantly, without requiring a refresh of the layout or without requiring both fields to be on the layout. The unstored calculation should automatically & instantly refresh on its own, without needing any other related field on the layout.
The actual result is that the related field on the layout always updates instantly, whereas the unstored calculation field NEVER updates instantly (unless the related field is present on the layout).
Exact text of any error message(s) that appear
Workaround mentioned above.