Filemaker类似触发器中的日志记录更改适用于SQL

时间:2016-06-07 08:17:06

标签: triggers filemaker database-trigger

我试图在Filemaker中创建以下场景:

我基本上希望在布局中使用时跟踪表中值的更改。

为简单起见,我有一个包含两列的表,表1在第一列中带有ID(主键),第二列带有值。当我在表2中更新/添加第2列中的ID时,我想在表2中存储ID,新值和当前时间戳。

对于表1中的更改​​和新记录,我希望如此。

在SQL中,这很简单,只需创建一个触发器,在表1中的表2中插入新记录。

但还没有想出如何在Filemaker中做到这一点。我知道我可以使用脚本触发器。我的猜测是使用脚本触发器OnRecordCommit和New Record / Request,并在脚本中执行以下操作:

布局中的OnRecordCommit" table1"

  1. 转到布局" table2"
  2. 新记录/请求
  3. 设置Field Table2 :: LogID;表1 :: ID
  4. 设置Field Table2 :: LogValue;表1 ::值
  5. 设置Field Table2 :: LogTimestamp;得到(当前时间戳)
  6. 当我尝试上面的场景时,在table1中创建了无限的空记录

    指导是真实的!真诚的,Christoffer

1 个答案:

答案 0 :(得分:0)

您正在更改上下文,但我没有看到您链接到您尝试记录的记录。在离开table1布局之前,尝试将logID和logValue存储在变量中,并从这些变量中设置日志记录。

另一种选择是看别人做了什么。看看这些链接:

http://timdietrich.me/fmeasyaudit/

https://www.excelisys.com/fm-tips/filemaker-pro-13-tip-n-trick-easy-bake-filemaker-pro-13-audit-trail/

http://www.nightwingenterprises.com/demos2014/demo1306.html