AnsweredAssumed Answered

Server side script cannot handle "Evaluate( expression... )" with localized names of functions

Question asked by paja on Jan 9, 2014
Latest reply on Jan 20, 2017 by fabricker

Summary

Server side script cannot handle "Evaluate( expression... )" with localized names of functions

Product

FileMaker Server

Version

13 (german)

Operating system version

Windows Server 2012

Description of the issue

I tried to fire a script with FM13's "Perform Script On Server" step.
The script is called with named variables as parameter.
The evaluation of this parameters fails, if it contains the german for of "Let()" - "SetzeVar()" or any other localized function names.

Steps to reproduce the problem

This is the "international" form of the steps, to make it more understandable for everyone. Only the part of the "Evaluate()" is in localized german form, to show where the ploblem is:

Perform Script On Server [Wait for completion; "TheScript"; Parameter: "$p1 = \"" & some::ID & "\"; $p2 = \"anotherValue\""]

In the script the parameter is handled as:
Set Variable [$input ; Value: Evaluate ( "SetzeVar ( [" & Get( ScriptParameter ) & "] ; Wahr ) ")]

Expected result

The Evaluate step causes to have the named variables from the ScriptParameter available as script variables.
The variable $input is "True" (1)

Actual result

After this script step, the variable $input contains "?"
No script variables are available.
The function fails.

Exact text of any error message(s) that appear

No error message, Get(LastError) = 0

Workaround

Use international (english) function names, f.E:
Set Variable [$input ; Value: Evaluate ( "Let ( [" & Get( ScriptParameter ) & "] ; True ) ")]

Outcomes