监理公司管理系统 | 工程企业管理系统 | OA系统 | ERP系统 | 造价咨询管理系统 | 工程设计管理系统 | 甲方项目管理系统 | 签约案例 | 客户案例 | 在线试用
X 关闭
免费OA系统

当前位置:工程项目OA系统 > 免费办公软件 > 免费OA系统

免费OA系统流程流转过程中和异构系统数据交互(action)

申请免费试用、咨询电话:400-8352-114

第三部分 泛普免费OA系统流程流转过程中和异构系统数据交互(action)
一. 泛普OA免费版接口说明
该接口主要实现在流程的流转当中,实时通过自定义的动作去操作异构形体系统的数据或者是其他一些特定的操作。 
在流程的每个出口都可以定义这样的自定义动作,从而实现在流程流转过程导入,导出流程的相关信息,或者将流程信息和其他应用相结合。
 
二. 泛普OA软件应用效果
通过泛普OA系统流程申请处理:
 
流程提交或处理结束后,报销流程中的数据会自动生成到NC系统中:
 
查询后的结果:
 
从这里可以查看到从泛普OA系统提交过来的对应数据:
 
 
三. 泛普OA管理系统实现方法&步骤
1、配置接口文件(action.xml)
2、编写接口(action)实现代码
3、流程管理员把action.xml中定义的接口设置为流程节点附加操作后,就可以实现流程到达该节点前(或离开该节点后)执行接口实现代码。
4、在流程设置中应用该功能
 
1. xml文件配置
该文件名为action.xml,位于(该文件位于泛普OA系统的WEB-INF/service/目录下)
<?xml version="1.0" encoding="GBK"?>
<module id="datasource" version="1.0.0">
<service-point id="baseAction" interface="泛普OA系统.interfaces.workflow.action.Action">
 <invoke-factory>
       <construct class="泛普OA系统.interfaces.workflow.action. BaseAction ">
    <set-service property="ds" service-id="datasource.dt1"/>
<set property="userid" value="100" />
        </construct>
  </invoke-factory>
</service-point>   
 
说明: 以上定义了一个id 为 baseAction的action,其中黑体部分是在配置每个动作时需要改变的内容;
注意:每次配置后需要重启OA服务方可生效;
2. 属性说明
Id: 为该动作的id,不能重复,在后文件将会使用该标识
Class: 具体实现的动作类
service-id:为该动作要使用的数据源,如果该动作需要好异构系统交互数据,在此可以设置前文配置好的数据源。
如果添加一个新的动作,只需修改以上的参数就可以
如果一个动作中,用到多个数据源,也可以类似的添加进去,如:
<set-service property="ds1" service-id="datasource.xxx"/>
只要 property 的值不相同就可以。
配置其它属性值,可以安装下面的方式配置,可以配置多个,但property的值不能重复
<set property="userid" value="100" />
3. 在5.0及以上版本可以直接在进行可视化的配置
通过顶部菜单【设置中心】【外部接口设置】【配置接口动作】即可进入配置界面
 
 
点击右键【新建】即可创建一个新的【接口动作】
 
 
注意:
1) 该配置,不需要重启OA服务即可生效
2) 可视化配置目前不支持数据源和属性值配置,后期会完善。
 
4. 可视化配置属性说明
接口动作标识,即xml配置中的Id: 为该动作的id,不能重复,在后文件将会使用该标识
接口动作类文件,即xml配置中的Class: 具体实现的动作类
5. Action接口代码编写
编写接口(action)实现代码,在上面的配置中,具体要实现的动作将体现在泛普OA系统.interfaces.workflow.action.BaseAction类中。该类必须实现泛普OA系统.interfaces.workflow.action.Action接口,该接口中包含execute(RequestInfo request),这个方法会在流程节点到达前或节点到达后被泛普OA系统调用。
示例代码:
package 泛普OA系统.interfaces.workflow.action;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import 泛普OA系统.general.Util;
import 泛普OA系统.soa.workflow.request.Cell;
import 泛普OA系统.soa.workflow.request.DetailTable;
import 泛普OA系统.soa.workflow.request.Property;
import 泛普OA系统.soa.workflow.request.RequestInfo;
import 泛普OA系统.soa.workflow.request.Row;
public class BaseAction implements Action {
public String execute(RequestInfo request) {
//取主表数据
Property[] properties = request.getMainTableInfo().getProperty();// 获取表单主字段信息
for (int i = 0; i < properties.length; i++) {
 
String name = properties[i].getName();// 主字段名称
String value = Util.null2String(properties[i].getValue());// 主字段对应的值
System.out.println(name + " " + value);
}
//取明细数据
DetailTable[] detailtable = request.getDetailTableInfo()
.getDetailTable();// 获取所有明细表
if (detailtable.length > 0) {
for (int i = 0; i < detailtable.length; i++) {
DetailTable dt = detailtable[i];// 指定明细表
Row[] s = dt.getRow();// 当前明细表的所有数据,按行存储
for (int j = 0; j < s.length; j++) {
Row r = s[j];// 指定行
Cell c[] = r.getCell();// 每行数据再按列存储
for (int k = 0; k < c.length; k++) {
Cell c1 = c[k];// 指定列
String name = c1.getName();// 明细字段名称
String value = c1.getValue();// 明细字段的值
System.out.println(name + " " + value);
}
}
}
}
 
return Action.SUCCESS;
}
}
 
 
以上class中可以在execute(RequestInfo request)方法中定义任何想要执行的操作,上面的示例描述了在execute(RequestInfo request)方法中获取当前流程的所有信息。
 
6. 流程节点附加操作接口调用
在泛普OA系统流程管理中配置一下节点附加操作可以看到下图所示,可以在任意一个节点上设置,当流程流到改节点,自动触发预先定义好的动作 
 
 
以上网页对话框中红色部分接口动作将显示所有定义过的接口动作供选择调用。
7. 泛普OA办公系统控制action不往下流转
该功能只对节点后action有效,可以在action里面使用下面的方法来控制
 
发布:2006-04-22 14:40    编辑:泛普软件 · admin    [打印此页]    [关闭]

泛普免费OA系统其他应用

免费ERP系统 OA办公系统免费版 免费OA系统 免费ERP 免费财务软件 财务软件免费版 合同管理软件免费版 管家婆进销存免费版 小管家进销存免费版 生财宝进销存免费版 免费网店管理软件 服装管理系统免费版 免费广告公司管理系统 房地产销售软件下载 免费开源系统 免费办公管理系统 免费审批系统 免费办公用品管理软件 免费上网行为管理系统 免费公文管理系统 免费流程管理软件 免费商务管理软件 免费称重管理软件 免费订单管理系统 免费公司管理软件 免费信息管理系统 业务流程管理软件免费 免费时间管理软件 免费目标管理软件 免费协同管理软件 免费企业OA办公系统