打开事务处理
开始事务处理;后续记录更改在“提交事务处理”或“恢复事务处理”脚本步骤执行之前将保留在事务处理中。
注释 事务在发起的窗口中处理。在非发起事务窗口执行的窗口操作将自动在现有事务外部提交。
另请参阅
选项
-
“跳过数据输入验证”直接提交记录,而不考虑为字段设置的任何数据输入验证选项。该选项只跳过对使用“字段选项”对话框中的“仅在数据输入过程中”验证选项设置的字段的验证;即使选定了“跳过数据输入验证”选项,设置为“始终”验证的字段仍需要验证。请参阅定义字段验证。
-
“覆盖 ESS 锁定冲突”允许 ODBC 数据源的客户在乐观锁定阻止提交操作时强制提交更改。ODBC 数据源也称为外部 SQL 源 (ESS)。
兼容性
产品 | 是否支持 |
FileMaker Pro | 是 |
FileMaker Go | 是 |
FileMaker WebDirect | 是 |
FileMaker Server | 是 |
FileMaker Cloud | 是 |
FileMaker Data API | 是 |
自定义 Web 发布 | 是 |
原始版本
19.6.1
说明
事务处理包括对当前窗口中一条或多条记录的更改。事务中的更改可能会影响多个数据库文件中的多个表。一个事务中的所有更改将一起提交,或者,如果发生错误,将一起还原。事务从“打开事务处理”脚本步骤开始。在开始事务后,后续记录更改将保留在事务中,直到执行“提交事务处理”或“恢复事务处理”脚本步骤。下列步骤可以更改数据库架构中存储的记录,可用作事务性脚本步骤。
-
如果导入目标是新表,则在事务未提交时,该表、表摹本和布局都会删除。如果“提交事务处理”脚本步骤返回错误或者执行“恢复事务处理”脚本步骤,则事务不会提交。
-
插入脚本步骤:插入音频/视频、插入计算结果、插入当前日期、插入当前时间、插入当前用户名、插入文件、从设备插入、从索引插入、从最后一次访问处插入、从 URL 插入、插入 PDF 、插入图片、插入文本
向脚本添加“打开事务处理”脚本步骤时,“提交事务处理”脚本步骤会自动与之配对。
事务:
-
将一个或多个字段或表修改合并为一个更改集
-
提交或还原整个更改集
-
对“打开事务处理”与“提交事务处理”脚本步骤之间的字段或表修改分组
-
允许您创建更可靠的更改集
-
可以使用“恢复事务处理”脚本步骤自动还原
-
作为一个组成功(提交)或失败(还原)
-
符合架构规则时成功
-
不符合架构规则时自动还原
-
可以选择在不符合架构规则时跳过验证设置并覆盖自动还原。覆盖架构规则可能会破坏事务的完整性。
-
在“提交事务处理”脚本步骤之前修改临时本地文件会将更改保存至主文件
事务在以下情况下自动提交并结束:
-
以下脚本步骤更改布局窗口:“新建窗口”、“关闭窗口”或“选择窗口”
-
使用以下对话框:“管理数据库”、“管理容器”或“管理数据源”
-
执行以下操作或脚本步骤:“副本另存为”或“重新登录”。
-
文件关闭
事务在以下情况下自动还原:
-
在开始事务之前存在未解决的架构错误。发生此情况时自动跳过事务。
-
字段更改(设置为始终验证)与字段的验证选项不匹配
-
使用“恢复事务处理”脚本步骤
-
取消脚本
-
在事务中使用“中断脚本”脚本步骤
-
使用脚本调试器取消脚本
-
具有权限错误,例如无字段访问权限、无记录访问权限、无表访问权限
注释
-
您无法使用“打开事务处理”脚本步骤在一个事务中开始另一个事务。
-
使用“执行脚本”脚本步骤的嵌套事务加入发起事务,但它们会忽略子脚本中嵌套的“恢复事务处理”和“执行事务”脚本步骤。
-
“删除记录”操作在事务中使用时每次删除一条记录。
-
“清空表记录”操作无法还原。
-
“导入记录”操作在事务中使用时不显示摘要。
-
“恢复事务处理”脚本步骤不还原“自动输入序列增量”值。
-
布局设置中的“自动保存记录更改”选项在事务期间将被忽略。
-
“执行 FileMaker Data API 脚本”步骤所做的更改未包含在脚本的事务处理中。在此脚本步骤中完成的任何操作即使包含在事务处理中,将无法恢复。
示例 1
打开并提交事务。
打开事务处理 []
打开记录/请求
设置字段 [ Assets::Description ; "描述性文本" ]
提交事务处理
示例 2
打开并提交没有数据输入验证的事务。
打开事务处理 [ 跳过数据输入验证 ] 打开记录/请求设置字段 [ Assets::Description ; "描述性文本" ] 提交事务处理
示例 3
打开并提交没有 ESS 锁定保护的事务。
打开事务处理 [ 覆盖 ESS 锁定冲突 ] 打开记录/请求设置字段 [ Assets::Description ; "描述性文本" ] 提交事务处理