Flowable入门系列文章86 - Flowable Modeler应用程序
Posted 分享牛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flowable入门系列文章86 - Flowable Modeler应用程序相关的知识,希望对你有一定的参考价值。
Flowable Modeler应用程序可用于对BPMN流程,DMN决策表,表单定义和创建应用程序定义进行建模。BPMN建模人员使用与Flowable 5
中相同的Oryx和Angular基础,但是现在这个功能已经被移植到一个单独的Modeler应用程序中。使用Flowable Modeler应用程序时,请确保Flowable IDM应用程序已部署并正在运行(用于身份验证和授权目的)。
当您登录到Modeler应用程序(http:// localhost:8080 / flowable-modeler)与您的用户(或默认管理员/测试用户),您将看到过程总览屏
幕。从这里开始,您可以通过点击Create Process或Import Process按钮来开始创建新的BPMN流程模型。
在创建流程模型(也包括任何其他模型)时,仔细考虑模型关键值是非常重要的。模型关键字是整个模型库中模型的唯一标识符。如果您选择模型存储库中已存在的模型关键字,则会显示错误消息,并且不会保存模型。
使用弹出窗口创建模型后,将显示BPMN建模画布。BPMN编辑器与Explorer应用程序的一部分Flowable 5 BPMN编辑器非常相似。Flowable引擎支持的所有BPMN元素都可用于流程模型的设计。
BPMN编辑器分为4个部分:
- 调色板:可用于设计过程模型的BPMN元素的调色板
- 工具栏:更改模型画布的操作,例如缩放,布局和保存模型
- 模型画布:在其上拖放BPMN元素并设计过程模型的建模画布
- “属性”面板:如果未选择元素,则为主过程模型的属性,否则为选定的PMN元素的属性
对于用户任务元素,在属性面板中有一个引用的表单属性。如果选择此属性,则会打开一个弹出窗口,您可以从存储库中选择表单定义或创建一个新表单。当创建一个新的表单时,会出现一个类似于创建对话框的过程模型创建对话框。填写名称和表格模型键后,打开表格编辑器。
窗体字段可以从窗体调色板拖到窗体画布上。在此示例中,名称textfield,两个日期字段和一个备注多行文本字段被添加到表单画布。编辑表单字段时,可以填写标签,标识,所需状态和占位符。
id字段是一个重要的值,因为将使用id属性值与表单字段值一起创建一个流程变量。填写标签属性时,id属性会自动填充。如果需要,您还可以通过检查覆盖ID复选框自己提供id属性值。
保存表单模型并关闭表单编辑器之后,将自动导航回到流程模型(通过BPMN编辑器打开表单编辑器时)。当再次选择用户任务元素并单击引用表单属性时,您将看到新创建的表单定义现在附加到用户任务。在Modeler应用程序的标题中单击“ 表单”选项卡时,将显示模型存储库中可用的所有表单定义。
您可以通过打开表单定义的详细信息视图来预览每个表单定义。在细节视图中,可以编辑表单名称,关键字和描述,并可以使用表单模型的历史记录。您也可以复制表单定义以使用相同的表单字段创建新的表单定义。
现在,我们再次在BPMN编辑器中打开休假申请流程模型,并将脚本任务添加到流程模型中,计算假期开始日期和结束日期之间的天数。点击脚本格式属性并填入一个常规值以指示Flowable引擎使用Groovy脚本引擎。现在点击Script属性并填入计算天数的脚本。
现在我们有一个amountOfVacationDays流程变量,我们可以将一个决策任务添加到流程模型中。可以使用决策任务来执行Flowable DMN引擎中的DMN决策表。通过决策表引用属性,可以创建一个新的决策表模型,并打开DMN编辑器。
DMN编辑器提供了一个带有输入列的表编辑器,输入条件可以用流程上下文中可用的流程变量定义,输出列可以定义输出变量值。在这个非常简单的例子中,有一个输入列使用了amountOfVacationDays变量,它检查它是否小于10或者更高或者等于10.当天数小于10时,返回值为false 的输出变量managerApprovalNeeded,否则返回a返回true的值。您可以定义多个输入列,并且每个规则具有多个输入条件。也可以将输入列留空,这意味着对于该规则的该部分,它被评估为真。您可以定义一个或多个输出变量。
DMN决策表定义的另一个重要组成部分是命中策略。目前,Flowable支持First和Any策略。使用First hit策略,当发现第一个规则为真时,DMN执行将停止并返回其输出变量。对于任何命中策略,将执行所有规则,并返回最后一个评估为true的规则的输出变量。
当DMN编辑器保存并关闭时,Modeler应用程序返回到BPMN编辑器,新创建的DMN决策表现在附加到Decision任务。决策任务将在BPMNXML中生成,
<serviceTask id="decisionTask" name="Is manager approval needed?" flowable:type="dmn">
<extensionElements>
<flowable:field name="decisionTableReferenceKey">
<flowable:string><![CDATA[managerApprovalNeeded]]></flowable:string>
</flowable:field>
</extensionElements>
</serviceTask>
通过在流程实例上下文中提供managerApprovalNeeded变量,我们现在可以创建一个具有序列流条件的专用网关,用于评估DMN引擎的计算值。
完整的BPMN流程模型现在看起来像这样:
通过完成流程模型,我们现在可以创建一个应用程序定义,将一个或多个流程模型及其所有相关模型(例如决策表和表单定义)组合到一个工件中。应用程序定义可以导出为可在Flowable引擎上部署的BAR文件(zip格式)。在创建休假请求应用程序定义时,应用程序编辑器将如下所示。
在应用编辑器中,可以选择一个图标和一个主题颜色,这些颜色将在Flowable Task应用程序中用于在仪表板中显示应用程序。重要的一步是
添加休假请求过程模型,并通过选择过程模型,自动包含任何表单定义和DMN决策表。
可以通过点击模型缩略图来选择一个流程模型。当选择一个或多个模型时,可以关闭弹出窗口,保存应用程序定义并关闭它。当导航到新创建的休假请求应用程序定义的详细信息视图时,将显示以下详细信息屏幕:
从这个角度来看,你可以用两种不同的格式下载应用程序定义。第一个下载按钮(箭头向下)可以用来下载应用程序定义,每个包含模型的JSON模型文件。这使得在不同的Flowable Modeler应用程序之间共享应用程序定义变得非常简单。第二个下载按钮(箭头指向右上角)将提供应用程序定义模型的BAR文件,可以在Flowable引擎上进行部署。在BAR文件中,只包含可部署的工件,如BPMN 2.0 XML文件和DMN XML文件,而不包括JSON模型文件。部署在Flowable引擎上的BAR文件中的所有文件都存储在数据库中,因此只包含可部署的文件。
从应用程序定义详细信息视图中,还可以将应用程序定义直接发布到Flowable引擎。Flowable Modeler使用具有deployment.api.url属性键的
flowable-ui-app.properties文件中定义的URL 。默认情况下,部署URL已配置,所以应用程序定义将在运行时部署在Flowable Task应用程序上。但是,例如,可以将其更改为使用可流动的REST应用程序。确保Flowable Task应用程序正在运行,然后单击Publish按钮。应用程序定义现在作为BAR文件部署到Flowable Task应用程序。
上面文章来自盘古BPM研究院:http://vue.pangubpm.com/
文章翻译提交:https://github.com/qiudaoke/flowable-userguide
了解更多文章可以关注微信公众号:
以上是关于Flowable入门系列文章86 - Flowable Modeler应用程序的主要内容,如果未能解决你的问题,请参考以下文章
Flowable入门系列文章20 - 基本的Flowable概念一
Flowable入门系列文章80 - Flowable Designer部署功能