开发步骤
- 实现
PRMActionExtendsInterface接口initHtmlJavaScript(),getActions(processInst, taskInst)方法 - 用
PRMActionExtendsPluginProfile描述这个插件,注册到该应用的PluginListener类(见本文档插件应用 > PluginListener章节)。通过设置注册插件语法中的scope参数值,控制扩展按钮作用范围,具体参见下方的注册语法注册语法参数说明 - 场景模拟,调试
 
注意:本章节提供的相关接口说明,请以aws-api-doc为主。
PRMActionExtendsInterface接口
开发者可实现这个接口完成你的实例运行管理动作扩展操作。
com.actionsoft.bpms.maintain.plugin.PRMActionExtendsInterface
/**
 * 实例运行管理动作扩展接口
 */
public interface PRMActionExtendsInterface {
    /**
     * 可以引用一些HTML片段,或者JavaScript片段
     * 1. <div>实例扩展按钮</div>
     * 2. <script src='xxx.js'></script>
     * 3. <script>function xxx(){...}</script>
     * @return
     */
    public String initHtmlJavaScript();
    /**
     * 返回一系列的动作数组,每个JSONObject是一个按钮
     *
     * id:唯一标识
     * text:按钮名称
     * title:按钮的描述信息,作为鼠标提示展
     * event:事件,通常是一个onclick动作,形如:<code>onclick='alert(1);'</code>
     * style:内联样式列表
     * url:链接
     * target:url打开目标 `sidebar` 侧边栏打开, `blank` 新窗口打开,  `self` 当前窗口打开,  `parent` 父窗口打开,  `top` 整个窗口中打开
     * orderIndex:排序顺序
     *
     * @return 每个JSONObject是一个按钮的JSONArray
     */
    public JSONArray getActions(ProcessInstance processInst, TaskInstance taskInst);
}
PRMActionExtendsInterface initHtmlJavaScript()返回值说明
- 根据需要返回自定义html片段,例如:
<div id='dialog'></div> - 根据需要自定义js方法,例如:
<script src='index.js'></script><script>function opendDialog(){$("#dialog").dialog();}</script> 
PRMActionExtendsInterface getActions()返回参数说明
| 参数 | 说明 | 备注 | 
|---|---|---|
| processInst | 流程实例 ,开发者可以使用该参数获取对应的流程实例数据用于按钮事件的实现 | 注意:需要判断当前实例是否为null | 
| taskInst | 任务实例,开发者可以使用该参数获取对应的任务实例数据用于按钮事件的实现 | 注意:需要判断当前实例是否为null | 
PRMActionExtendsInterface getActions()返回json键值说明
| key | 说明 | 
|---|---|
| id | 唯一标识 | 
| text | 按钮名称 | 
| title | 按钮的描述信息,作为鼠标提示展示 | 
| event | 事件,通常是一个onclick动作,形如:onclick='alert(1);' , | 
| style | 内联样式列表 | 
| url | 按钮点击链接,url 打开方式根据target属性值,若target值未设置,默认新窗口打开。url链接事件与event事件不可同时存在 | 
| target | 窗口打开方式。 sidebar 侧边栏打开, blank 新窗口打开, self 当前窗口打开, parent 父窗口打开, top 整个窗口中打开 | 
| orderIndex | 自定义按钮排序顺序,建议序号间隔按10倍数设置,方便排序 | 
注册语法
由PRMActionExtendsPluginProfile类完成向AWS PaaS的注册。
//注册PRMActionExtends
list.add(new PRMActionExtendsPluginProfile(id, name,clazz,desc,scope));
id唯一标识name名称clazz实现类路径,如com.actionsoft.apps.poc.plugin.web.SuperExtendsWebdesc描述scope按钮作用范围all流程实例 任务实例均实现展示,process流程实例 ,task任务实例

Seven
      
  010-62962343-690
        
 liujx@actionsoft.com.cn
        
    
    感谢您对该文档的关注!如果您对当前页面内容有疑问或好的建议,请与我联系。如果您需要解答相关技术问题请登录AWS客户成功社区