在添加定义时启动工作流

您可以配置工作流定义,以便在将属性添加到Collibra平台中的资产时启动工作流。新万博移动客户端

只有在工作流启动后,才能通过脚本任务进一步细化筛选。属性类型的UUID (universal unique identifier, UUID)与启动工作流的属性类型的UUID进行比较定义属性类型。您可以调整该场景以满足您的需求。

要获得启动工作流的属性的UUID,请使用Java Workflows API的一个方法事件event.getEventResourceId ()

在向资产添加新属性时启动工作流可能会影响环境的性能,例如当您导入大量资源时。狗万新闻c即使您将筛选细化到非常特殊的情况,工作流仍然需要为添加到资产中的每个新属性启动,以便能够执行脚本任务。

示例工作流

你可以下载DefinitionAdded示例工作流并将其作为您自己工作流程的起点。

属性是否为定义,并将任务分配给具有属性的用户系统管理员的角色。如果属性不是定义,则工作流结束。

启动事件表单有两个字符串可以从Collibra平台工作流定义页面更改的流程变量:新万博移动客户端

  • 的打包UUID定义属性类型:
    • IddefinitionId
    • 默认的00000000-0000-0000-0000-000000000202
  • 一个候选用户表达式对于具有系统管理员的角色。这个变量只在下面这个例子中使用:
    • IdadminUserExpression
    • 默认的角色(系统管理员)

Groovy脚本任务执行如下操作:

  • 将启动工作流的属性的UUID分配给attributeId变量。
  • 创建一个属性对象,该对象对应于启动工作流的属性。
  • 属性类型的UUID并将值赋给attributeTypeId变量。
  • 属性的资产的名称,并将该值赋给assetName过程变量。
  • 方法获取定义的内容并将值赋给definitionText过程变量。
  • 属性类型的UUID与属性类型设置的UUID进行比较definitionId过程变量:
    • 如果匹配,则值真正的分配给isDefinition过程变量。
    • 如果不是,则值分配给isDefinition过程变量。
import com.新万博移动客户端collibra.dgc.core.api.model.instance.attribute.Attribute def attributeId = event.getEventResourceId() Attribute Attribute = attribute茶壶. getattribute (attributeId) def attributeTypeId = Attribute . gettype (). getid () def assetName = Attribute . getasset (). getname () def definitionText = Attribute . getvalueasstring()执行。setVariable("definitionText", definitionText)执行。setVariable("assetName", assetName) if (attributeTypeId == string2Uuid(definitionId)){执行。setVariable("isDefinition", true)} else{执行。setVariable("isDefinition", false)}

时,独占网关将停止工作流isDefinition过程变量为.当isDefinition真正的,工作流程继续:

  • 在此示例工作流中,具有系统管理员角色接收一个任务,该任务通知他们已将定义添加到资产,包括资产的名称和定义的内容。