ImageVerifierCode 换一换
格式:DOCX , 页数:51 ,大小:515.56KB ,
资源ID:24414064      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24414064.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Maxio71应用二次开发指南.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Maxio71应用二次开发指南.docx

1、Maxio71应用二次开发指南Maxio7.1应用二次开发指南1、文档描述本文档是根据我个人的经验和网上收索的资料整理出来,哈哈2、命名规则2.1 基本准则(1)总体说来,按照Maximo的包结构,存放相应的类,将psid改为power即可。(2)公司开发的类,统一放在power包中。(3)应用程序业务逻辑类,请放在power.app包中。(4)应用程序的页面操作类,请放在power.webclient.beans.包中。(5)工作流过程名,一般为应用程序的名字。(6)主表与子表之间的联系名,请直接使用子表的名称。2.2 类名的命名规则以下的规则,按优先级,从高到低排列,如果有冲突,请按优先级

2、高的方式命名。(1)关于类名的命名规则,请多多熟悉Maximo本身源码类名的命名规则。(2)扩展原有的类,请不要使用相同的名字,最好加上“CU”关键字。(3)直接从Mbo或StatefulMbo继承的类,最好使用表名作为类名。(4)直接从MboSet继承的类,最好使用表名加上“Set”作为类名。(5)远程接口的名称,最好都加上Remote。(6)字段的类名,最好以Fld开头。3、开发说明3.1 搭建开发环境3.2 配置Eclipse集成开发环境4 第一个应用程序4.1 业务描述做一个单表的增、删、改、查业务,以下业务为开封电厂实际程序。4.2 应用设计应用程序名:CUTASK(点检任务)应用程

3、序模块名:CUTASK应用程序表:CUROUTES_TASK (主对象)应用程序关联表:4.3 数据表设计主列:CUROUTES_TASKID4.4 开发步骤4.4.1 第一步建立数据表(1)启动Maximo,转到配置,数据库配置。(2)点击新建对象。(3)输入相关信息,如下图:注意这里对象即是表名CUROUTES_TASK、服务输入CUSTAPP、级别选择SITE,如果不是工作流表,请不要选中主对象,存储分区,是你的分区表空间。注意:我们一般是先创建数据库对象,类名,先用系统默认的,等建立应用程序后再加上去。select t.classname, t.* from maxobject t w

4、here t.objectname=CUROUTES_TASK;select t.classname, t.* from maxobjectcfg t where objectname=CUROUTES_TASK;将写的类(包括完整包名)写到classname字段。(4)添加字段信息,注意,新建表之后,系统会自动生成一些字段(如:SITEID和ORGID),并未在表设计中,写出来,默认即可。 注意:添加对象属性的时候,可能会涉及到域、类、等同对象等。关联域、关联字段类请参见以前的另一篇文档。(5) 建立关系根据PDM和需要用到的业务规则建立相应的关系。4.4.2 第二步建立应用程序见劳如力写的

5、文档。4.5 创建域4.5.1 域的分类域即是值列表,是用于对象属性值的选择列表(相当于基础数据类似)。Maximo6中域分ALN域、同义词域(Synonym)、数字域(Numeric)、数字范围域(Numeric Range)、表域(Table)、交叉域(Cross Over)。域的主要信息保存在MAXDOMAIN表里,字段值保存在相应的表中,其中的对应关系如下图所示:MAXDOMAIN表:(类似于基础数据中的基础大类) ALNDOMAIN表:(类似于基础数据中的基础细类)例如:对于一个字符域,可以看到在MAXDOMAIN表中有一条记录对应和在ALNMDOMAIN表中的若干条记录。(见上图)

6、他们之间的关系:与 ALNValue 相关联(alndomainvalue.domainid = maxdomain.domainid and maxdomain.domaintype in (select valuelist.value from valuelist where valuelist.listname = DOMTYPE and valuelist.maxvalue = ALN)。如果这是 ALN 域,则结果集将包含一个或多个对象。4.5.2 创建域点击转到 配置 域,进入如下图所示域的操作页面。 注意:同义词域在页面无法添加,只能直接在数据库中添加。同义词域对应工作流中对象的

7、状态;创建状态同义词域的sql语句(1)在MAXDOMAIN表中添加记录:insert into MAXDOMAIN (DOMAINID, DESCRIPTION, DOMAINTYPE, MAXTYPE, LENGTH, SCALE, MAXDOMAINID)values (STDSTATUS, 标准工作流状态, SYNONYM, UPPER, 10, 0, maxdomainseq.nextval);(2)在SYNONYMDOMAIN表中添加记录:同义词域的每一个状态在SYNONYMDOMAIN表中对应一条记录。insert into SYNONYMDOMAIN (DOMAINID, MA

8、XVALUE, VALUE, DESCRIPTION, DEFAULTS, SITEID, ORGID, SYNONYMDOMAINID)values (STDSTATUS, APPR, APPR, 已批准, 1, null, null, synonymdomainseq.nextval);insert into SYNONYMDOMAIN (DOMAINID, MAXVALUE, VALUE, DESCRIPTION, DEFAULTS, SITEID, ORGID, SYNONYMDOMAINID)values (STDSTATUS, CAN, CAN, 已取消, 1, null, nul

9、l, synonymdomainseq.nextval);创建后使用存储过程为主对象的STATUS字段配置域4.6 开发自定义应用程序4.6.1 创建模块模块指的是点击“转到”弹出的下拉列表中的各个应用模块。Maximo没有提供创建模块的页面,必须在数据库中利用sql语句在MAXMODULES表中添加。添加模块后还必须MAXMENU中添加菜单。在MAXMENU和maxmodules表中。MAXMENU中elementtype=MODULE的为主菜单,maxmodules表中为所有的主菜单列表。elementtype=HEADER为二级菜单,elementtype=APP的为应用程序菜单。MAX

10、MENU和maxmodules表的关系:MAXMENU.keyvalue=maxmodules.module。例如:insert into maxmodules (MODULE, DESCRIPTION, MAXMODULESID, ROWSTAMP)values (PTR, 点检定修, 234, maxmodulesseq.nextval);insert into maxmenu (MENUTYPE, MODULEAPP, POSITION, SUBPOSITION, ELEMENTTYPE, KEYVALUE, HEADERDESCRIPTION, URL, VISIBLE, IMAGE,

11、 ACCESSKEY, TABDISPLAY, MAXMENUID, ROWSTAMP)values (MODULE, PTR, 900000, 0, MODULE, PTR, 点检定修管理, , 1, nav_icon_usercust.gif, , , 19528, maxmenuseq.nextval);commit; 4.7 配置数据库4.7.1 新建对象新建对象存储在maximo数据库的MAXOBJECT、MAXOBJECTCFG、MAXTABLE、MAXTABLECFG表中。注意:服务名、绑定的类名及路径是一一对应的,建议新建的主对象最好都创建自己单独的服务,服务名跟主对象名一样,

12、这样方便每个应用的业务逻辑代码都发布在自己的服务目录下,不是主对象的对象引用现有的服务名,而不重新创建服务。开发出服务类后在maximo数据库的MAXSERVICE表中配置相应服务,可以使用如下的sql语句:insert into MAXSERVICE(servicename,description,classname,maxserviceid) values(TPRSERVICE,工程项目申请,com.jxkj.app.tpr.TprService,maxserviceseq.nextval);服务类(MAXSERVICE)的表结构如下:新建数据库对象页面、配置数据库页面的主界面如下图:4.

13、7.2 创建对象属性、索引和关系点击“新建行”添加一个新的属性,默认会有*ID(*表示新建的对象名)、description属性(该属性具有长描述,所以还有DESCRIPTION_LONGDESCRIPTION属性);(0)是否主对象(有工流需要钩上)、服务名、表所属级别、主列等。(0)在界面上创建好对象还没执行cofigdb之前,maximo会往maxtablecfg、maxobjectcfg、maxattributecfg这些表插入记录,还没生成往oracle生成相应的物理表,执行完configdb后,会在数据库中生成相应的物理表,并往maxtable、maxobject、maxattri

14、bute这些maximo系统表插入记录,如果configdb时出现问题,可以查看这些maximo系统表(0)创建虚拟的状态表时,级别为SYSTEM,固定和添加Rowstamp不用,唯一列跟语言列都不用添,因为虚拟表在数据库中不存在相应的物理表,设计界面如下(1)对象属性信息存储maxattribute、maxattributecfg表中;(2)长描述是对某一属性的描述,存储在maximo数据库的maximo.LONGDESCRIPTION表中。当对象的任何一个属性有长描述时,对象具有一个HASLD属性;(3)对于有状态的mbo必须包括了status和statusdate两个属性;(4)当对象的

15、级别为Site时,需要两个属性ORGID、SITEID;(5)需要设置某一属性为自动编号时,勾选“是否能自动编号?”,填写一个自动编号,当填写的自动编号不存在时,会弹出对话框询问是否创建新的自动编号,点击“是”创建,同时默认值填写&AUTOKEY&;自动增长值存储在AUTOKEY表中;添加属性页面如下图:注意:添加对象属性的时候,可能会涉及到域、类、等同对象等。关联域、关联字段类请参见以前的另一篇文档。对象关系属性存储在maximo数据库的MAXRELATIONSHIP表中,注意添加关系时里面条件的写法,比如:tprnum = :tprnum ,前者指的是子对象中的属性,后者指的是当前对象的属

16、性。添加关系信息输入框如下图:4.7.3 通过CONFIGDB配置数据库保存上述所建的对象以及属性、索引、关系,然后关闭weblogic服务器,进入maximo安装目录下的tools/maximo目录,双击configdb.bat,配置数据库,这时maximo程序将在数据库中创建相关的表和关系。创建完数据库表关闭weblogic,等待大概1分钟,转到maximotoolsmaximo目录中,执行configdb.bat命令,命令的默认参数将以,Maximoapplicationsmaximopropertiesmaximo.properties中的参数为准。注意:每次修改对象的相关信息或添加、

17、修改属性后都要运行configdb.bat文件配置数据库,添加或修改关系后不用运行configdb.bat。4.8 页面定制点击转到 配置 应用程序设计器,进入如下图所示应用程序设计器的页面,在该页面中进行页面的设计定制;应用程序设计器页面如下:新建应用程序必须指定模块名,指定模块名以及授权后可以在“转到“菜单中链接到自定义的应用程序。创建新应用程序如下图:开发人员通过转到配置应用程序设计器创建应用,在无特别说明的前提下,默认创建为高级应用程序(电源应用程序)。在应用程序设计器页面中,可以定制页面。页面定制可以采取两种方式:一是在应用程序设计器里画,通过“控制调色板”、“控制属性”、“编辑对话

18、框”三个功能菜单来组装页面;二是先通过应用程序设计器把该APP的XML文件导出来,再在这上面改,改完后再通过应用程序设计器导入数据库。(对系统熟练后,再使用这种方法)(该节的详细步骤参考劳如力写的文档)4.8.1配置菜单和权限 转到权限组查找并点击“MAXADMIN”组应用程序查找到相应的应用程序并为该权限组赋予相应的权限,一般是所有都打上钩,即赋予所有权限。配置完权限,退出maximo重新登录即可如上图所示,在选择操作栏选择添加签名选项、操作菜单、工具栏菜单,添加完成后需要授权后用户才能使用指定功能。 签名选项存储在maximo数据库的SIGOPTION表中,操作菜单和工具栏菜单存储在max

19、imo数据库的MAXMENU表中,菜单权限存储在maximo数据库的APPLICATIONAUTH表中。APPLICATIONAUTH的表结构如下:可以使用sql语句创建签名选项、菜单和授权。签名选项(sigoption),MAXIMO中所有的应用程序的所有操作都保存在签名选项这张表中。以点检任务为例,查看该程序所具有的操作:签名选项的表结构如下:select * from sigoption t where t.app=CUTASK;菜单权限(APPLICATIONAUTH),上述点检任务的权限分配(由权限组和签名选项确定的权限)如下:添加签名选项和权限分配时如何进行的?有两种方式创建应用程

20、序菜单和签名选项:(1)在转到配置应用程序设计器选择操作中可以进行添加/修改签名选项、添加/修改选择操作菜单、添加/修改工具栏菜单、添加/修改搜索菜单(2)直接通过sql语句,如下所示创建(程序不是自己的,主要看懂业务逻辑)-应用程序消息insert into Maxmessages (msgkey,msggroup,value,title,displaymethod,options,buttontext,maxmessagesid) Values (StatusChangeSuccess,receiption,接待方案 0 状态被更改为 1。,null,STATUS,2,null,Maxme

21、ssagesSEQ.nextval);insert into Maxmessages (msgkey,msggroup,value,title,displaymethod,options,buttontext,maxmessagesid) Values (StatusChangeFailure,receiption,无法将采购申请 0 状态更改为 1。,null,MSGBOX,2,null,MaxmessagesSEQ.nextval);insert into Maxmessages (msgkey,msggroup,value,title,displaymethod,options,butt

22、ontext,maxmessagesid) Values (editHistErr,receiption,仅当处于“关闭”状态时,才能执行“编辑历史”操作。,null,MSGBOX,2,null,MaxmessagesSEQ.nextval);insert into Maxmessages (msgkey,msggroup,value,title,displaymethod,options,buttontext,maxmessagesid) Values (cannotdeletereceiption,receiption,状态改变后不能删除,null,MSGBOX,2,null,Maxmes

23、sagesSEQ.nextval);insert into Maxmessages (msgkey,msggroup,value,title,displaymethod,options,buttontext,maxmessagesid) Values (cannotdeleteline,receiption,如果处于“等待批准”状态,则只能删除行,null,MSGBOX,2,null,MaxmessagesSEQ.nextval);-创建签名选项insert into SIGOPTION (APP, OPTIONNAME, DESCRIPTION, ESIGENABLED, VISIBLE,

24、ALSOGRANTS, ALSOREVOKES, PREREQUISITE, SIGOPTIONID, LANGCODE, HASLD) values (RECEIPTION,BOOKMARK,添加到书签,0,0,READ,SIGOPTIONSEQ.NEXTVAL,ZH,0);insert into SIGOPTION (APP, OPTIONNAME, DESCRIPTION, ESIGENABLED, VISIBLE, ALSOGRANTS, ALSOREVOKES, PREREQUISITE, SIGOPTIONID, LANGCODE, HASLD) values (RECEIPTIO

25、N,INSERT,新建接待方案记录,0,1,SAVE,DUPLICATE,READ,SIGOPTIONSEQ.NEXTVAL,ZH,0);insert into SIGOPTION (APP, OPTIONNAME, DESCRIPTION, ESIGENABLED, VISIBLE, ALSOGRANTS, ALSOREVOKES, PREREQUISITE, SIGOPTIONID, LANGCODE, HASLD) values (RECEIPTION,NEXT,下一个接待方案,0,1,READ,SIGOPTIONSEQ.NEXTVAL,ZH,0);insert into SIGOPTI

26、ON (APP, OPTIONNAME, DESCRIPTION, ESIGENABLED, VISIBLE, ALSOGRANTS, ALSOREVOKES, PREREQUISITE, SIGOPTIONID, LANGCODE, HASLD) values (RECEIPTION,PREVIOUS,上一个接待方案,0,1,READ,SIGOPTIONSEQ.NEXTVAL,ZH,0);insert into SIGOPTION (APP, OPTIONNAME, DESCRIPTION, ESIGENABLED, VISIBLE, ALSOGRANTS, ALSOREVOKES, PRE

27、REQUISITE, SIGOPTIONID, LANGCODE, HASLD) values (RECEIPTION,SAVE,保存记录,0,1,INSERT, DUPLICATE, FIELDDEFS,READ,SIGOPTIONSEQ.NEXTVAL,ZH,0);-创建应用程序菜单insert into MAXMENU (MENUTYPE, MODULEAPP, POSITION, SUBPOSITION, ELEMENTTYPE, KEYVALUE, HEADERDESCRIPTION, URL, VISIBLE, IMAGE, ACCESSKEY, TABDISPLAY, MAXME

28、NUID) values (APPMENU,RECEIPTION,85,0,HEADER,AM85,附件库/文件夹,1,ALL,MAXMENUSEQ.NEXTVAL);insert into MAXMENU (MENUTYPE, MODULEAPP, POSITION, SUBPOSITION, ELEMENTTYPE, KEYVALUE, HEADERDESCRIPTION, URL, VISIBLE, IMAGE, ACCESSKEY, TABDISPLAY, MAXMENUID) values (APPMENU,RECEIPTION,85,10,OPTION,MANAGELIB,1,AL

29、L,MAXMENUSEQ.NEXTVAL);4.9 开发工作流4.9.1 创建状态表对象用于记录状态的信息的表,是实际存在于maximo数据库中的表。例如TPRSTATUS。在主对象中创建与状态对象的关系。call PAK_TOOL.createRelation(TPRSTATUS,TPR,TPRSTATUS,tprnum = :tprnum and siteid=:siteid,与工程项目申请状态表相关联,用于查找指定工程项目申请的状态记录。结果集将包含一个或多个对象。);4.9.2 创建虚拟表对象虚拟表对象是maximo中的一个对象,但在数据库中不存在相应的物理表。虚拟表对象必须包含属性S

30、TATUS、STATDATE、MEMO。可以使用存储过程较方便地创建虚拟表对象。call PAK_TOOL.createCSVirtual(TPRCHANGESTATUS,工程项目申请状态更改虚拟表,TPR, TPR,com.jxkj.app.tpr.virtual.TprChangeStatusMboSet,1);4.9.3创建工作流状态同义词域同义词域对应工作流中对象的状态;创建后使用存储过程为主对象的STATUS字段配置域:call PAK_TOOL.ConfigDomain(TPR,STATUS,STDSTATUS);4.9.4创建操作操作是工作流程中的辅助选项,通过设置操作可以使流程在运行的过程中完成一些指定的操作,如:设置值、改变状态、操作组、可执行的命令行、定制类、应用程序操作。设置好后的操作由系统自动执行。操作“设置值”和“改变状态”必须指定对象,而且操作“改变状态”的对象要求是继承stateful的对象即有状态的对象。在绘制工作流程时可以为流程的每一步指定需要的操作。点击转到 配置 工作流 操作,进入配置操作的页面。4.9.5绘制工作流程图例描述:开始节点 一个流程只能有一个开始节点。停止节点 一个流程至少有一个停止节

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

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