AnsweredAssumed Answered

Custom Function working differently in FM Pro / FM Pro Advanced

Question asked by lumberjacklane on Apr 17, 2015
Latest reply on Apr 17, 2015 by lumberjacklane

Summary

Custom Function working differently in FM Pro / FM Pro Advanced

Product

FileMaker Pro

Version

13.0v5 (advanced) 13.0v9 (pro)

Operating system version

Mac OS X 10.10.2

Description of the issue

I created a custom function to pull values from a "value list" table, set those values to a global variable, and use a virtual list technique to populate a value list for that field.  This technique has worked great for a while, and continues to work great on my machine running FM 13 Pro Advanced.  We now have customers who get a blank value list, and I have isolated the issue to the custom function; it appears to simply not work correctly on their end.  They are running FM Pro 13 0v5 or 0v9 (confirming now). 

I have downloaded a trial of FM Pro 13 on my machine, and the value lists and custom function still work fine.  I just downloaded a trial of FM Pro 13 onto another clients computer, and everything works fine.

So, it seems like this cannot be an issue of security or access (all security accounts work on my machine, none on my clients), or advanced vs. pro (works in both on my machine, works in Advanced with one client, does not work in Pro for others). 

Is there anything in the custom function below that anyone can spot that may not work in FM Pro 0v5?  Anyone had any similar issues?

Exact text of any error message(s) that appear

/*

This custom function was built to make it very simple to assign the virtual list parameter to field script triggers

*/

Evaluate (

Let ( [

_field = Get (ActiveFieldName ) ;
_table = FMbaseTable ( Get (ActiveFieldTableName ) ) ;
_listID = ExecuteSQL("SELECT uidList FROM valueListAssignment WHERE fieldName = ? AND layoutID = ?" ; "" ; "" ; Get (ActiveFieldName) ; GetValue ( LayoutIDs ( Get (FileName ) ) ; Get ( LayoutNumber ) ) ) ;

$$virtualListType = "" ;

$$virtualList =

Case (

//  BROWSE MODE OR HELD OPTION DOWN

( Get (WindowMode) = 0 ) or ( Get (ActiveModifierKeys) = 8 ) ;

ExecuteSQL ( "SELECT name FROM valueListItem WHERE uidList = ?" ; "" ; "" ; _listID ) ;


//  FIND MODE


(Get (WindowMode) ≠ 0 ) ;

ExecuteSQL ( "SELECT DISTINCT ( " & Quote ( Get (ActiveFieldName) ) & ") FROM " & _table; "" ; "" )

)
]
;
""
)

)

Outcomes