针对值列表的Filemaker值验证

时间:2016-06-05 15:20:40

标签: filemaker

需要根据值列表验证字段中的值,如果在列表中保留值,但如果不是,则替换特定值?

1 个答案:

答案 0 :(得分:1)

我担心你会混合两件事:

验证检查是否满足某些条件;如果没有,它会抛出错误。它不会更正条目。

如果您想要更正用户输入,您需要:

  • 定义字段以自动输入计算值;或
  • 将脚本触发器附加到其上,并让脚本修改用户输入的值。

在这种情况下,您可以自动输入计算值(替换现有值)=

If ( IsEmpty ( FilterValues ( Self ; ValueListItems ( Get (FileName) ; "YourValueList" ) ) ) ; "Specific Value" ; Self )

---为回应您的澄清而添加---

从技术上讲,您可以运行脚本来查找要验证的记录,并在该字段上执行“替换字段内容”(使用相同的计算)。您可以在更改值列表后运行脚本,作为每周例程的一部分。

然而,这种方法存在两个主要问题:

  • 某些记录可能被其他用户锁定;
  • 你没有发生什么事的历史,如果犯了错误就没办法回去。

我也不认为让用户定期修改值列表是一种很好的做法。如果您需要每周一次的值列表,则应将它们存储在记录中,而不是存储在值列表中。这样至少值列表的一部分会有历史记录。

您可以考虑的另一个选项是使用具有类似公式的非存储计算字段。这将随值列表动态更改,并保持原始字段不变。例如,如果您需要每周导出更正的值,那么这将是一个很好的安排。