e-cology二次开发培训文档
Ecology二次开发-数据源配置

property="dbname"value=""
数据库名称
property="user"value=""
数据访问用户名
property="password"value=""
数据访问密码
<set property="minconn" value="5" />
<set property="maxconn" value="10" />
</construct>
</invoke-factory>
</service-point>
</module>
配置文件说明
对以上配置中标黄的选项进行一下简要的说明
<module id="datasource" version="1.0.0">
<service-point id="ecology" interface="weaver.interfaces.datasource.DataSource">
<invoke-factory>
<construct class="weaver.interfaces.datasource.BaseDataSource">
<set property="port" value="1433" />
<set property="dbname" value="ecology1231" />
泛微OAecology二次开发实例开发完整说明之欧阳理创编

二、系俛樞需秸枸1、殳要的程為穡构EcologyClassbean爲敎偏律后的CLASS支件js系娩屮使用的JAVASCRIPT孔VBSCRIPT脚冷Css系俛屮JSP演血使用的祥式ImagesImages_faceImages_frame系俛屮使用的囹片的矗敘目录CrmWorkflow 钱功饨今夂件矣為敎毎个功饨的夂伴WEB-INFProp系俛甬乙置夂伴爲敘Service系疣的接口甬乙置夂伴的爲敘三、锐明一个JSP茨面,一个JAVA程潯的痕冷组啟,矗何闿篌JSP页S)1、一个jsp演i?通纟需要包會什么內客2、血何閲篌一个JSPlii;由于ECOLOGY系铳丈持多语音,因此在JSP賓曲止一巖耒出观屮夂,全部使用标鉴的形式来显亦屮夂:比血:在IE上显斥“就名”那么虚JSPIi扮屮将通过<%=SystemEnv.getHtmlLabelName(413,user.getLanguagc())%>这祥的形式来素亦,其屮的毅常413 就是素示就名,同时可“I通过"select labelname from htmllabelinfowhere indexid=413 and languageid=7 ”耒获瑕到"壮名"这个显亦名稀,其屮languageid=7素示彳夂显亦名烈,languageid=8乗亦英夂显斥名秫.delete from HtmlLabellndex where id=81249 deletefrom HtmlLabellnfo where indexid=81249 INSERTINTO HtmlLabellndex values© 1249,‘這荐范(8 ')INSERT INTO HtmlLabellnfo VALUES(81249;迄挥范国\7)INSERT INTO HtmlLabellnfoVALUES(81249;Range of choice*,8) INSERT INTO HtmlLabellnfo VALUES(81249;選擇範圍;9)3、JAVA «4的痕冷组啟A ECOLOGY屮卄农JAVA 程為建衩继承weaver.general.BaseBean, A BaseBean 屮空宴农除了鬲个方法:傅日志夂伴,获取紀置夂件屮的彖毅值。
二次开发初级培训班培训讲义

二次开发初级培训班培训讲义第一讲基于windows编程的基础知识1.导言1.1过程化(proceduralprogramming):程序被认为是在一个数据集合上进行的一系列操作。
1.2结构化编程:主要思想是:功能分解和逐步细化。
1.3面向对象编程实质是把数据和处理这些数据的过程合并为一个单独的“对象”dd一个具有确定特性的自完备的实体。
1.4对象编程的特点1)自完备(self_contained):能够完全实现一些严格定义的功能。
2)封装3)继承4)多态2.类和数据封装2.1什么是类?简而言之,类是一种用户定义的数据类型,与结构类似;此外,类有自己的成员变量和成员函数(方法),它们可以对类本身进行操作。
例如,汽车可以被视为发动机、车轮、座椅等的集合。
它也可以从功能的角度来研究,例如,它可以移动、加速、减速、制动等。
定义(例子)vc++中讲解2.2封装定义:指能够把一个实体的信息、功能、响应都装入一个单独的对象中的特性。
包装的优点:◆封装允许类的客户不必关心类的工作机理就可以使用它。
就象驾驶员不必了解发动机的工作原理就可以驾驶汽车一样,类的客户在使用一个类时也不必了解它是如何工作的,而只需了解它的功能即可。
◆ 所有的数据访问和操作都必须通过特定的方法,否则无法使用,从而达到数据隐藏的目的。
2.3对象对象是类的实例。
类和对象之间的关系就像类型和变量之间的关系。
类上的所有操作都必须通过对象实现。
当一个类定义多个对象时,每个对象都有自己的成员数据。
2.4班级的三种成员类型◆私有成员(private):缺省情况下,一个类中的所有成员都是私有的。
私有成员只能被类本身的成员函数访问。
并且不具有继承性。
◆ 公共成员:公共成员可以由类成员函数和外部函数使用。
◆保护成员(protected):在介绍继承时再介绍。
2.5构造函数和析构函数1)构造函数◆ 是一个特殊的成员函数;创建对象时,系统首先自动调用该对象。
它的功能是为新创建的对象分配空间,或为对象的数据成员分配值。
Ecology二次开发-系统权限

Y
权限明细名称
RIGHTDETAIL
VARCHAR2(100)
Y
代码,此代码会具体应用到程序当中
RIGHTID
INTEGER
Y
外键,SystemRights.id
Columns ofSystemRightGroups/权限组
Name
Type
Nullable
Default
Comments
response.sendRedirect("/notice/noright.jsp");
return;
}
%>
7-中文简体
8-英文
9-中文繁体
RIGHTNAME
VARCHAR2(100)
Y
权限名称
RIGHTDESC
VARCHAR2(100)
Y
权限描述
Columns ofSystemRightDetail/权限明细
Name
Type
Nullable
Default
Comments
ID
INTEGER
RIGHTDETAILNAME
/
insertintoSystemRightDetail (id,rightdetailname,rightdetail,rightid)values(4462,'文档置顶权限','Document:Top',935)
从上面的代码可以看出,Ecology自身在添加权限的时候,是在数据里手工进行添加的,在添加权限前,会先执行三条delete语句,所以,当进行二次开发添加权限的时候,SystemRights.id和SystemRightsLanguage.id这两字段最好使用负数或者使用足够大的值,Ecology官方建议,如果使用正数,此数值最好在100000以上。
泛微ecology系统接口培训文档

版 本
文档简要信息:
文档主题(Title) 作者(Author) 审批者(To Be Approved By) 说明(Comments) 文件名称(File Name) 泛微协同办公应用平台 e-cology 接口培训文档.doc 泛微协同办公应用平台 e-cology 接口培训文档 陈文建
文档版本历史:
仅限阅读Biblioteka 请勿传播当您阅读本方案时,即表示您 同意不传播本方案的所有内容
泛微协同办公应用平台 e-cology 接口培训文档
Integration Manuals of Weaver e-cology™
Submitted By Weaver
泛微软件有限公司 中国上海浦东软件园陆家嘴分园 峨山路 91 弄 101 号 3 层 邮政编码:200127 电话:+86 21 50942228 传真:+86 21 50942278
序号 1. 2. 3. 4. 5. 日期 2011-9-30 版本 V1.0 变更说明 修改人 陈文建 注释
目录
版 本 .............................................................................................................................................. 2 第一部分 数据源配置............................................................................................................... 5 一. 接口说明...........................................
泛微OAecology二次开发实例开发完整说明书

二次开发培训文档一、ECOLOGY系统框架结构1、主要的程序结构EcologyClassbean 存放编译后的CLASS文件js 系统中使用的JAVASCRIPT和VBSCRIPT脚本Css 系统中JSP页面使用的样式ImagesImages_faceImages_frame 系统中使用的图片的存放目录CrmWorkflow 该功能分文件夹存放每个功能的文件WEB-INFProp 系统配置文件存放Service 系统的接口配置文件的存放二、说明一个JSP页面,一个JAVA程序的基本组成,如何阅读JSP页面1、一个jsp页面通常需要包含什么内容2、如何阅读一个JSP页面由于ECOLOGY系统支持多语言,因此在JSP页面上一般不出现中文,全部使用标签的形式来显示中文:比如:在IE上显示“姓名”那么在JSP页面中将通过<%=SystemEnv.getHtmlLabelName(413,user.getLanguage())%>这样的形式来表示,其中的数字413就是表示姓名,同时可以通过“select labelname fromhtmllabelinfo where indexid=413 and languageid=7”来获取到“姓名”这个显示名称,其中languageid=7表示中文显示名称,languageid=8表示英文显示名称.delete from HtmlLabelIndex where id=81249delete from HtmlLabelInfo where indexid=81249INSERT INTO HtmlLabelIndex values(81249,'选择范围')INSERT INTO HtmlLabelInfo VALUES(81249,'选择范围',7)INSERT INTO HtmlLabelInfo VALUES(81249,'Range of choice',8)INSERT INTO HtmlLabelInfo VALUES(81249,'選擇範圍',9)3、JAVA程序的基本组成在ECOLOGY中开发JAVA程序建议继承weaver.general. BaseBean,在BaseBean中主要封装了两个方法:写日志文件,获取配置文件中的参数值。
EC培训文档

点击鼠标右键, 点击鼠标右键,显示处理流程的功 能按钮,根据需要点击不同的按钮 能按钮, 处理流程。 处理流程。
须要选择或输入的
保存:当您在签字意见中输入了 意见,但又不想马上处理该流程 时,点击这个按钮; 返回:当您不想马上处理该流程 时,可以点击这个按钮,将该流 程留到以后处理。“后退”按钮 功能相同。
填写流程表单
紧急程度默认状态为“正常 紧急程度默认状态为“ ” 短信提醒默认不提醒, 短信提醒默认不提醒,可选 择离线短信提醒和在线短信 提醒
跟踪您的流程
1、点击个人工作区中“我的流程”标签,将展开流程相关的功能按钮。 2、点击“我的请求”按钮,就可进入您创建的工作流程的分类页面。 我的请求:点击这个按钮列出本人所创建的流程,系统将您创建的流程按照“未完成”和 “已完成”进行分类。 已办事宜:我处理的流程 待办事宜:需要我处理的流程 3、在不同类型下,再按照流程的类型进行显示。后面的数字代表这个类型的流程数量。
,每选择一个共享条件(即每 个“共享类型”及“权限项” 组合)都须点击鼠标右键,选 择“添加”按钮,以保存所设 置的共享条件。 全部共享条件设置完成后,点 击右键鼠标,选择“提交”按 钮,保存文档。 至此文档创建完成。
设置文档共享
在完成”添加共享 或 在完成 添加共享”或“删除 添加共享 共享”设置后, 共享”设置后,返回这个页 面,点击“确定”,以完成 点击“确定” 所有操作, 所有操作,使设置生效
登录e-cology系统 系统 登录
输入账号和密码
打开一个IE浏览器,输入系统登录地址http://10.31.2.35将出现登录页面,在这里输入您的 账号和密码,点击“登录”按钮就可以登录系统,第一次使用要在本地机器上安装插件。 外网登录网址:218.3.160.242 用户名:wanghua(中文汉字的全拼,如果系统中有重名,请联系管理员查询) 初始密码:123456
eCognition 二次开发高级培训

环境要求 环境要求 要想进行eCognition软件的二次开发,那 么需要具备哪些环境呢?
1. Developer的SDK以及相关动态链接库 2. eCognition Server的服务 3. VS2003 7.1的开发环境
API接口的介绍 Engine API接口 Engine API可以通过插件来扩大Analysis Engine的容量。一个Engine插件是由一 个或者多个插件组件组成的。一个插件 组件可以实现一个算法或者功能。
EPIComponentInfo* MergeObjects::GetInfoStatic() return &info;
static struct Param1: public EPIParamInfo { const char* GetId() { return "bFsnUp"; } const char* GetName() { return "Fusion super objects"; } const char* GetDescription() { return "Fusion super objects"; } DValue::EDataType GetValueType() { return DValue::T_BOOL; } EPICfgControl* GetControlConfig() { return &glblCfgCheckBoAPI接口 DataIO API可以用来开发驱动和插件, 应用于数据连接和交互。通过建立一个 连接器连接文件系统、二进制图像格式、 数据库等。
API接口的介绍 Automation API接口
应用程序
嵌入
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二次开发培训文档一、ECOLOGY系统框架结构1、主要的程序结构EcologyClassbean 存放编译后的CLASS文件js 系统中使用的JA V ASCRIPT和VBSCRIPT脚本Css 系统中JSP页面使用的样式ImagesImages_faceImages_frame 系统中使用的图片的存放目录Crm..Workflow 该功能分文件夹存放每个功能的文件WEB-INFProp 系统配置文件存放Service 系统的接口配置文件的存放二、说明一个JSP页面,一个JA V A程序的基本组成,如何阅读JSP页面1、一个jsp页面通常需要包含什么内容2、如何阅读一个JSP页面由于ECOLOGY系统支持多语言,因此在JSP页面上一般不出现中文,全部使用标签的形式来显示中文:比如:在IE上显示“姓名”那么在JSP页面中将通过<%=SystemEnv.getHtmlLabelName(413,user.getLanguage())%>这样的形式来表示,其中的数字413就是表示姓名,同时可以通过“select labelname from htmllabelinfo where indexid=413 and languageid=7”来获取到“姓名”这个显示名称,其中languageid=7表示中文显示名称,languageid=8表示英文显示名称.3、JA V A程序的基本组成在ECOLOGY中开发JA V A程序建议继承weaver.general. BaseBean,在BaseBean 中主要封装了两个方法:写日志文件,获取配置文件中的参数值。
三、几个常用的底层类的说明最基本的底层类,数据库操作类,上传下载文件,如何构建缓存,基本的工具类Ecology系统底层包开发指南.doc四、页面权限控制的说明,怎样在页面中引用权限,怎么样新增一个权限,如何在新开发的模块上引入权限控制在这一部分将描述:新增的页面如何保持和ECOLOGY的风格保持一致;新增的页面上引用ECOLOGY中的权限;新增的页面上引用新的ECOLOGY中还没有的权限;1、可以根据<泛微协同商务系统(Ecology)_JSP式样编写指南>保证新开发的页面在风格上和原有系统保持一致泛微协同商务系统(Ecology)_JSP式样编写2、使用ECOLOGY分页控件实现数据的分页显示泛微分页控件使用帮助及规范.doc3、引用系统中的权限首先从系统的权限设置中找到需要引用的权限名称,如下如找到“地址类型维护”这个权限,其ID为41,然后通过“select rightdetailfrom systemrightdetail where rightid=41”得到其rightdetail=“AddAddressType:Add”,那么在JSP页面中通过如下语句,就可以使得只有的“地址类型维护”这个权限用的用户可以查看该页面<% if(!HrmUserVarify.checkUserRight("AddAddressType:Add ", user) ) {response.sendRedirect("/notice/noright.jsp");return;}%>4、新增新的权限控制新功能的查看新增功能模块添加权限控制.d o c五、系统的人员组织结构的介绍1、主要数据结构HrmResource(人员基本信息表).doc HrmSubCompany(分部信息表).docHrmDepartment(部门信息表).doc2、如何从缓存中获取人员信息(对三个缓存的简单介绍)六、对流程,文档数据的存放说明(主数据,明细数据,一般信息等在数据库中如何存放,主要为了考虑报表的问题)1、文档的主要数据结构文档信息的主要存储表DOCDETAIL:文档信息存储表,主要存放文档的基本信息DOCDETAILCONTENT: 文档内容存放表(如果是ORACLE数据库,如果文档的类型是HTML文档,那么文档内容存放在该表中,SQLSERVER数据库不用该表)DOCIMAGEFILE:文档,附件关联表,此表记录文档和附件(WORD,EXCEL格式文档在数据库中按照附件格式存放)的关系(即一个文档关联了几个附件)IMAGEFILE:附件路径存放表,此表记录了文档的附件(或者WORD,EXCE)存放在文件服务器上的位置DOCSHARE:文档共享表SHARINNERDOC:文档共享明细表,此表存放了该表具体共享给那些用户了DocDetail.doc ImageFile.doc DocImageFile.doc shareinnerdoc.docDocShare.doc2、流程的主要数据结构这里主要介绍流程的数据存放结构及如果通过流程类型获取到流程的字段信息,流程的载体分为表单和单据两类,表单和单据的区别在于:所有使用表单的流程数据存放在同一个表中,而单据每个单据对应着一张独立的数据表1、表单一、对于表单而言流程的数据信息存放在三个数据表中Workflow_requestbase:该表存放了流程的基本信息:标题,创建人,创建时间,流程类型等等Workflow_form:该表存储了流程的具体信息通过REQUESTID字段和Workflow_requestbase表关联Workflow_formdetail:该表存放了流程的明细信息,同样通过REQUESTID字段和Workflow_requestbase表关联二、通过流程的类型如何获取该流程使用了Workflow_form和Workflow_formdetail表中哪些字段在Workflow_form和Workflow_formdetail表中存放了大量字段,所有使用表单的流程的字段都在这两个表中,如何获取每个流程使用了那些字段呢?A、找到流程的类型ID,假定为wfidB、找到流程用了哪个表单select formid from workflow_base whereid=wfid and isbill=’0’C、获得该表单用到了哪些主字段:select(select fieldlable from workflow_fieldlable where workflow_fieldlable.fieldid=workflow_formfield.fieldid and langurageid=7andworkflow_fieldlable.formid=workflow_formfield.formid)as name,(select fieldname from workflow_formdictwhere id=fieldid)from workflow_formfield whereformid=上面获取的FORMID and (isdetail is null orisdetail=’’)哪些明细字段:select(select fieldname fromworkflow_formdictdetail where id=fieldid)fromworkflow_formfield where formid=上面获取的FORMID andisdetail=’1’2、单据对于表单而言流程的数据信息存放在三个数据表中Workflow_requestbase:该表存放了流程的基本信息:标题,创建人,创建时间,流程类型等等Workflow_form:该表只存放Workflow_requestbase和单据表之间的关系信息各单据主表:该表存储了流程的具体信息通过REQUESTID字段和Workflow_requestbase表关联,如何获取该表呢:A、找到流程的类型ID,假定为wfidB、找到流程用了哪个单据select formid form workflow_basewhere id=wfid and isbill=’1’C、通过单据ID可以获取到该单据使用的字段Select * from workflow_billfield where billid= formidD、通过单据ID找到其用了那个表存储流程主信息,那个表存储流程明细信息select tablename from workflow_bill where id= formidselect tablename from workflow_billdetailtablewhere id= formid各单据主明细表:该表存放了流程的明细信息,同样通过REQUESTID字段和Workflow_requestbase表关联3、流程的其他信息表结构流程处理人情况表Workflow_currentoperator:此表存储了流程当前未操作者,已操作者等信息workflow_requestlog 流程处理意见表:此表存储了流程处理人处理过的审批意见workflow_requestviewlog 流程的查看日志workflow_requestbase.doc workflow_bill.doc workflow_base.doc workflow_currentoperator.docworkflow_requestLog.doc七、如何新建,定制一个客户化的单据新建单据的好处,在于可以比较容易到把新建单据表中的信息和其他信息进行一些必要的操作八、系统已经有可开发的接口的培训1、短信接口可以通过该接口实现其他短信网关或者硬件短信设备进行在OA中发送短信的操作通用短信接口实现方式及使用说明.doc2、单点登录接口ECOLOGY提供了通过用户映射和模拟其他系统登录窗体的方式实现多系统之间的单点登录接口Ecology系统接口指南---单点登录篇.doc3、数据源和计划任务接口在ECOLOGY系统中,可以定义多个其他系统的数据连接,通过该连接可以和其他系统的数据库直接连接,同时也可以设置“计划任务”,系统根据设置定时制定执行设定的计划。
Ecology系统接口指南——数据源和计划任示例:4、自定义浏览框接口在ECOLOGY系统中可以通过该接口,实现在流程填写数据时直接选择其他系统中的数据,或者选择本系统中未定义的数据自定义浏览框接口.doc示例:5、节点附加操作接口该接口主要用来在流程的流转过程中,触发一些附加的事件或动作,达到将流程的数据和其他模块或者其他系统进行交互的功能节点附加操作接口.doc示例:6、Ecology外部门户接口说明ECOLOGY系统中的新闻可以通过该接口发布到外部网站上Ecology外部门户接口说明.doc九、流程中通过SQL脚本实现字段联动功能的培训系统中已经提供了流程字段联动的功能,通过简单的执行一条SQL语句就可以实现各个流程的字段联动功能。