当前位置:首页>软件介绍>名易OA软件二次开发总结(史上最全的) 查询:
     
名易OA软件二次开发总结(史上最全的)
名易oa平台经验总结首先,对名易软件节点后附加操作二次开发的实践:一、把ChurukuAction.class文件放入名易classbean名易OA系统interfacesworkflowaction文件夹下面。二、在名易OA系统WEB-INFservice下,有一个action.xml文件,打开编辑,在module前面加上这段话:service-pointid=ChurukuActioninterface=名易OA系统.interfaces.workflow.action.Actioninvoke-factoryconstructclass=名易OA系统.interfaces.workflow.action.ChurukuActioninvoke-factoryervice-point保存后关闭。三、在名易oa系统流程设置的节点后附加操作上加上我们自己的这个action(ChurukuAction)writeLog(debuginfois+debugInfo);记录日志,写入日志文件。根据一些流程知识,可以知道:License表中存放了公司一些详细信息。通过systeminfolabelManageLabel.jsp页面可以管理标签。时刻牢记用标签,来寻找页面(不同标签,可能显示同一个文字)。根据标签,查找页面每个jsp页面几乎都include了init.jsp页面,搭建基本jsp框架根据页面可以知道,数据库操作,基本用RecodeSet就可以。jsp:useBeanid=RecordSetclass=名易OA系统.conn.RecordSetscope=page%StringcompanyName=;Stringcversion=;RecordSet.executeSql(selectcompanyname,cversionfromlicense);if(RecordSet.next()){companyName=RecordSet.getString(companyname);cversion=RecordSet.getString(cversion);}%运用recodeset可以方便操作数据库。----修改部门为总部因客户经常要求角色选择时候,默认为总部,要不然每次都要选择,会忘记,现修改页面,让其默认角色为总部,方便操作!首先,我们可以根据地址,找到流程设置页面addwf.jsp,根据一些请求,找到设置默认角色的页面,editoperatorgroup.jsp,在第302行,option上,加上select让其默认选择。(140标签为总部,根据140查找)。----获取属性文件的值:继承baseBean的类,直接可以通过publicStringgetPropValue(Stringfname,Stringkey)获取相应key的值。(属性文件放在WEB-INFprop目录)----名易OA系统.general.GCONST类提供了一个静态方法getRootPath(),可以直接返回系统的运行目录。----测试上传文件到服务器,访问已经上传的文件,导入导出excel文件。使用缓存机制暂时不考虑。名易OA系统.general.Util:提供了大量基本的工具方法(其中提供了对字符,数据等的处理),其中null2String方法,fromScreen方法,toScreen方法,TokenizerString,toHtml方法是大家需要关注的方法。名易OA系统.general.TimeUtil:提供对日期操作的工具方法,如:日期转化,日期加减名易OA系统.general.SendMail:提供了邮件发送的基本方法,其中send方法,sendhtml方法,sendMiltipartText方法是大家需要关注的方法。名易OA系统.sms.SMSManager提供了发送短信的基本方法,其中sendDBSMS方法,发送短信后会在OA的数据库中存放一条发送记录,sendSMS只发送短信,不记录信息名易OA系统.file.FileManage:提供了文件处理的工具方法。其中createDir方法,copy方法,moveFileTo方法,DeleteFile方法,extractFileName方法,extractFileExt方法,extractFilePath方法是大家需要关注的方法。712将项目部署到本地:copyoracle的dmp文件,建立一个用户,赋给它dba权限,建立一个表空间,然后将dmp(表空间)赋给我们新建的用户。(具体语句另外附带)数据库更改设置,oracle的netManager还得配置本地(可能不需要)对页面加上系统已有权限:首先从系统的权限设置中找到需要引用的权限名称,如下如找到地址类型维护这个权限,其ID为41,然后通过selectrightdetailfromsystemrightdetailwhererightid=41得到其rightdetail=AddAddressType:Add,那么在JSP页面中通过如下语句,就可以使得只有的地址类型维护这个权限用的用户可以查看该页面:%if(!HrmUserVarify.checkUserRight(AddAddressType:Add,user)){response.sendRedirect(noticenoright.jsp);return;}%若要新增权限功能,则须新插入权限表:文档数据结构:docdetail:文档信息存储,docdetailcontent:文档内容(sqlserver不用该表)docimagefile:文档附件关联关系docshare:文档共享表sharinnerdoc:文档共享明细表名易协同OA流程数据结构:Workflow_formbase:工作流表单信息表,标注表单名字和所在分部Workflow_requestbase:流程的基本信息Workflow_form:流程的具体信息通过REQUESTID字段和Workflow_requestbase表关联Workflow_formdetail:流程的明细信息,通过REQUESTID字段和Workflow_requestbase表关联Workflow_currentoperator:流程当前未操作者,已操作者等信息workflow_requestlog流程处理人处理过的审批意见workflow_requestviewlog流程的查看日志名易协同OA软禁单点继承登陆设置:查看二次开发文档单点登录;数据源和计划任务接口:--安装名易OA系统,跳过license方法,找到名易OA系统login下的VerifyLogin.java文件,将return19的所有if都改为false,即不让程序进入19。自定义浏览框!(实际与说明书上不同,需要在设置中心中设置,自定义浏览按钮)713名易OA办公协同对工作流的解读:(通过httpwatch查看)
    先根据workflowid查找到对应workflow_base流程,…过程复杂。。
  1. 通过一系列过程,找到流程体页面:WorkflowAddRequestBodyAction.jsp(在标题上加了123,待改这样将会影响到每个页面);明细表页面:WorkflowAddRequestDetailBody.jsp
    1. 3、BacoError.gif是!图标。
        根据HttpWatch显示,人员浏览框页面为select.jsp,hrmResource即人员表中,loginid表示该人员是否可登陆系统,若为null,则无法登陆,managerid表示上级人员,要更改人员浏览页上的显示信息,只需更改Select.jsp即可。如要在选择人员时显示全部人员,只需将loginidisnotnull去掉即可。
      1. 页面登陆从Login.jsp开始,到VerifyLogin.jsp再进入main.jsp页面。中间会通过Homepageredirect.jsp跳转。
        1. 6、对ResourceBrowser.jsp页面进行修改。select*from名易OA系统.dbo.workflow_AgentselectisFormSignature,formSignatureWidth,formSignatureHeightfrom名易OA系统.dbo.workflow_flownodewhereworkflowId=28;select*from名易OA系统.dbo.workflow_flownodewhereworkflowId=28select*from名易OA系统.dbo.HrmResourceselectlastname,departmentid,jobtitlefrom名易OA系统.dbo.HrmResource;select*from名易OA系统.dbo.HrmJobTitles;select*from名易OA系统.dbo.HrmDepartment;714(医惠科技处)人员选择的浏览按钮:spanid=viewerspanahref=javaScript:openhrm(%=viewer%);onclick='pointerXY(event);'%=Util.toScreen(viewername,user.getLanguage())%apaninputtype=hiddenname=viewervalue=%=viewer%td名易oa智能资产商品选择浏览按钮:待解!报表问题,安装finereport之后,自行研究报表生成使用。使用按照自带api文档进行,步骤如下:首先,进行数据库定义,连接数据库,拉出相应的表,对表中数据进行生成报表其次,对生成的报表进行部署,部署出现错误,500错误,和一个数据库错误。待解!已解:500错误是因为缺少jar包,将finereport安装目录下的lib下的jar包都移过去,问题就解决。数据库问题是数据库连接错误,未找到合适的数据库连接,finereport好像不会内置数据库配置,需要手工配置resource文件夹下面的datasource.xml文件。715浮点数2位更改为3位:根据httpwatch查看,跟踪到form_operation.jsp页面,(1)将里面的所有number(15,2)更改为保存3位小数。(2)或者直接更改数据库:(可视化操作sqlserver不行)altertable[名易OA系统].[dbo].[formtable_main_2]altercolumnf1decimal(15,3);流程基本信息管理代码文件:WFManager.java文件,5.0与6.0在流程字段上不一样。对页面右键的更改:相应的右键上,加上了日志记录的管理:RCMenu+={+SystemEnv.getHtmlLabelName(83,user.getLanguage())+,ysteminfoSysMaintenanceLog.jsp?sqlwhere=whereoperateitem=+16+,_self};RCMenuHeight+=RCMenuHeightStep;此处sqlwhere条件目前是角色管理的日志管理,不是对应的权限设置的管理!718工作流程模块:自定义查询需要系统管理员定义过,而且需要自己走过流程才能看到相应界面。流程存为文档:1、自动:(流程存为文档存放路径,所有者,然后在节点后附加操作上增加相应接口(自带的))2、手动(流程存为文档存放路径,所有者,然后在流程存为模板模块打钩存为文档。)对报表设置的参数查询:定义参数,高级设置:流程创建文档,主要用于收发文流程,数据出口(子流程):重新生成文档的话:如果打钩,则原来的文档会重新拷贝一份,这样每个人都会单独的文档,字段拆分:是要促发给n个人,根据某一个字段,拆分成n个流程发。流程转计划任务:就算出差,也是有任务的,跟子流程设置类似,签章套红71911浙商银行权限组日志bug修改:首先,更改【设置中心】-【权限设置】-权限组页面,右键无【日志】选项,并且单个权限组点进去,显示的是所有的日志情况,不符,应该改成和【角色设置】一样。修改:打开SystemRightGroup.jsp页面,在对应页面放置右键处地方,加上‘日志’功能:RCMenu+={+SystemEnv.getHtmlLabelName(83,user.getLanguage())+,ysteminfoSysMaintenanceLog.jsp?sqlwhere=whereoperateitem=+28+,_self};RCMenuHeight+=RCMenuHeightStep;在对应单个权限组中,修改,只显示对应日志,而不是全部:if(HrmUserVarify.checkUserRight(SystemRightGroup:Log,user)){if(rs.getDBType().equals(db2)){RCMenu+={+SystemEnv.getHtmlLabelName(83,user.getLanguage())+,ysteminfoSysMaintenanceLog.jsp?sqlwhere=whereint(operateitem)=28andrelatedid=+id+,_self};andrelatedid=+id+writebyme7.18}else{RCMenu+={+SystemEnv.getHtmlLabelName(83,user.getLanguage())+,ysteminfoSysMaintenanceLog.jsp?sqlwhere=whereoperateitem=28andrelatedid=+id+,_self};andrelatedid=+id+writebyme7.18}名易办公系统OA流程模块知识研读:在新建流程的时候,转到RequestType.jsp页面,点击对应流程,到达AddRequest.jsp页面,传递的参数为workflowid,和isagent(是否代理);通过workflowid找到我们对应的流程(此处,以我新建的表单与路径作为测试依据),查数据库可以发现,每一个节点,对应一条数据库信息。若有传messageType,则表示需要短信提醒;流程表单填写内容页面为WorkflowAddRequestBodyAction.jsp,对部门的浏览::8080hrmcompanyDepartmentBrowser.jsp72011在DepartmentBrowser.jsp中,DepartmentSingleXML.jsp用于解析xml(事先定义)。客户浏览::8080CRMdataCustomerBrowser.jsp依次类推,以下页面就不再修改显示。项目浏览:文档浏览:资产浏览:多人力资源浏览;浏览按钮基本都是*Browser.jsp,ctrl+shift+R可以快速找到对应的页面。72111名易企业Finereport报表设计:右键形态,可以解决实际值与显示值不一样的效果,同时,通过这个,可以在条件属性上,控制分页设置。绘制的图表要预览后才能正确显示,编辑处无法显示出来。部署名易OA系统6源码,将class文件反编译成java文件,修改错误,myeclipse跑起系统。Myeclipse查看快捷键方式:ctrl+shift+L可以查看myeclipse所有操作的快捷键,以下是几个常用:Ctrl+shift+RT查找相关文件(匹配文件名)Ctrl+alt+GfindtextinworkspaceCtrl+H全文搜索Ctrl+Q上次编辑的地方页面是否有权限查看,通过HrmUserVarify.checkUserRight(CptCapital:Display,user)方式进行判断用户是否有权限。没有,则返回response.sendRedirect(noticenoright.jsp);名易协同办公OA人力资源:User.java文件代表人力信息,loginType登录类型1:内部用户,2:外部用户,后台通过setLoginid(Stringkey)设置登陆账号信息。存于HrmResource表信息中。若是外部用户,通过CRM_CustomerInfo表信息查找。一些生日提醒,密码修改提醒,个人信息修改等功能在名易OA系统.hrm.settings文件夹下设置。Track类跟踪了流程的一系列信息。72211Workflow_requestbase:在新建流程时候创建一条记录,批准,提交后,只是改变status,lastoperator,lastnodeid,currentnodeid。在sqlserver里示范记录:*字段管理*select*from名易OA系统_5.dbo.workflow_formdictwherefieldname='yyy';*工作字段字典表,字段管理主字段对应的表*select*from名易OA系统_5.dbo.workflow_formdictdetail;*工作字段字典表,字段管理的明细字段对应的表**表单管理*select*fromworkflow_billorderbyidasc;select*fromHtmlLabelIndexorderbyiddesc;select*fromworkflow_billfieldwherebillid=-8;select*fromHtmlLabelInfo;select*from名易OA系统_5.dbo.workflow_formdetail;*表单明细表,(字段管理上新建的明细字段会管理在此表上),表单管理没用到*select*from名易OA系统_5.dbo.workflow_formbaseorderbyiddesc;*系统默认表单吧,没有用到*select*from名易OA系统_5.dbo.Workflow_billdetailtable;*单据明细表*select*fromformtable_main_8;*自定义表单***select*fromworkflow_type;*流程类型*select*from名易OA系统_5.dbo.workflow_baseorderbyiddesc;*路径设置对应的表,当设置节点信息后,与workflow_flownode表进行关联*select*from名易OA系统_5.dbo.workflow_flownodeorderbynodeiddesc;*nodetype即表示四种节点类型:创建,审批,提交,归档*select*fromworkflow_groupdetailorderbyiddesc;*节点操作者组操作者类型信息表*select*fromworkflow_nodegrouporderbynodeiddesc;*工作流节点操作者组信息表*select*fromworkflow_nodeformorderbynodeiddesc;*工作流节点字段表,看当前字段是否可见,可编辑,必须输入*select*fromworkflow_NodeFormGrouporderbynodeiddesc;select*from名易OA系统_5.dbo.workflow_nodelinkorderbyiddesc;*节点出口信息关联表,包含节点id,出口名称,前一节点*select*from名易OA系统_5.dbo.workflow_nodebaseorderbyiddesc;*其id关联workflow_flownode的nodeid字段*select*from名易OA系统_5.dbo.workflow_form;*新建请求的时候,主要看此表单*select*fromworkflow_addinoperate;select*fromworkflow_formdetail;select*from名易OA系统_5.dbo.Workflow_requestbaseorderbyrequestiddesc;*与上一条记录进行比较10,35,1,37,2,财务经理批准,0,1,,5,,,3,2011-7-22,10:03,0,0,0,-1,-1,,,5,0,,0,*select*from名易OA系统_5.dbo.workflow_currentoperatororderbyrequestiddesc;*记录当前请求状态,并查找下一节点的操作者*select*from名易OA系统_5.dbo.workflow_formdetailinfo;*未用到**人力资源*select*from名易OA系统_5.dbo.HrmResource;名易通过走主要流程,说明:新建一个表单:(form_operation.jsp)1、自定义表单都被insert到workflow_bill中(select*fromworkflow_billorderbyidasc;),表名通过HtmlLabelIndex表才能找到,也就是说:自定义表单的表名被插入标签表中,而表单中是通过标签表索引记录。并且id是-的,越来越小。2、自定义表单的详细信息,是formtable_main_(id)来记录。(在插入字段之前,该表只有两个字段,一个id,一个requestid)3、添加字段后,会将相应字段信息存入workflow_billfield表中,字段会在formtable_main_(id)表中体现出来。明细表记录在Workflow_billdetailtable表中。路径设置:1、新建流程类型:对应插入workflow_type2、路径设置,添加一个流程,对应插入workflow_base,记录流程基本信息。3、加入节点信息后,对应插入workflow_flownode表中。Nodeid会一直加上去,nodetype的0表示创建,3表示归档。4、节点操作者添加后,会在workflow_nodegroup中添加记录,并在workflow_groupdetail添加相应的记录。对应页面wf_operation.jsp上修改。两张表通过:groupdetail的groupid对应的nodegroup的id。节点是否可编辑通过对应workflow_nodeform的nodeid查看。5、出口信息:下7.26接暂时待续。。。72211725对资产查询:buttonclass=BrowseronClick=onShowCapitalid()button修改KucunSearch.jsp页面,修改173行!726接22日。6、出口信息:保存出口信息后,workflow_nodelink表相应插入对应记录,7、功能管理:对应workflow_function_manage表,retract字段表示强制收回的情况:0表示不可收回,1:查看前收回,2:查看后收回。8、流程计划表结构文档还未改变。527调整协作区界面:coworkCoworkViewFrame.jsp页面调整比例大小,在CoworkList.jsp页面上更改显示的字段,将显示的时间去掉()。在coworkview.jsp页面中更改文本框高度和一些空格。728问题:FreeFieldOperation.jsp页面上第四行,无法找到class=名易OA系统.cpt.capital.CapitalModifyFieldComInfo文件,无法保存修改信息。;‘(向蒋晋确认代码)今日所做:医惠科技项目清单列表修改:在搜索出的项目列表中,添加自定义项目字段。所做修改页面如下:ListProjectFreeField.jspEditFreeeField.jspFreeFieldOperation.jsp通过字段编辑,项目清单显示即在searchResult.jsp页面上根据sql,col分页表格可以修改,动态添加和删除。对添加项目页面进行修改:addProject.jsp页面,讲左边的相关附件放到右边其他信息上面。ViewProject.jsp页面也是如此。对出入库库存查询的报表进行修改,在数据库服务器中安装了finereport,潜在问题:finereport需要付费,每一个星期,会中断报表服务器一次。对文档的已阅进行开发。7291、根据昨日医惠科技需求,将项目清单顺序修改,searchResult.jsp页面根据col列表分页显示。2、将项目卡片显示页面附件列表顺序修改,ViewProject.jsp页面。3、附件添加js,addannewRow()函数根据table的id来确定。横线通过class=line显示。4、我的知识中,增加已阅文档板块,修改页面docSearchview.jsp页面,在if(isNew.equals(yes)){}…增加else模块。(有两处,第二处修改起作用)
          2014中国全面预算管理软件十佳品牌揭晓OA办公系统评测与对比,那个OA办公系统好?名易OA平台分页控件又专业又好用
          进销存软件合山市局全面开展白酒生产经营专项整治行动食品溯源:浙江食品药品监管系统空编严重
          食品安全追溯系统建“食品安全追溯体系”离不开政府从应用出发为ERP软件选型
          ERP软件:名易软件全面预算管理解决方案教你激励服装进销存系统下载的九大妙招
          华为诠释以免费进销存软件下载为中心的IT战略 发布SD-DC2架构食品监管软件:包装饮用水强制标准将实现大统一
          小管家进销存软件免费创业版谈服装进销存软件下载管理的有效激励
          服装进销存系统下载的能量用什么来调节?食品监管软件:天喔、姚太太瓜子过氧化值量不合格
          如何调节服装进销存系统下载抱怨工资太少的问题?服装进销存系统下载激励减少消极情绪
          信息发布:广州名易软件有限公司 http://www.myidp.net
  • 名易软件销售服务
  • 名易软件销售服务
  • 名易软件技术服务

  • 名易OA软件二次开发总结(史上最全的)