二次开发培训文档
- 格式:pdf
- 大小:481.46 KB
- 文档页数:9
二次开发培训1、二次开发介绍1.1、对象及属性设计好表结构后,通过MAXIMO中“数据库配置”应用程序创建表。
创建过程中需要注意以下属性:1.1.1、对象选项1.1.2、属性选项1.2、MBO介绍如果需要在新建的对象中加入特殊的业务逻辑,则需要自己编写MBO,并部署到相应的对象。
操作方法是在数据库配置应用程序中,找到指定的对象,并在“类”字段处输入值。
如下图所示:1.2.1、MBO介绍Mbo可理解为数据库中某一条记录,其方法都是对记录的操作,如:添加、删除、修改等。
1.2.1.1、MBO中常用的方法1.2.2、MboSet介绍MboSet可以理解为Mbo的集合,既多个Mbo。
其方法都是对整个Mbo集合的操作。
1.2.2.1、MboSet常用方法1.2.3、字段绑定逻辑介绍如果需要在指定的字段上加入特殊的业务逻辑,则需要自己classes,并部署到相应的字段上。
必须继承psdi.mbo.MboValueAdapter或psdi.mbo.MAXTableDomain(弹框)。
操作方法是在数据库配置应用程序中,找到指定的对象,并在“类”字段处输入值。
保存修改后,需要停止服务,执行configdb.bat使更改生效。
如下图所示:1.2.3.1、字段绑定类中常用的方法1.3、AppBean介绍AppBean用于实现MAXIMO6中应用程序的界面操作控制,如界面的新建、保存、发送工作流等。
在HARV-EAM系统中可参考“采购单”应用程序的AppBean,harv.webclient.beans.po.CtmPOAppBean。
1.3.1、AppBean常用方法介绍1.4、DataBean介绍DataBean用于实现MAXIMO6中特定数据源的界面操作控制,如弹出窗口中按钮的事件等。
在HARV-EAM系统中可参考“采购单”应用程序的DataBean,XXX对应按钮的事件2、开发工具配置2.1、启动eclipse启动eclipse,File—〉New—〉Project2.2、新建工程选择Java Project输入工程名称配置工程所需的JDK,如果生产环境是websphere,则eclipse中的JDK必须配置为WebSphere 的jdk。
二次开发培训文档一、ECOLOGY系统框架结构1、主要的程序结构EcologyClassbean 存放编译后的CLASS文件js 系统中使用的JA V ASCRIPT和VBSCRIPT脚本Css 系统中JSP页面使用的样式ImagesImages_faceImages_frame 系统中使用的图片的存放目录CrmWorkflow 该功能分文件夹存放每个功能的文件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表示英文显示名称.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、JA V A程序的基本组成在ECOLOGY中开发JA V A程序建议继承weaver.general. BaseBean,在BaseBean 中主要封装了两个方法:写日志文件,获取配置文件中的参数值。
二次开发初级培训班培训讲义第一讲基于WINDOWS编程的基础知识1.引言1.1 过程化(procedural programming):程序被认为是在一个数据集合上进行的一系列操作。
1.2 结构化(structured programming):主要思想是:功能分解并逐步求精。
1.3 面向对象的程序设计(object_oriented programming)实质是把数据和处理这些数据的过程合并为一个单独的“对象”――一个具有确定特性的自完备的实体。
1.4 对象的程序设计的特征1)自完备(self_contained):能够完全实现一些严格定义的功能。
2)封装3)继承4)多态2. 类与数据封装2.1 什么是类?简单的说,类就是一种用户定义的数据类型,跟结构类似;并且,类具有自己的成员变量和成员函数(方法),通过它们可以对类自身进行操作。
如:汽车可以看作是发动机、车轮、座椅等诸如此类的集合。
也可以从功能的角度来研究,譬如,能移动,加速,减速,刹车等。
定义(例子)VC++中讲解2.2 封装(encapsulation)定义:指能够把一个实体的信息、功能、响应都装入一个单独的对象中的特性。
封装的优点:◆封装允许类的客户不必关心类的工作机理就可以使用它。
就象驾驶员不必了解发动机的工作原理就可以驾驶汽车一样,类的客户在使用一个类时也不必了解它是如何工作的,而只需了解它的功能即可。
◆所有对数据的访问和操作都必须通过特定的方法,否则便无法使用,从而达到数据隐藏的目的。
2.3 对象对象就是类的一个实例。
类与对象的关系就如类型和变量的关系,所有对类的操作都必须通过对象来实现。
当一个类定义了多个对象时,每个对象拥有各自的成员数据。
2.4 类的三种成员类型◆私有成员(private):缺省情况下,一个类中的所有成员都是私有的。
私有成员只能被类本身的成员函数访问。
并且不具有继承性。
◆公有成员(public):公有成员可以被类成员函数和外部函数使用。
技术开发培训平台二次开发规范1. 引言技术开发培训平台是为了提供教育机构、企业等组织的培训需求而开发的系统。
为了满足不同用户的特定需求,可能需要进行二次开发。
本文档旨在规范技术开发培训平台的二次开发,保证开发过程的顺利进行及开发代码的可维护性。
2. 开发环境要求在进行技术开发培训平台二次开发时,需要使用以下开发环境:•编程语言:推荐使用Java或Python进行二次开发,同时也支持其他主流编程语言。
•开发工具:推荐使用集成开发环境(IDE)进行开发,如IntelliJ IDEA、Eclipse等。
•数据库:技术开发培训平台使用关系数据库存储数据,二次开发时需要根据需求选择适合的数据库,如MySQL、Oracle等。
3. 项目结构规范在进行技术开发培训平台二次开发时,应按照以下项目结构规范进行开发:- src/- main/- java/ # Java代码- resources/ # 资源文件- web/ # 前端代码和静态文件- test/ # 测试代码- doc/ # 文档- build.gradle # 项目构建脚本•src/main/java/:存放Java代码,包括后端API、数据模型、业务逻辑等。
•src/main/resources/:存放资源文件,如配置文件、模板文件等。
•src/main/web/:存放前端代码和静态文件,如HTML、CSS、JavaScript等。
•src/test/:存放测试代码,包括单元测试、集成测试等。
•doc/:存放文档,包括需求分析、设计文档等。
•build.gradle:项目构建脚本,用于管理项目依赖、编译、打包等。
4. 代码规范为了保证二次开发代码的可维护性,应遵循以下代码规范:•代码命名:采用驼峰命名法,类名使用大写开头,方法名和变量名使用小写开头。
命名应具有描述性,避免使用缩写和单词简写。
•代码缩进:使用4个空格进行缩进,不使用Tab键。
•每行最大长度:每行代码不超过80个字符。
凸台的创建第一部分:工作台的创建一、创建工程1、点击File-> New CAA V5 Workplace;弹出如下界面;然后选择工程创建的目录,以及tool level(当前CATIA以及CAA的版本)2、选择第二项,create new generic framework,然后finish;3、填写模块的名字,点击OK后,工程就建立好了。
二、加载CAA提供的模块点击CAA Workspace->Locat Prerequisite Workspaces,弹出下列对话框:点击Add,选择CATIA安装目录的B18目录,点OK后,若提示Command done without errors加载完成。
三、创建一个模块(用于工作台的过渡)接下来就要开始逐步创建workbench了,点击File->Add CAA V5 Project->New Module,弹出下面对话框,填写Module的名称。
OK确定后会建立一个CreatePadTest.m的模块,并且被设为StartUp project,用加粗的字体显示。
四、创建workbench(注意上一步建立的模块要设为startup project)点击File->CAA V5 Item->CATIA Resouse->CATIA Pattern,弹出下列对话框:选择workbench,填写workObject Name,以及选择Associated Workshop(注:若不执行第二步,即没有加载CAA资源,则在Available workshops中没有关于Associated Workshop的选择:)之前实验室MSFA等平台是基于装备体对零件进行操作,采用的是PRDWorkshop在一般会出三个坐标系,这在开发时会经常出现坐标系的转换,增加了开发难度,现在所有模块开始采用PrtWks,基于零件体本身进行操作,只有一个坐标,直接在零件体上创建新的属性,并赋值保存下来。
实用标准文案精彩文档二次开发培训文档一、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中主要封装了两个方法:写日志文件,获取配置文件中的参数值。
二次开发培训文档一、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系统中,可以定义多个其他系统的数据连接,通过该连接可以和其他系统的数据库直接连接,同时也可以设置“计划任务”,系统根据设置定时制定执行设定的计划。
泛微O A e c o l o g y二次开发实例开发完整说明二次开发培训文档一、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就是表示姓名,同时可以通过“selectlabelname from htmllabelinfo 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中主要封装了两个方法:写日志文件,获取配置文件中的参数值。
二次开发培训文档1、ECOLOGY系统框架结构1、主要的程序结构EcologyClassbean 存放编译后的CLASS文件js 系统中使用的JAVASCRIPT和VBSCRIPT脚本Css 系统中JSP页面使用的样式ImagesImages_faceImages_frame 系统中使用的图片的存放目录Crm..Workflow 该功能分文件夹存放每个功能的文件WEB-INFProp 系统配置文件存放Service 系统的接口配置文件的存放2、说明一个JSP页面,一个JAVA程序的基本组成,如何阅读JSP页面1、一个jsp页面通常需要包含什么内容2、如何阅读一个JSP页面由于ECOLOGY系统支持多语言,因此在JSP页面上一般不出现中文,全部使用标签的形式来显示中文:比如:在IE上显示“姓名”那么在JSP页面中将通过<%=SystemEnv.getHtmlLabelName(413,user.getLanguage())%>这样的形式来表示,其中的数字413就是表示姓名,同时可以通过“select labelname from htmllabelinfo where indexid=413 andlanguageid=7”来获取到“姓名”这个显示名称,其中languageid=7表示中文显示名称,languageid=8表示英文显示名称.3、JAVA程序的基本组成在ECOLOGY中开发JAVA程序建议继承weaver.general.BaseBean,在BaseBean中主要封装了两个方法:写日志文件,获取配置文件中的参数值。
3、几个常用的底层类的说明最基本的底层类,数据库操作类,上传下载文件,如何构建缓存,基本的工具类4、页面权限控制的说明,怎样在页面中引用权限,怎么样新增一个权限,如何在新开发的模块上引入权限控制在这一部分将描述:新增的页面如何保持和ECOLOGY的风格保持一致;新增的页面上引用ECOLOGY中的权限;新增的页面上引用新的ECOLOGY中还没有的权限;1、可以根据<泛微协同商务系统(Ecology)_JSP式样编写指南>保证新开发的页面在风格上和原有系统保持一致2、使用ECOLOGY分页控件实现数据的分页显示3、引用系统中的权限首先从系统的权限设置中找到需要引用的权限名称,如下如找到“地址类型维护”这个权限,其ID为41,然后通过“select rightdetail fromsystemrightdetail where rightid=41”得到其rightdetail=“AddAddressType:Add”,那么在JSP页面中通过如下语句,就可以使得只有的“地址类型维护”这个权限用的用户可以查看该页面<% if(!HrmUserVarify.checkUserRight("AddAddressType:Add ",user) ) {response.sendRedirect("/notice/noright.jsp");return;}%>4、新增新的权限控制新功能的查看5、系统的人员组织结构的介绍5、主要数据结构6、如何从缓存中获取人员信息(对三个缓存的简单介绍)6、对流程,文档数据的存放说明(主数据,明细数据,一般信息等在数据库中如何存放,主要为了考虑报表的问题)7、文档的主要数据结构文档信息的主要存储表DOCDETAIL:文档信息存储表,主要存放文档的基本信息DOCDETAILCONTENT: 文档内容存放表(如果是ORACLE数据库,如果文档的类型是HTML文档,那么文档内容存放在该表中,SQLSERVER数据库不用该表)DOCIMAGEFILE:文档,附件关联表,此表记录文档和附件(WORD,EXCEL格式文档在数据库中按照附件格式存放)的关系(即一个文档关联了几个附件)IMAGEFILE:附件路径存放表,此表记录了文档的附件(或者WORD,EXCE)存放在文件服务器上的位置DOCSHARE:文档共享表SHARINNERDOC:文档共享明细表,此表存放了该表具体共享给那些用户了8、流程的主要数据结构这里主要介绍流程的数据存放结构及如果通过流程类型获取到流程的字段信息,流程的载体分为表单和单据两类,表单和单据的区别在于:所有使用表单的流程数据存放在同一个表中,而单据每个单据对应着一张独立的数据表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 fromworkflow_base where id=wfid and isbill=’0’C、获得该表单用到了哪些主字段:select(select fieldlable fromworkflow_fieldlable whereworkflow_fieldlable.fieldid=workflow_formfiand langurageid=7andworkflow_fieldlable.formid=workflow_formfieas name,(select fieldname fromworkflow_formdict whereid=fieldid)fromworkflow_formfield where formid=上面获取的FORMID and (isdetail isnull or isdetail=’’)哪些明细字段:select(select fieldname fromworkflow_formdictdetail whereid=fieldid)fromworkflow_formfield where formid=上面获取的FORMID and isdetail=’1’2、单据对于表单而言流程的数据信息存放在三个数据表中Workflow_requestbase:该表存放了流程的基本信息:标题,创建人,创建时间,流程类型等等Workflow_form:该表只存放Workflow_requestbase和单据表之间的关系信息各单据主表:该表存储了流程的具体信息通过REQUESTID 字段和Workflow_requestbase表关联,如何获取该表呢:A、找到流程的类型ID,假定为wfidB、找到流程用了哪个单据 select formid formworkflow_base where id=wfid and isbill=’1’C、通过单据ID可以获取到该单据使用的字段Select * from workflow_billfield where billid= formidD、通过单据ID找到其用了那个表存储流程主信息,那个表存储流程明细信息select tablename from workflow_bill where id= formidselect tablename fromworkflow_billdetailtable where id= formid各单据主明细表:该表存放了流程的明细信息,同样通过REQUESTID字段和Workflow_requestbase表关联3、流程的其他信息表结构流程处理人情况表Workflow_currentoperator:此表存储了流程当前未操作者,已操作者等信息workflow_requestlog 流程处理意见表:此表存储了流程处理人处理过的审批意见workflow_requestviewlog 流程的查看日志7、如何新建,定制一个客户化的单据新建单据的好处,在于可以比较容易到把新建单据表中的信息和其他信息进行一些必要的操作8、系统已经有可开发的接口的培训9、短信接口可以通过该接口实现其他短信网关或者硬件短信设备进行在OA中发送短信的操作10、单点登录接口ECOLOGY提供了通过用户映射和模拟其他系统登录窗体的方式实现多系统之间的单点登录接口11、数据源和计划任务接口在ECOLOGY系统中,可以定义多个其他系统的数据连接,通过该连接可以和其他系统的数据库直接连接,同时也可以设置“计划任务”,系统根据设置定时制定执行设定的计划。
示例:12、自定义浏览框接口在ECOLOGY系统中可以通过该接口,实现在流程填写数据时直接选择其他系统中的数据,或者选择本系统中未定义的数据示例:13、节点附加操作接口该接口主要用来在流程的流转过程中,触发一些附加的事件或动作,达到将流程的数据和其他模块或者其他系统进行交互的功能示例:14、Ecology外部门户接口说明ECOLOGY系统中的新闻可以通过该接口发布到外部网站上15、文档webservice接口16、流程webservice接口9、流程中通过SQL脚本实现字段联动功能的培训系统中已经提供了流程字段联动的功能,通过简单的执行一条SQL语句就可以实现各个流程的字段联动功能10、开发步骤介绍17、根据开发需求撰写需求文档并给需求提交人确认。
18、搭建本地的客户环境,具体搭建方式见“十一”。
19、开发实现客户需求,并进行自测。
20、提交开发文件、脚本、表结构等至VSS中,提交规范见“十二”。
21、将提交的文件和VSS版本号记录如QC中,QC规范见“十三”。
11、客户开发环境的搭建22、安装好本机的开发工具eclipse和数据库(sqlserver2008和oracle10G)23、从//192.168.4.206/ECOLOGY_customer/客户名称/历史文件/ecology中获取客户最新文件24、http://www.e-/customersystem/data/CustomerSystemRecordList.jsp查询客户,获得品质部搭建的客户模拟环境(如果没有请联系测试人员让其搭建),从客户模拟环境中备份数据库到本机进行还原。