FileMaker 16 iPad端签名容器字段点击确认后需二次操作捕获签名
这种签名窗口反复触发、字段数据丢失的情况在FileMaker移动端部署中并不少见,结合你的描述,我整理了几个核心排查方向:
检查按钮触发逻辑的重复执行
你的容器字段被定义为按钮,首先要确认按钮的触发事件类型:如果是OnObjectEnter,当签名窗口关闭后焦点自动回到容器字段,会再次触发打开签名窗口的脚本,直接导致重复弹出。建议把触发方式改成OnObjectClick,并检查脚本中是否存在重复调用打开窗口步骤的分支(比如错误处理里的重试逻辑)。另外,iPad的触摸交互可能存在误触,确认签名窗口关闭时的操作不会意外触碰容器按钮区域。验证容器字段数据的提交与保存
FileMaker移动端的容器字段更新需要明确的提交动作,否则数据可能不会被持久化。在签名捕获完成、给容器字段赋值的脚本步骤后,务必添加Commit Records/Requests(勾选“无需对话框”),确保数据写入。如果缺少这一步,窗口关闭后字段会因为未保存而清空,同时脚本可能因检测到数据未写入而重新触发签名窗口。另外,避免在提交前执行Refresh Window或Refresh Object,这会导致未保存的字段数据被重置。排查错误捕获与脚本分支的隐性逻辑
虽然你设置了Set Error Capture Off,但仍要检查签名捕获相关步骤(比如Insert from Device)的错误返回。可以在关键步骤后添加Show Custom Dialog [ Get(LastError) ],查看是否有写入权限不足、设备访问失败等错误码——这类错误可能会让脚本进入未预期的分支,重新打开签名窗口。比如容器字段的权限设置是否允许用户编辑?托管服务器的文件权限是否开放了容器字段的写入权限?检查布局对象的交互冲突
iPad端的布局触摸区域容易出现重叠问题,确认签名窗口的“确认”按钮是否与容器字段的触摸范围重叠,或者布局上存在透明的隐藏按钮触发了打开签名窗口的脚本。另外,FileMaker 16在iPad上的布局缩放可能导致按钮触摸区域偏移,建议在布局模式下检查容器按钮的边界是否准确,避免误触。考虑托管环境的同步延迟
由于是托管部署,服务器同步可能存在短暂延迟。如果签名数据还未同步到服务器,窗口关闭后本地缓存被刷新,可能导致字段清空并触发脚本重试。可以尝试在Commit Records/Requests后添加Pause Script [ Duration (seconds): 1 ],给数据同步留出时间,再执行关闭窗口的步骤。
内容的提问来源于stack exchange,提问作者Bigboy6

