创建基于规则的更改触发器
当用户以符合定义的规则的方式更改项时,基于规则的更改触发器就会运行。若原始用户修改或创建项导致触发器运行,由此产生的任何修改都会显示为是由该用户进行的。
|
|
使用触发器阻止用户操作时,请确保触发器向用户显示出错消息,并且用户有可用的行动方案。
|
创建基于规则的更改触发器所需的常规步骤如下所示:
1. 选择基于规则的更改触发器类型。
2. 提供触发器的说明。
3. 定义关于触发器何时运行的规则。
4. 从库中选择一个用于运行触发器的脚本文件。然后,如果需要,请填写其参数。
|
|
在保存并运行触发器后,参数中的反斜杠 (\) 将被截断,例如,在目录路径中。为避免这种情况,请使用正斜杠 (/)。
|
5. 将值分配给触发器运行时会修改的字段 (如果触发器是修改数据库中字段值的触发器)。
重要考虑事项
• 确保用户需要更新的每个字段都可由该用户合法地更新。
• 如果要更改项的状态,请确保状态转变有效。
• 如果要更改项的状态,并且新状态不允许打开的更改包,请确保在进行状态更改前关闭所有更改包。
• 确保工作流中最终状态的所有必填字段都包含值。
• 文档模型对以下更改触发器强制执行:
◦ 如果更改触发器对属于下列项之一的任何共享项的“作者”或“重复使用”节点进行了重要编辑,则将导致为支持共享项创建分支:
▪ 由“创作”节点和至少一个“重复使用”节点参考的项
▪ 由两个或更多“重复使用”节点参考的项 (这第二种情况不需要“作者”节点)
◦ 更改触发器无法在“共享”模式下对节点执行重要编辑。如果进行此类尝试,编辑将中止并报错。
• 在运行任何触发器代码之前,先进行验证。事件前触发器仅在所有验证均成功的情况下才运行。请注意,触发器具有管理员特权,并且可能会覆盖用户权限。
• 如果您的规则仅包含一个条件,则无需使用“与”和“或”节点。
• 如果没有为基于规则的更改触发器定义任何规则,则每次用户在 PTC RV&S 中对任何项执行操作时,触发器都会运行。
• “前”和“后”选项不可用于已安排的触发器。
• 示例目录下列出的脚本 (例如,samples/breakLockNotification.js) 用于配置管理,不适用于工作流和文档管理。
相关主题