工作流示例-检查标签
在本教程中,您将创建一个工作流,该工作流将在添加标签ta列时自动触发,技术管理人员将自动接收一个任务来批准或拒绝标签。如果技术专员批准标记,则将布尔属性添加到相应的列中。
先决条件
- Java SE开发套件:
- 下载链接:Zulu JDK 8.
- Eclipse:
- 下载链接:Eclipse.
- 选择面向Java开发人员的Eclipse IDE的版本。
- 可流动的设计师:
- 打开Eclipse。
- 在菜单栏上,单击帮助→安装新软件….
- 在可用的软件窗口中,单击添加.
- 输入所需信息:
- 的名字:可流动的BPMN 2.0设计器.
- 位置:https://www.flowable.org/designer/update/.
每个与会者都有一个单独的Collibra数据智能云环境。新万博移动客户端你可以在以下网址找到你的资料:
检查设置:
- 导航到您的环境。
- 登录方式:
- 用户名:管理
- 密码:uth19
- 去目录→数据源.
- 检查是否可以看到列的列表。
在这个研讨会期间,您需要一个示例列来测试您的工作流。
用例概述
生成一个工作流项目和图表
- 打开Eclipse。
- 选择文件→新→其他…….
- 搜索可流动的.
- 选择可流动的项目.
- 输入项目名称:uth-dc19.
- 点击完成.
- 导航到~ / src / m狗万新闻cain /资源/图.
- 右键单击图文件夹并选择新→其他…….
- 搜索可流动的并选择可流动的图.
- 进入流程的名字:PIITagApproval.
- 打开PIITagApproval使用流程图编辑器.
部署工作流
在用例研讨会的每个步骤之后,您可以部署您的工作流并测试您已经实现的更改。要部署您的工作流:
- 进入Coll新万博移动客户端ibra数据智能云。
- 去设置→工作流→工作流定义.
- 点击上传文件并选择要部署的BPMN文件。
- 如果部署成功,则搜索PII标签审批工作流。
- 在适用于部分中,选择资产.
- 的右上角适用于部分中,点击添加.
- 搜索列资产类型,单击保存.
- 要启用工作流,请单击玩按钮。
- 检查状态以验证工作流是否已启用。
用例步骤1
在用例步骤1中,您为不同的涉众使用池和泳道创建初始流程结构。接下来,为Technical Steward添加一个用户任务,以检查是否存在PII标记并手动标记包含个人身份信息的列。
添加进程池
- 去可流动的调色板.
- 去容器部分,并拖动池在空画布里。
- 选择存储池并转到属性面板。
- 输入所需信息:
- Id:tagApprovalPool
- 的名字:标签批准
- 去过程面板。
- 输入所需信息:
- Id:piiTagApprovalWorkflow
进程ID在Collibra环境级别上必须是唯一的。新万博移动客户端
上传与Collibra中现有工作流具有相同流程ID的工作流将取代现有工作流。新万博移动客户端
- 的名字:PII标签审批
名称将显示为Collibra中的工作流名称。新万博移动客户端
新万博移动客户端Collibra不接受具有相同显示名称的两个工作流。
- 名称空间:http://www.新万博移动客户端collibra.com/apiv2
通过引用Collibra Java API的版本2,工作流将根据新万博移动客户端V2方法进行验证,而被弃用的V1方法将触发方法不存在调用时出错。
- 文档:字段的内容将成为Collibra中工作流的描述。新万博移动客户端
- Id:piiTagApprovalWorkflow
设置游泳道
每个池默认包含一个lane。要添加第二个并配置它们:
- 去可流动的调色板.
- 去容器部分,并拖动车道在泳池里。
- 配置第一个通道:
- 选择车道。
- 去属性面板。
- 输入所需信息:
- Id:systemLane
- 的名字:系统
- 配置第二通道:
- 选择车道。
- 去属性面板。
- 输入所需信息:
- Id:technicalStewardLane
- 的名字:技术专员
添加开始和结束事件
- 去可流动的调色板.
- 去开始活动容器,并拖动StartEvent在系统车道。
- 选择开始事件。
- 去属性面板。
- 选择形式选项卡。
- 添加一个approverUserExpression变量:
变量可以从Collibra数据智能云中的workklow定义页面更改。新万博移动客户端
- 点击新.
- 输入所需信息:
- ID:approverUserExpression
- 的名字:审批人用户表达
- 类型:字符串
- 默认的:角色(技术主管)
- 要求:真正的
- 可读的:假
- 可写:真正的
- 去结束事件容器,并拖动EndEvent在系统车道。
添加检查标签技术专员的用户任务
- 去可流动的调色板.
- 去任务容器,并拖动UserTask在技术专员车道。
- 选择用户任务。
- 去属性窗格。
- 进入任务的名字:检查标签.
- 去文档页签,输入任务描述。
该描述将显示在Collibra的任务栏中,为用户提供更多的上下文和如何完成任务的指导。新万博移动客户端
- 去主要配置选项卡。
- 输入一个Canditate用户表达式定义在开始表单变量中:
$ {approverUserExpression}
.
方法中的步骤部署工作流部署工作流部分。通过转到a来测试工作流列资产,并单击PII标签审批按钮。
用例步骤2
在用例步骤2中,您添加了一个脚本任务来自动检查列是否具有PII标记,并相应地路由工作流。当列没有被标记为PII时,您将结束工作流。当列被标记为PII时,您可以为技术专员创建一个任务,手动将个人可识别的信息标记添加到列资产中。
广告获取和筛选标签脚本
- 删除启动事件和用户任务之间的连接。
- 去可流动的调色板.
- 去任务容器,并拖动ScriptTask在系统车道。
- 选择脚本任务。
- 去属性窗格。
- 输入脚本任务的名字:获取和筛选标签.
- 去主要配置选项卡。
- 选择Groovy脚本语言。
- 添加获取和筛选标签脚本:
loggerApi.info("Get & filter tags script started…")//变量def tags = [] def piiTagName = execute . getvariable ("piiTagName") def isPII = false def assetUuid = item。id tags = tagApi.getTagsByAssetId(assetUuid) loggerApi.info("Number of tags found: " + tags.size()) //遍历标签列表并检查PII标签为(标签中的标签){if(tag. getname ().equals(piiTagName)){isPII = true}} loggerApi.info("isPII状态:" + isPII) //设置工作流执行中使用的变量。setvariable ("isPII",isPII) loggerApi.info("Get & filter tags script ended.")
在是否找到PII数据时路由工作流
- 去可流动的调色板.
- 去网关容器,并拖动ExclusiveGateway到系统莱恩,在获取和筛选标签脚本的任务。
- 去结束事件容器和拖一秒EndEvent到系统车道,在专用大门上面。
- 将第二个结束事件与独占网关连接SequenceFlow.
- 选择序列流并进入的名字:没有发现个人资料.
- 去属性窗格。
- 单击主要配置选项卡,输入条件PII未找到:
$ {!isPII}
. - 将独占网关与用户任务连接SequenceFlow.
- 选择序列流并进入的名字:PII发现.
- 去属性窗格。
- 在主要配置选项卡,输入条件PII发现:
$ {isPII}
. - 更改用户任务名称和文档,以反映用例步骤2的行为变化:
- 的名字:添加PII属性
- 文档:通过添加PII布尔属性手动将该资产标记为PII。
方法中的步骤部署工作流部署工作流部分。通过转到a来测试工作流列资产,并单击PII标签审批按钮。
用例步骤3
在用例步骤3中,您添加了一个审批用户任务,该任务是在列标记为PII时创建的。技术专员需要通过批准或拒绝并提供理由来完成批准用户任务。原因会自动保存到Collibra的评论区。新万博移动客户端当技术专员批准PII标记时,专员必须手动将PII属性添加到相应的列中。
创建审批用户任务
- 从中选择用户任务用例步骤1.
- 去属性窗格并更改名称和文档:
- 的名字:批准PII标签
- 文档:批准带有“${piiTagName}”标记的资产是否具有个人身份信息。如果您同意,请将PII布尔属性添加到此列。
- 创建用于完成审批用户任务的对话框:
- 单击形式选择并单击新添加一个新的表单字段。
- 添加一个评论框,允许技术专员提供一个原因:
- Id:commentBox
- 的名字:原因
- 类型:文本区域
- 要求:真正的
- 可读的:真正的
- 可写:真正的
- 添加一个任务按钮,以明确定义任务中需要执行的操作:
- Id:taskButton1
- 的名字:批准/拒绝
- 类型:taskButton
- 要求:假
- 可读的:真正的
- 可写:真正的
- 在对话框中添加一个批准按钮:
- Id:approveButton
- 的名字:批准
- 类型:按钮
- 要求:假
- 可读的:真正的
- 可写:真正的
- 在对话框中添加一个拒绝按钮:
- Id:rejectButton
- 的名字:拒绝
- 类型:按钮
- 要求:假
- 可读的:真正的
- 可写:真正的
把原因留到评论区吧
- 去可流动的调色板.
- 去任务容器,并拖动ScriptTask在系统车道。
- 选择脚本任务。
- 去属性窗格。
- 输入脚本任务的名字:保存评论.
- 去主要配置选项卡。
- 选择Groovy脚本语言。
- 添加添加评论脚本:
import com.新万博移动客户端 collibra.dc.core .api.dto.instance.comment. addcommentrequest import com. collibra.dc.core .api.model. resourcetype loggerApi.info("Add comment script started…")//变量def commentBox = execute . getvariable ("commentBox") def commentBoxContent = commentBox. tostring () def assetUuid = item。id loggerApi.info("注释框内容:" + commentBoxContent) commentApi.addComment(AddCommentRequest.builder() . baseresourceid (assetUuid) . baseresourcetype (resourctype . asset) .content(commentBoxContent) .build()) loggerApi.info("添加注释脚本结束。")
- 连接保存评论脚本到结束事件SequenceFlow.
方法中的步骤部署工作流部署工作流部分。通过转到a来测试工作流列资产,并单击PII标签审批按钮。
用例步骤4
在用例步骤4中,当一个标记被添加到一个列中,技术管理人员自动接收一个任务来批准或拒绝PII标记时,您将自动触发工作流。如果技术专员批准标记,PII布尔属性将被添加到相应的列中。
基于批准或拒绝路由工作流
- 去可流动的调色板.
- 矩形脉冲断开的网关容器,并拖动ExclusiveGateway到系统就在那之后保存评论脚本的任务。
- 去结束事件然后拖动第三个容器EndEvent到系统车道,在专用大门上面。
- 属性将第三个结束事件与独占网关连接SequenceFlow.
- 选择序列流并转到属性窗格。
- 在主要配置选项卡,输入条件当标签被拒绝时:
$ {rejectButton}
. - 去可流动的调色板.
- 去任务容器,并拖动ScriptTask独占网关之后。
- 连接脚本的任务与排他网关使用一个序列流.
- 选择序列流并转到属性窗格。
- 在主要配置选项卡,输入条件当标签被批准时:
$ {approveButton}
. - 属性将脚本任务与最后一个结束事件连接SequenceFlow.
使用脚本任务自动设置PII属性
- 选择最后添加的脚本任务。
- 去属性窗格。
- 输入脚本的名字:设置PII属性.
- 去主要配置选项卡。
- 选择Groovy脚本语言。
- 添加设置PII属性脚本:
import com.新万博移动客户端collibra.dgc.core.api.dto.instance.attribute.AddAttributeRequest loggerApi.info("Set PII Attribute script started…")//变量def assetUuid = item。id def piiAttributeTypeId = execute . getvariable ("piiAttributeTypeId") def piiAttributeTypeUuid = string2Uuid(piiAttributeTypeId) //设置PII属性attribu茶壶. addattribute (AddAttributeRequest.builder() .assetId(assetUuid) .typeId(piiAttributeTypeUuid) .value(true) .build()) loggerApi.info("Set PII属性脚本结束")
在向列添加标记时自动触发工作流
- 进入Coll新万博移动客户端ibra数据智能云。
- 去设置→工作流→工作流定义.
- 选择PII标签审批工作流。
- 去开始活动部分。
- 选择资产标签事件.
- 点击保存.
方法中的步骤部署工作流部署工作流部分。通过转到a来测试工作流列资产,并单击PII标签审批按钮。