变更自定义触发器允许您执行自定义脚本或文件,并自动执行与变更相关的任务。在自定义触发器中,您可以定义规则,当规则与变更请求匹配时,将调用预定义的操作。触发器在执行其他模块或第三方应用程序中的操作时特别有用。
使用变更自定义触发器可以执行的一些操作包括:在更新变更后变更角色指派、根据 CAB 建议的百分比批准变更、在变更关闭时解决相关问题和事件、在取消/完成变更请求时关闭任务等。
单击管理工具>>问题/变更管理>>变更自定义触发器。
单击添加新动作,为动作提供唯一的名称和描述。
从以下选项中选择需要执行的动作:
您可以设置与执行自定义脚本的变更相匹配的条件。
选择条件字段并设置相应的条件和字段值,如以下截图所示。
点击添加图标或添加另一个条件,指定更多匹配条件。根据需要在条件之间切换 AND 和 OR 运算符。
选择要触发的动作类型和相应的脚本/类文件/自定义函数。
对于执行脚本/类操作类型,请在提供的字段中指定文件名。 点击此处 查看自定义脚本配置示例。
还可以传递自定义脚本的参数。
Eg: cmd / c Index.bat $SUBJECT $PRIORITY $STATUS
$COMPLETE_JSON_FILE ---> 完整的请求对象将被保存到一个 JSON 文件,文件路径将以字符串对象的形式传递。如果操作是 “编辑变更时”,那么 DIFF_JSON(旧变更数据和新变更数据之间的差异)也将保存到 JSON 文件中。
JSON 文件路径:(SDP_Home/integration/custom_scripts/change/12_1426143538036.json)。
这里是支持的更多参数列表。
使用自定义函数执行,您可以在 ServiceDesk Plus 和其他外部应用程序中动作数据。
选择所需的自定义函数或添加新函数。
了解如何编写自定义函数, 查看此页。 此外,这里还有自定义函数的用例。
选择是否必须在变更时停止执行与变更条件匹配的后续自定义触发器。
单击保存。
您可以在列表视图页面中对自定义触发器进行排序,从而确定其优先级。
单击右上角的组织动作,使用相应按钮重新排列自定义触发器,然后单击保存。
点击这里 查看 "自定义触发器 "的示例方案,以及示例类文件和脚本。
我们还可以为自定义脚本传递参数。 所有 API 参数都支持作为参数,下表列出了支持的参数。
| 参数 | 描述 |
| $TITLE | 表示变更的标题 |
| $DESCRIPTION | 提供变更说明 |
| $TEMPLATE | 表示用于创建变更的模板名称 |
| $SUBCATEGORY | 表示为特定变更配置的子类别 |
| $CATEGORY | 表示为特定变更配置的类别 |
| $ITEM | 表示为特定变更配置的项目 |
| $SITE | 表示提出变更的地点 |
| $TYPE | 表示组织内发起的变更的重要性 |
| $SCHEDULED_START_ON | 提供变更的预定开始时间 |
| $ASSETS | 提供与特定变更相关的资产 |
| $ROLES | 表示专门为变更定义的访问权限 |
| $REASON_FOR_CHANGE | 表示启动变更请求的目的 |
| $URGENCY | 表示变更的紧急程度 |
| $IMPACT | 提供变更的影响 |
| $GROUP | 表示变更所属的组别 |
| $ISOVERDUE | 表示变更是否逾期 |
| $SERVICES_AFFECTED | 表示因变更而受影响的服务 |
| $COMPLETED_ON | 提供变更的完成时间 |
| $RISK | 表示实施变更期间的风险程度 |
| $SCHEDULED__END_ON | 提供变更的预定结束时间 |
| $STATE | 表示变更的阶段和状态 |
| $ID | 提供为变更生成的唯一 ID |
| $PRIORITY | 表示变更的优先级别 |
| $CUSTOM_FIELDS | 提供有关为变更配置的自定义字段的信息 |