要在 GUI 中创建基于规则的更改触发器
1. 在触发器视图中,选择 > 。“创建触发器”对话框随即显示“类型”面板。
2. 在“名称”字段,为新事件触发器键入名称。
3. 选择“规则”。
4. 要输入事件触发器的说明 (可选),请单击“说明”选项卡。“说明”面板随即显示。
5. 在字段中输入说明。
6. 要定义事件触发器的规则,请单击“规则”选项卡。“规则”面板随即显示。
|
|
如果没有为基于规则的更改触发器定义任何规则,则每次用户在 PTC RV&S 中对任何项执行操作时,触发器都会运行。
|
a. 如果满足某些条件,节点可指定触发器是否运行。通过单击按钮选择节点选项:
▪ “与”指定所有指定的条件必须为 true 才能运行触发器。例如,如果项的 assigned group = documentation,并且 project = editor,则事件触发器运行。
▪ “或” 指定一个或多个条件必须为 true 才能运行触发器。例如,如果项的 state = submitted,或 priority 不等于 high,则事件触发器运行。
▪ “切换”可将选定的节点替换为相对的节点。例如,切换一个“或”节点会将其替换为“与”节点。
▪ “移除”可删除选定的节点。
|
|
如果您的规则仅包含一个条件,则无需使用“与”和“或”节点。
|
b. 在
“条件”下,定义此触发器应该在什么条件下运行。有关详细信息,请参阅
定义规则。
例如,在具有 Development > Testing > Release 状态的工作流中,您可以基于规则创建这样的触发器:每当项更改为测试状态 (State=Testing) 时执行操作。另一个示例是,每次项的已分配用户更改为指定用户时执行某一操作,如以下示例所示:
Assigned User<>Assigned User
Assigned User=mchang
使用相同的 Development > Testing > Release 工作流,您可以基于规则创建这样的触发器:对测试状态 (State=Testing) 中存在的所有项执行操作。另一个示例是对当前分配给指定用户的所有项执行操作 (例如,Assigned User=mchang)。
c. 要将条件添加到规则,请单击“添加”。要用新规则替换现有规则,请在规则列表中选择规则,然后单击“替换”。
d. 要从另一个触发器复制规则,请在“复制”下执行下列操作之一:
▪ 单击“添加”以复制通知条件。复制的条件随即附加到任何现有规则。
▪ 单击“替换”以复制通知条件并替换任何现有规则。
“所选规则”对话框随即显示。
e. 在“具有规则的对象”列表中,选择要从中复制规则的触发器。如果触发器具有规则,则该触发器会显示在“预览”区域中。
▪ 单击“确定”。该规则随即显示在“规则”面板中。
▪ 根据需要重复此步骤,以复制其他规则。
7. 要为新触发器选择脚本,请单击“触发器”选项卡。“触发器”面板随即显示。
a. 要指定事件触发器在已安排时运行的脚本文件或文件,请执行以下操作之一:
▪ 在“脚本文件”字段中,输入 JavaScript™ 文件的名称。对于多个文件,请在文件名之间放置逗号。
▪ 单击“浏览”,从查看器列表中选择一个脚本文件,然后单击“确定”。所选脚本会显示在“触发器”面板中。
|
|
按 CTRL 键可选择多个脚本或清除选择。多选脚本出现在“触发器”面板上的“脚本”字段中,以逗号分隔。
|
b. 如果触发器是事件前或事件后触发器 (或二者皆有),则请启用相应的选项。
c. 如果存在触发器参数,则在相关“参数”字段中输入这些参数。指向字段名称可查看工具提示,其中包含有关参数的详细信息。
|
|
在保存并运行触发器后,参数中的反斜杠 (\) 将被截断,例如,在目录路径中。为避免这种情况,请使用正斜杠 (/)。
|
8. 要在事件触发器运行时为特定字段分配值,请单击“分配”选项卡。根据它们运行的脚本,某些触发器可能不需要分配 (例如,如果已在脚本中对这些分配编码)。“分配”面板随即显示。
您可以通过指定字段和触发器在运行时在该字段中输入的值,来创建规则匹配时产生的分配列表。不能写入的标准字段 (如 ID、“类型”、“创建日期”、“创建者”、“修改日期”和“修改者”) 和项支持的选择列表字段 (具有基于规则的关系) 不可用于分配。
|
|
一个字段只能有一个分配。您添加到分配面板中的最后一个分配是 PTC RV&S 服务器所使用的分配。配置管理项目字段无法分配。
当您选择 Assigned User 或 Assigned Group 字段时,您可以单击“选择”按钮以从用户或组的完整列表中进行选择,包括非活动用户或组。
|
a. 从“字段”列表中选择字段名称。
b. 从“值”列表中,为所选字段选择一个值。
c. 要将分配添加到列表,请单击“添加”。
重复步骤 a) 和 b) 以进行其他分配。要将分配替换为新分配,请在列表中选择要被替换的分配,然后单击“替换”。
d. 要移除某个分配,请在列表中选择该分配,然后单击“删除”。
|
|
在“分配”面板上所做的分配将在执行由脚本文件中代码所做的任何分配后执行。
|
9. 要设置触发器,请单击“确定”。