Alfresco Activiti工作流程:如何添加自定义任务操作而不是默认的“任务完成”和“取消”操作?

时间:2014-01-29 10:35:19

标签: alfresco workflow-activity activiti custom-transition

我正在使用Alfreso 4.2c和Activiti来创建我的工作流程。我需要在每个任务中向用户提供不同的操作。例如,在任务中我需要提供诸如 “重新安排会议”,“取消会议”,“发送到练习头”和“取消” 等操作而不是只有“任务完成”和“取消”。我已经覆盖了 “bpm:outcomePropertyName” ,但它只更改了工作流程历史记录中的结果标签。

任何人都可以指导我如何实现这一目标?先感谢您。

2 个答案:

答案 0 :(得分:1)

您需要在工作流模型中定义自己的结果约束,例如:

     <type name="my:myTask">
        <parent>wf:activitiReviewTask</parent>
        <overrides>
             <property name="wf:reviewOutcome">
                    <default>Restart Review</default>
                    <constraints>
                        <constraint name="my:myOutcomeOptions" type="LIST">
                            <parameter name="allowedValues">
                                <list>
                                    <value>Approve</value>
                                    <value>Restart Review</value>
                                    <value>Reject</value>
                                </list>
                            </parameter>
                        </constraint>
                    </constraints>
                </property>
        </overrides>
      </type>

当然,您必须将自定义序列流添加到工作流程定义中。

    <exclusiveGateway id="reviewDecision" name="Review Decision"></exclusiveGateway>
    <sequenceFlow id="flow3" name="" sourceRef="reviewDecision" targetRef="ReviewRejected">
        <conditionExpression xsi:type="tFormalExpression">${wf_reviewOutcome == 'Reject'}</conditionExpression>
    </sequenceFlow>
    <sequenceFlow id="flow3" name="" sourceRef="reviewDecision" targetRef="RestartReview">
        <conditionExpression xsi:type="tFormalExpression">${wf_reviewOutcome == 'Restart Review'}</conditionExpression>
    </sequenceFlow>

...

答案 1 :(得分:0)

使用按钮实现自定义操作 - 在activiti grails休假请求示例应用程序中。例如。保存输入的任务数据,而不是完成任务。但是,编写grails中的自定义代码是为了实现此功能。我希望,在activiti中有一些标准方式,按钮被添加为标准表单组件。

相关问题