如果用户没有在FORM VIEW中查看记录,如何防止脚本运行?

时间:2013-02-05 17:49:06

标签: filemaker

在Filemaker Pro 11中,我编写了一个脚本触发的脚本,以便在OnRecordLoad的每个实例上运行,但是当用户在LIST或TABLE VIEWS中工作时,我不希望它运行。

我的脚本开头是否有一些代码可以按照这种逻辑的方式执行:

“如果CURRENT VIEW不= FORM VIEW则结束脚本”

会在脚本运行之前有效地结束脚本。

我是FM的新手,我无法找到一种方法来检查脚本中的当前视图状态。如果这不可能,是否有办法限制某些脚本触发器被启用,具体取决于用户当前所在的视图(表单,列表或表)?

感谢您提供的任何帮助!

2 个答案:

答案 0 :(得分:2)

使用Get(LayoutViewState)函数(http://www.filemaker.com/12help/html/func_ref2.32.50.html

If[ Get ( LayoutViewState ) = 0 ]
    //They're in form view, do stuff
Else
    //They're in list view or table view, skip
End If

答案 1 :(得分:1)

您的脚本应该在开头包含以下行:

If[Get(LayoutViewState)<>0]{
    Exit Script[]
}

这基本上确保了脚本只在用户的布局处于窗体视图中时才会运行。

获取(LayoutViewState)返回:

    表单视图
  • 0
  • 列表模式
  • 1
  • 表视图
  • 2

类似的函数是返回的Get(WindowMode):

    浏览模式
  • 0
  • 查找模式
  • 1
  • 预览模式
  • 2

希望这有帮助。