Let
 
目的 
为在计算的持续时间内、或到脚本退出时为止、或到文件关闭时为止,指定的表达式的结果设置一个或多个变量。
格式 
Let({[}变量1=表达式1{;变量2=表达式2...]};计算)
参数 
变量 - 任何变量名、局部变量名或全局变量名(有关命名变量的准则,请参阅关于命名字段)。
表达式 - 任何计算表达式字段常数
计算 - 任何计算表达式、字段或常数。
括号 { } 中的参数是可选的。
返回的数据类型 
文本、数值、日期、时间、时间戳、容器
源于 
FileMaker Pro 7.0
说明 
使用括在括号 [ ] 中并用分号分隔的列表语法时,允许使用多个变量。例如:
Let([变量=值;变量2=值2];计算)
一个 $ 符号参考局部变量,两个 $$ 符号参考全局变量。变量名之后紧跟一个括在括号 [ ] 中的可选重复项编号。例如:
Let([$变量[重复项]=值;$$变量2=值2]{;计算结果} )
Let 函数从左向右设置变量。可以使用以前定义的变量(例如,使用“设置变量”脚本步骤定义的变量)定义新变量值,并可以将一个 Let 函数嵌套在另一个 Let 函数中。如果使用以前在嵌套的 Let 函数中定义的变量,则该变量只在嵌套的函数中有效(就好像您定义了一个完全唯一的变量)。参阅如下所示的城市示例。
可以在其作用域的任何计算中参考已定义的局部变量和全局变量。全局变量的作用域仅限于当前文件。局部变量的作用域是当前脚本。计算中定义的局部变量的作用域为文件,但仅当脚本未运行时可用。局部变量和全局变量(甚至是不同脚本中的两个局部变量)可以具有相同的名称,但它们会被视为不同的变量并可以存储不同的值。
示例 
Let(x=5;x*x) 返回“25”。
Let([x=5;平方=x*x;立方=平方*x];立方) 返回“125”。
Let(城市=巴黎;Let(城市=旧金山;城市&-)&城市) 返回“旧金山 - 巴黎”。
以下示例为当前帐户的权限集设置了局部变量,并返回该变量的内容。如果在脚本中使用此计算,则该局部变量会在脚本执行期间可用。
Let ( $PRIVILEGE_SET = Get(帐户权限集名称) ; $PRIVILEGE_SET ) 如果由具有“完全访问”权限集的帐户进行解析,则会返回 [完全访问]
以下示例设置一个重复项为 50、值为 120 的局部变量计数器
Let($计数器[50]=120;$计数器[50]*2) 返回“240”。
下面的示例显示了在只允许访问 “a” 变量的条件下,如何使用 EvaluateLetGet(脚本参数) 函数传递指定参数(该示例返回“6”):
脚本参数 = "a = 5; b = 10"
Evaluate("Let([" & Get(脚本参数) & "]; a+1)")
下面的示例显示了在允许访问变量 “a” 和变量 “b” 的条件下,如何传递指定参数。简化的第一个参数使第二个参数变得更为复杂(该示例返回“6”,“12”):
脚本参数 = "a = 5; b = 10"
Evaluate("Let( [" & Get(脚本参数) & "]; a+1 & \", \" & b+2 )" )
下面的示例显示了在允许检查 Let 函数第二个参数的语法的条件下,如何传递指定参数(该示例返回“6”,“12”):
脚本参数 = "a = 5; b = 10"
Let([a = Evaluate("Let( [" & Get(脚本参数) & "]; a )"),b = Evaluate("Let( [" & Get(脚本参数) & "]; b )")]; a+1 & ", " & b+2 )
相关主题 
函数参考(类别列表)
函数参考(按字母数字顺序排序的列表)
关于公式
关于函数
定义计算字段
在公式中使用运算符
使用变量