August 28, 201213 yr I'm writing an applescript to automate copying data between two databases of different FM versions (11 & 12). I've run into a snag though, which is that I'm unable to determine through AS whether a given field is writable or not. To clarify, I have written code (below) to check whether Filemaker reports the field as being writeable, but it seems that it will report that a calculation field (or cell) is writeable even if it isn't. The two cases I found where this is the case (so far) are if "prohibit modification during data entry" is set on the field, and if it's a calculation field. Are there any workarounds for this? --check cell can be written on checkCellWritable(databaseName, tableName, cellName) try tell application id destID using terms from application "FileMaker Pro Advanced" tell database databaseName tell table tableName set theAccess to (access of cell cellName) as string set theLock to (lock of cell cellName) as string set theProtection to (protection of cell cellName) as string end tell end tell end using terms from end tell on error theError my write_error_log("checkWritable " & databaseName & space & tableName & space & cellName & space & theError) return false end try set accessFlag to false set lockFlag to false set protectionFlag to false set prevTIDs to text item delimiters of AppleScript set text item delimiters of AppleScript to "/" set accessProperties to text items of theAccess repeat with accessProperty in accessProperties if (accessProperty as string) is "write" then set accessFlag to true end repeat set protectionProperties to text items of theProtection repeat with protectionProperty in protectionProperties if (protectionProperty as string) is "write" or (protectionProperty as string) is "formulas protected" then set protectionFlag to true end if end repeat if theLock is "unlocked" then set lockFlag to true set text item delimiters of AppleScript to prevTIDs return (accessFlag and lockFlag and protectionFlag) end checkCellWritable
Create an account or sign in to comment