eeplat_7自定义动作扩展.docVIP

  • 4
  • 0
  • 约 5页
  • 2017-03-18 发布于重庆
  • 举报
eeplat_7自定义动作扩展

自定义动作扩展(以删除多条记录为例) 自定义动作是平台功能的扩展,即为了完成平台不能配置的功能。自定义动作有两种实现方式:通过脚本在线编写 实现com.exedosoft.plat.action.Action接口或继承com.exedosoft.plat.action.DOAbstractAction抽象类 自定义动作的应用场景: 服务使用自定义动作:这时服务的执行委托给自定义动作,不再执行服务定义的SQL语句 参数使用自定义动作:自定义动作的返回值为参数的值 编码(CodeMain)使用自定义动作:自定义动作的返回值编码的值 编码项 CodeItem 目使用自定义动作:自定义动作的返回值为编码项目的值 通过平台提供的javascript callAction 的函数,直接调用自定义动作,完成前台和后台的直接交互 脚本在线编写 var DEFAULT_FORWARD success; var NO_FORWARD noforward; var sSubmit doservice.getService tbl_person_delete ;//调用删除人员的服务 var checks doform.getValueArray checkinstance ;//获取Form节点中name为checkinstance的属性的值 if checks ! null checks.length 0 // 循环调用删除服务 for var i 0 ; i checks.length ; i ++ var rid checks[i] ; sSubmit.invokeUpdate rid ; //rhino js是老版本的,这个rid参数要用[]包起来 SessionContext.getInstance .getThreadContext .setEchoValue 批量删除完成! ; ret DEFAULT_FORWARD ; else SessionContext.getInstance .getThreadContext .setEchoValue 没有数据! ; ret NO_FORWARD ; ret ; //返回值 新建删除服务配置其自定义动作为新添加的动作 打开人员业务对象的服务包,新建一个删除服务,配置明细如下: 配置人员result表格并在其中添加批量删除按钮使之连接的服务为新建的删除服务 配置人员result表格如下: 在人员result表格中新增“批量删除”表格元素,配置如下: 继承com.exedosoft.plat.action.DOAbstractAction抽象类package,路径如下: com.eeplat.action.myself,在其中新建人员批量删除自定义动作类:DeleteAllPerson,然后重启tomcat。(可参照里的) 代码明细如下: public class DeleteAllPerson extends DOAbstractAction @Override public String excute throws ExedoException // TODO Auto-generated method stub // 获取Form节点 BOInstance form DOGlobals.getInstance .getSessoinContext .getFormInstance ; // 调用删除人员的服务 DOService deleteService DOService.getService tbl_person_delete ; // 获取Form节点中name为checkinstance的属性的值 // 因为表格用的GridList控制器,在其配置的checkbox的name为checkinstance, 明细请 // 参照/exedo/webv3/template/grid/GridList.ftl // 因此获取Form节点中name为checkinstance的属性的值即可获得在页面中选择的要删除的人员列表 String[] checks form.getValueArray checkinstance ; if checks null checks.length 0 this.setEchoValue 没有数据! ;// 在页面弹出提示框 return NO_FORWARD; else // 循环调用删除服务 for int i 0; i checks.length; i++ deleteService.invokeUpda

文档评论(0)

1亿VIP精品文档

相关文档