在 FileMaker 中,如何防止输入数据后字段被更改?

问题描述 投票:0回答:1

我有一个布局,称之为

ExperimentsLayout
,基于我的数据库表
Experiment
,它通过外键关系与表
Scientist
相关:
Scientist.Id -> Experiment.ScientistId

我的数据库的用户(科学家)对 FileMaker 还有些陌生,我预计未来 FileMaker 新手会相对稳定地涌入,因此我希望以一种能够最大限度地减少可能损害数据完整性的用户错误的可能性的方式进行设计。

在我的布局

ExperimentsLayout
中,我有一个
Experiment.ScientistId
的下拉列表框。输入
ScientistId
后,我想要:

  1. 完全防止其被更改,或者
  2. 抛出确认弹出窗口,以确保此更改是有意的
  3. 以其他方式防止
    Experiment -> Scientist
    关系被无意改变

当用户浏览

ExperimentsLayout
时,我发现有时他们会在浏览模式而不是查找模式下更改
ScientistId
,认为这是提取与其他科学家相关的订单的方法——但他们实际上正在做的是改变与
Experiment
记录相关的科学家。作为 FileMaker 的一个相对较新的用户,我完全理解为什么用户会犯这个错误,因为“浏览”和“查找”模式之间的 UX 区别被“非常”(对我来说令人震惊)低估了。这是科学数据完整性问题的一颗定时炸弹。

foreign-keys relational-database filemaker
1个回答
0
投票
"On Obect Enter"

的字段添加脚本触发器。


进入布局模式
  • 右键单击该字段并选择
  • "Set Script Triggers..."
  • 选择
  • "OnObjectEnter"
  • 
    
  • 您可以使用脚本退出该字段或显示确认框等。

或者

您可以在脚本中使用“转到字段[]”向布局添加一个按钮,并处理按钮中的逻辑。该字段还需要放置在布局上。确保用户无法导航到该字段,例如按“选项卡”。通过转到检查器并关闭字段输入选项中的“浏览模式”和/或“查找模式”来删除编辑字段的功能。
  • 还有其他选择,例如将该字段放入弹出窗口中,并将脚本触发器添加到弹出窗口中。新窗口可能是一个较小的“卡片”窗口,将出现在基本窗口的顶部。
© www.soinside.com 2019 - 2024. All rights reserved.