Ecology8数据展现及流程触发集成操作手册V10.docx

上传人:b****7 文档编号:11411212 上传时间:2023-02-28 格式:DOCX 页数:25 大小:1.32MB
下载 相关 举报
Ecology8数据展现及流程触发集成操作手册V10.docx_第1页
第1页 / 共25页
Ecology8数据展现及流程触发集成操作手册V10.docx_第2页
第2页 / 共25页
Ecology8数据展现及流程触发集成操作手册V10.docx_第3页
第3页 / 共25页
Ecology8数据展现及流程触发集成操作手册V10.docx_第4页
第4页 / 共25页
Ecology8数据展现及流程触发集成操作手册V10.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

Ecology8数据展现及流程触发集成操作手册V10.docx

《Ecology8数据展现及流程触发集成操作手册V10.docx》由会员分享,可在线阅读,更多相关《Ecology8数据展现及流程触发集成操作手册V10.docx(25页珍藏版)》请在冰豆网上搜索。

Ecology8数据展现及流程触发集成操作手册V10.docx

Ecology8数据展现及流程触发集成操作手册V10

流程展现及流程触发集成操作手册V1.0

1.WebService注册

一、概述

目前很多软件为了便于和其它软件进行集成,都开发了WebService接口,通过这些接口可以和第三方软件进行数据的交互功能,这里的WebService注册就是在E-cology中集中登记其它软件的WebService接口及相关的参数,这样我们在后台管理的时候可以直接调用这些接口。

二、注册设置

1、点击【WebService注册】菜单后显示如图1所示

图1

∙点击【新建】按钮可以注册WebService信息;

∙选中已注册的WebService后点击【删除】按钮后可以删除选中的信息;

∙列表菜单只有【编辑】和【删除】按钮,点击后可以编辑删除注册信息。

2、在图1中点击【新建】按钮后显示如图2所示,开始注册WebService信息

图2

∙自定义名称中填写WebService服务的名称,在后期调用的时候会看到这个名称,所以命名最后能够代表此WebService服务是干嘛用的;

∙WebService地址:

非常重要的内容,此地址是由第三方软件供应商提供的,如果没有提供就不能使用这个功能,配置完成后可以点击【解析WSDL】以确保接口地址正确,点击【检查更新】按钮可以可以确保接口内容有没有变化;

∙点击图2中的

添加按钮,会在下方增加一行,配置WebService接口中提供的方法和参数字段等信息,这些信息都是由第三方软件供应商所需要提供的,如图3所示

图3

∙配置完成后需要点击【保存】按钮进行保存;

∙选中已有的方法,点击

按钮可以删除选中的方法;

∙方法列表字段功能显示如下表,先来看一下图3中红框所示的方法所对应的WebService接口文件,如图4所示,我们通过浏览器直接访问WebService地址后看到的内容

图4

字段

说明

方法名称

其它模块配置过程中可以调用的方法,此方法必需是写在WebService接口内容中的,如图4中的【getAllModeDataList】,所以这些方法都是由提供WebService接口的软件供应商提供

描述

针对此方法的文字描述,主要是便于其它管理员了解此接口的作用

返回值类型

接口返回数值的类型,在后期调用接口方法的时候,E-cology字段的类型一致

参数名称

写在方法之后的参数名称,这些名称也在WebService接口文件中可以看到,如图4中的in0~in7

参数类型

对应参数的类型,在WebService接口文件中可以看到,如图4中type后面跟的就是参数字段的类型

是否数组

只有数组型的参数才需要选中

2.数据展现集成

一、概述

数据展现集成就是通过浏览按钮的方式展示外部数据源的数据,常被用作自定义浏览框的设置和自定义查询菜单的设置。

二、数据展现集成设置

1、点击【数据展现集成】菜单后显示如图1所示

图1

∙点击【新建】按钮可以创建新的自定义浏览框;

∙选中已有的自定义浏览按钮后点击【删除】可以批量删除选中的自定义浏览框;

∙列表菜单只有【编辑】和【删除】两个按钮,点击后可以编辑和删除当前的自定义浏览框。

2、在图1中点击【新建】按钮后显示如图2所示

图2

∙标识:

自定义数据查询页面的名称,必需是唯一的;

∙名称:

此自定义查询数据的名称,一般用中文表示,告知需要用到此查询功能的用户这个是查询什么内容的;

∙展现形式:

展现形式分为了【浏览框】和【查询页面】两种,浏览框的话可以在流程表单中设置了自定义浏览框类型的字段时调用,查询页面可以在自定义菜单等页面进行调用;

∙展现方式:

选择浏览框中内容的展现方式,只有展现形式是【浏览框】时才需要设置,可以采用列表式、树形方式,如果采用自定义页面的话,显示如图3所示,只要直接设置自定义页面地址就可以了,其它信息不用设置了。

图3

∙数据来源:

数据来源可以分为数据库、WebService接口、自定义接口三种,每种接口配置不完全一样

▪数据源查询

∙数据源:

查询数据的来源数据库,数据源需要在【数据源设置】中先设好;

∙查询SQL语句:

编写查询语句,控制浏览按钮的查询显示结果;

▪WebService查询

∙WebService地址:

在WebService注册中记录接口名称,通过下拉选择框选择;

∙WebService方法:

属于这个接口的具体方法;

▪自定义地址查询

∙已经在第三方的页面中编写了查询方法,这里直接调用那个查询方法的文件;

∙主键:

查询的主标示字段名称;

∙外部页面地址:

∙列表式查询页面中必需设置页面中的查询条件和显示字段列,点击下方的

进行添加;

∙如果是树形展示字段的话,需要制定父字段和子字段在外部数据源中的名称,如图4所示。

图4

 

三、实例介绍

1.数据展现集成-展现类型-浏览框(即E7及以下版本的自定义浏览按钮)

以表ID_0为例子:

E7及以下版本的自定义浏览按钮设置及浏览按钮查询结果展示:

E8版本的自定义浏览按钮设置:

数据库中存的值为主键字段

标题栏的作用:

●浏览框中的作用即是选择后显示的字段

●查询页面中的作用即是提供超链接的字段

浏览按钮查询结果展示:

 

新增功能:

●字段联动:

以表t_hrmresource、t_hrmdepartment为例:

联动条件字段在流程中的字段名称为op_test_ld_bm(对应表t_hrmdepartment的内容)

需要联动带出的人员字段:

设置方法A:

直接在查询sql中添加条件,联动字段为$op_test_ld_bm$

联动字段如果都是在明细表中,联动字段的写法为:

$formtable_main_748_dt1_bm_dl$

其中,formtable_main_748_dt1是明细表表名,bm_dl为明细表中的字段名

设置方法B:

直接在查询字段设置中的流程联动字段名称中填写联动字段名称

结果展示:

 

●转换方法:

以表ID_0为例

 

未使用转换方法前,浏览按钮显示的结果:

 

使用转换方法:

selectemailfromid_0WHEREloginid='{?

currentvalue}';

浏览按钮显示的结果:

特殊的SQL处理:

当多表联动时,可能会出现这些表中的主键一样的问题,这种情况下,SQL语句做一层包装,即可解决:

例如:

selectd.id,d.departmentid,

    d.lastname||'20150819'aslastname,

(casewhensex=1then'女'

   whensex=0then'男'

   end)asSex,

(casewhenstatus=0then'试用'

   whenstatus=1then'正式'

   whenstatus=2then'临时'

   whenstatus=3then'试用延期'

   whenstatus=4then'解聘'

   whenstatus=5then'离职'

   whenstatus=6then'退休'

   whenstatus=7then'无效'end)asstatus,

    f.jobtitlename,

    e.departmentname,

    g.subcompanyname

  from(selectid,a.lastname,a.sex,a.status,a.departmentid,a.subcompanyid1,a.jobtitlefromHrmresourceawherea.departmentidin(selectb.idfromHrmdepartmentbwhereb.subcompanyid1in(select c.id fromHrmsubcompanyc wheresubstr(id,1,2)=$wenben$)))d 

    leftjoinHrmjobtitlesfond.jobtitle= f.id

    leftjoinHrmdepartmenteond.departmentid= e.id 

    leftjoinHrmsubcompanygond.subcompanyid1= g.id

    where d.lastnamelike'%y%'

   orderbyd.departmentid

由于各表中都有id这个主键,所以导致此SQL无法正常使用

修改为以下内容即可:

select*from (selectd.id,d.departmentid,

    d.lastname||'20150819'aslastname,

(casewhensex=1then'女'

   whensex=0then'男'

   end)asSex,

(casewhenstatus=0then'试用'

   whenstatus=1then'正式'

   whenstatus=2then'临时'

   whenstatus=3then'试用延期'

   whenstatus=4then'解聘'

   whenstatus=5then'离职'

   whenstatus=6then'退休'

   whenstatus=7then'无效'end)asstatus,

    f.jobtitlename,

    e.departmentname,

    g.subcompanyname

  from(selectid,a.lastname,a.sex,a.status,a.departmentid,a.subcompanyid1,a.jobtitlefromHrmresourceawherea.departmentidin(selectb.idfromHrmdepartmentbwhereb.subcompanyid1in(selectc.idfromHrmsubcompanyc wheresubstr(id,1,2)=$wenben$)))d 

    leftjoinHrmjobtitlesfond.jobtitle=f.id

    leftjoinHrmdepartmenteond.departmentid=e.id 

    leftjoinHrmsubcompanygond.subcompanyid1=g.id

    where d.lastnamelike'%y%'

) aorderbydepartmentid

2. 数据展现集成-展现类型-查询页面(新功能)

该功能主要是和异构系统待办元素集成功能一起使用的,设置方式和自定义浏览按钮基本没有区别(字段联动无效),异构系统待办元素集成功能介绍参考附件中的【120389】新增功能:

异构系统待办元素集成功能。

回显异常

回显异常是指 配置完成并在流程上正常浏览并选择数据后,流程提交或保存页面再次打开,之前选择的数据消失或者显示错误。

可以依次尝试如下解决方案:

当前在后台配置的sql,你的SQL:

selectid,a,bfromd whereb='xxx'

1,select*from ( 你的SQL )t     ----使用包裹层

2,select*from ( selectid,a,bfromd  WHERE b='xxx' )t  ----将你的SQL中的所有where大写

3,select*from ( select regexp_replace(id,'[^0-9a-zA-Z]','')asid ,a,bfromd WHERE b='xxx' )t  ----删除字符串类型的主键中的特殊字符

比如id值为:

=asxn102$  其中有等号/空格/$符 3种类型的特殊字符,则:

oracle:

 regexp_replace(id,'[^0-9a-zA-Z]','')

sqlserver:

Replace(Replace(Replace(id,'',''),'=',''),'$','')

主键要求:

主键不要有字母数字以外的其它字符。

4,逻辑悖论类型:

数据来源d是一个视图,视图内涵逻辑条件:

已经被选择过的数据,不再出现在候选列表中。

此中情况下造成的不能回显,无法解决;请实施人员自行调整业务逻辑。

此种逻辑,必定造成不能回显!

原因:

浏览按钮保存在OA数据库中是仅仅是数据id,要回显时,还是用配置的sql,加上id条件,去d视图中查询数据,但d视图本身内涵已经选择的数据不会出现在视图中,导致根据id再去d视图查,就查不到数据,导致不能正常回显。

5,字符串类型的主键,选择的是数据A,后台id是001;回显成了数据B,B的id是100101之类。

提交技术支持流程,总部提供更新文件,升级解决。

6,表达式:

$abc$用于在表单字段上取得当前表单值,{?

abc}用于取得某些默认的固定值。

这两种类型的表达式,所有字符必须全部是小写字符

7,selectid,a,bfromd whereb='$xxx$' andusercode='{?

workcode}' ----表达式两边用单引号引用起来,以免未获得值时后台出现SQL执行报错

8,select*from(selectid,a,bfromd whereb=[空格] '$xxx$' [空格] )t----表达式两边留出空格

9,主键不唯一:

使用此查询关联页面其它字段时id唯一,如:

selectid,a,bfromd wheretype='$type$' 

如果直接使用,则id不唯一,如:

selectid,a,bfromd

方案1:

-----针对只做保存回显,不在需要根据此字段值还联动其它字段值的情况

oracle:

select*from( select type||'_'||idasid ,a,bfromd wheretype='$type$'  )t -----使用type加id的形式组合成字符串类型联合主键

方案2:

-----其它字段要根据选择的主键还要联动出值,故而主键不能变。

要求数据,同样id的数据除过type区分外,要显示的a字段值都一样。

oracle:

select*from(select id,a,max(b)asb fromd where type='$type$' groupbyid,a )t---使用分组函数

10,使用了固定取值表达式:

{?

userid}{?

loginid}{?

username}{?

workcode}{?

password}{?

departmentid}{?

departmentcode}{?

departmentname}{?

subcompanyid}{?

subcompanycode}{?

subcompanyname}

这些表达式在创建节点第一次选择值时,会带出当前登录者相关的对应信息,但后续表单值已经保存后回显时,于此相关的条件都会替换成1=1,编写SQL时,一定要考虑回显会忽略人的问题,考虑到人这个条件被替换成1=1时,sql附加上选中的id作为条件,是否还能正常查询,并返回唯一的一条数据。

编写SQL:

selectid,a,bfromd where b='{?

departmentcode}'

自动计算出的回显SQL:

 selectid,a,bfromd where 1=1 andid=表单上保存的id

11,刚建立流程并提交的几天数据正常回显,过一段时间后选择的数据回显不了:

检查SQL或视图中是否有取数据库时间类型的函数如:

sysdate,getdate() 等。

select id,a,bfromd  whereb=to_char(sysdate,'MM')

此SQL意为只提供本月的数据以供选择。

但选择后,会导致只有在每年的本月(如12月),数据在流程上正常回显,其它月份流程上此选择的数据都回显不了。

因为选择的数据id是属于12月里的,如果到了非12月的时候,能查出的数据里面,本就没有了此条数据,那么相当于(1月时):

select id,a,bfromd  whereb='01'andid=表单上保存的12月的id

此条回显SQL不能查询到数据,故而不能正常回显。

属于上面的第四点,逻辑悖论。

解决方案:

在流程表单上增加一个日期(或月份)类型字段,默认当前时间,查询sql中使用此字段表达式。

select id,a,bfromd  whereb='$createMonth$'

12,使用了数据库函数:

getdate() 等。

流程点开放大镜后页面没数据。

提交技术支持流程,总部提供更新文件(针对性不整理到标准产品的修改),升级解决。

13,WebService示例

注:

首先在WebService中注册该Service,选择相应方法,根据WebService返回的XML格式文件进行配置(数据库直接配置字段,XML则配置XML路径),例如WebService返回

xmlversion=\"1.0\"encoding=\"GBK\"?

>1ipaddresstest2xmlDatatest,则配置为:

list/user/name或者list/user/value等等

3.流程流转集成

一、概述

流程流转集成是用来集中管理在流程中可被调用的三种接口程序,在这里集中进行管理,并可以查看这些接口程序被哪些流程所调用。

二、流程接口注册

1、点击流程流转接口后显示如图1所示

图1

∙分别点击【注册DML接口】、【注册WebService接口】、【注册自定义接口】后可以创建相应的接口配置;

∙在已有的列表菜单中点击【编辑】按钮可以修改现有的接口信息;

∙点击【删除】按钮可以删除现有的接口。

2.1注册WebService

1.填写名称及选择相应表单

2.选择相关方法

3.填写命名空间(注,必须填写,否则将会出错)

4.填写参数(注:

参数传如果是表单字段,则直接填写字段名称(不是字段编号))

5.设计返回值

6.参数设置(传入参数名称必须与Webservice提供方法的参数名称一至,则参将xml内容传到WebService,则否该参数为无效参数

三、流程接口部署

1、在流程接口部署页面,我们可以查看设置的每一个接口被哪些流程所应用,如图2所示,

图2

∙点击【新建】按钮,可以将已注册的接口与流程关联;

∙点击列表菜单【编辑】按钮,可以修改现有的部署,删除已有的关联或添加新的关联。

2、在图1中点击【新建】按钮后显示如图3所示,我们可以选择在哪个流程中添加接口。

注:

数据展现集成与流程流转集成功能还有功能性问题,后续补丁包将可能解决可能出现的问题,如有问题,请直接联系

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1