AnsweredAssumed Answered

Get ( ModifiedFields ) doesn't return a correct result in separation-model

Question asked by disabled_menno on Mar 17, 2014
Latest reply on Nov 20, 2014 by TSGal

Summary

Get ( ModifiedFields ) doesn't return a correct result in separation-model

Product

FileMaker Pro

Version

Advanced 13.0.1

Operating system version

Windows 8.1

Description of the issue

This function never returns a result in separation-model.

PMJ answered in another discussion: http://forums.filemaker.com/posts/a2dc3cd3bf
that using a onexit-scripttrigger to show a dialog with the result of Get ( ModifiedFields ) would yield a list of modified field and calculated field as a result of changes of the current an uncommitted record.
However the filemaker-help doesn't mention the calculation fields, instead that says: "Returns a list of fields that have been modified in the current record of the current table."

This function shows in my (data-/interface-separated) solution only a lot of ¶ as result in any script that's called before a record is commited.

Steps to reproduce the problem

A solution where data and interface are separated

Use Get ( ModifiedFields ) in any script or scripttrigger whilst the current record has been changed ( Get(RecordOpenState) in the same script results in 1 or 2).

Expected result

get a ¶ delimited list of fieldnames that have (or are going to have) changed content in the current layout's tableoccurrence

Actual result

A lot of ¶ (it looks like depending on the amount of actually affected non local fields) but no fieldname at all

("Non local fields" mean: field from the tableoccurrence that the layout is based on, that is actually situated in another file. So it is the local table and not a related table.)

Exact text of any error message(s) that appear

None

Configuration information

This solution runs with data and interface separated. So the table is not local, however it works as a local table in any other aspect.

Workaround

un-(data/interface)seperate my solution, which is not an option of course. This function would be the only one to require that in order to work, which is a bit odd.

For now I use my old script that makes a kind of snapshot of the content of the current record, which I check against changes before committing it.

Outcomes