一种基于xmlrpc集成pdm系统的方法

文档序号:8339371阅读:369来源:国知局
一种基于xml rpc集成pdm系统的方法
【技术领域】
[0001 ] 本方法涉及计算机应用系统集成领域,适用于PDM系统的功能集成和信息集成方法。
【背景技术】
[0002]目前机械制造业基本上采用了 PDM系统来管理企业的设计、生产、制造等数据,为实现企业数据的共享及打通整个行业设计、生产、制造流程的数字化生产线,就需要实现PDM系统与其它系统实行集成。为了达到PDM系统与其它系统实行集成要求,在设计PDM系统集成接口时,主要有两种设计办法:一种是把PDM系统集成每一个接口函数设计成一个批处理程序,该接口函数的结果按约定的格式保存在一个文件中,通过一服务程序使用命令行的方式执行该批处理程序,解析结果文件的内容获得接口函数的返回结果;另一种是把PDM系统集成每一个接口函数设计成一个控制台批处理程序,通过一服务程序捕获控制台上显示的字符串,解析该捕获的字符串的内容获得接口函数的返回结果。
[0003]这两种集成方法存在以下一些缺点:
[0004]I)在每次执行PDM系统的接口函数时,都需要获取PDM系统的License,在设计高峰期,存在因没有License而导致接口函数不能运行。
[0005]2) PDM系统的接口函数只能在PDM服务器上以批处理的方式运行,每次都需要获取PDM系统的Sess1n建立与PDM系统的访问连接,时间一般都在5?7秒,响应效率低下,且客户端程序需要对PDM系统接口函数返回的结果进行解析或判断,执行效率不高。

【发明内容】

[0006]本发明的目的:
[0007]为了解决以上问题,提供一种基于以XML RPC的通讯机制的集成PDM系统的实用方法,该方法原理简单、编程简洁,提高系统集成接口的响应速度和稳定性。
[0008]本发明的技术方案:
[0009]为实现上述目的,本发明提出一种基于XML RPC集成PDM系统的方法,本方法包括以下步骤:
[0010]第一步,在PDM系统所在服务器上建立服务进程,对该服务进程分配服务端口,开启该服务进程;开启时如果该服务端口被占用,则该服务进程开启失败,对该服务进程重新分配服务端口,直至该服务进程开启成功;
[0011]第二步,该服务进程调用PDM系统接口,建立与PDM系统的通讯链路,获取经PDM授权的访问Sess1n ;
[0012]第三步,该服务进程等待客户端的请求;
[0013]第四步,如果该服务进程接收到来自客户端的请求,则执行对应的PDM系统接口的函数,同步把结果返回客户端;
[0014]第五步,重复执行第三步和第四步;
[0015]第六步,服务进程接收关闭指令,关闭与PDM系统的通讯链路,退出服务进程。
[0016]所说的PDM系统接口包括以下函数:建立服务进程与PDM系统的连接函数、关闭函数、读文件函数、建立文件对象函数、读取对象属性函数、写对象属性函数以及下载文件函数。
[0017]在所说的第一步中根据需要,可建立多个服务进程,并对其分配不同的服务端口,执行第一步到第六步步骤,实现多进程服务。
[0018]本发明的优点:
[0019]由于采用了以上的方案,可以实现以下优点:
[0020]I)本发明的服务进程启动后,会主动获取PDM系统的一个License,可以一直为后续接口提供使用,不会因设计高峰期因License数量不够而导致接口不能使用的情况,同时缩短了接口获取访问PDM系统的Sess1n的时间,提高了接口返回结果的时间;
[0021]2)本发明的PDM系统接口直接向调用者提供结果,调用者不需要对结果进行解析,可以直接加以利用,提高了接口使用效率和稳定性。
【附图说明】
[0022]图1为本方法的流程图。
【具体实施方式】
[0023]一种基于XML RPC集成PDM系统的方法,本方法包括以下步骤:
[0024]第一步,编写PDM系统的的连接函数、关闭函数、读文件函数、建立文件对象函数、读取对象属性函数、写对象属性函数以及下载文件函数,并将其封装在服务进程程序中;在PDM系统所在服务器上建立该服务进程的Shell脚本或服务程序,为该服务进程分配服务端口,运行该脚本或服务程序开启该服务进程;开启时如果该服务端口被占用,则该服务进程开启失败,对该服务进程重新分配服务端口,直至该服务进程开启成功;
[0025]第二步,该服务进程调用PDM系统接口,调用时首先调用连接函数再调用其它函数,最后调用关闭函数,建立与PDM系统的通讯链路,获取经PDM授权的访问Sess1n,省去了每个接口函数调用的连接时间;
[0026]所说的PDM系统接口包括以下函数:
[0027]连接函数:通过调用OpenSess1n函数建立该服务进程与PDM系统的连接,由于每调用一次OpenSess1n函数时,服务进程会自动占用一个PDM系统的License,因此不会像原来那样每访问一次PDM系统时都需要占用License,且该函数返回的结果以XML的形式传递给客户端,供客户端直接使用;
[0028]关闭函数:通过调用CloseSess1n函数建立该服务进程与PDM系统的连接,由于每调用一次CloseSess1n函数时,服务进程会自动占用一个PDM系统的License,因此不会象原来那样每访问一次PDM系统时都需要占用License,且该函数返回的结果以XML的形式传递给客户端,供客户端直接使用;
[0029]读文件函数:通过该文件在PDM系统中的ID获取被读文件的URL,再通过URL浏览该文件;由于在调用连接函数时已经获取了 License,因此该函数不需要再占用新的License,且该函数返回的结果以XML的形式传递给客户端,供客户端直接使用;
[0030]建立文件对象函数:对由PDM系统提供标准的建立文件对象函数,通过选定预定义在PDM中的文件对象类型,建立相应的文件对象,所说的文件对象类型包括技术文件、试验文件、CO单、EO单、ECO单;由于在调用连接函数时已经获取了 License,因此该函数不需要再占用新的License,且该函数返回的结果以XML的形式传递给客户端,供客户端直接使用;
[0031]读取对象属性函数:依据PDM系统中的预定义的对象,通过调用PDM系统提供标准的提取对象属性函数,获取每个对象的一个或多个属性值,该属性值包括单值或多值;由于在调用连接函数时已经获取了 License,因此该函数不需要再占用新的License,且该函数返回的结果以XML的形式传递给客户端,供客户端直接使用;
[0032]写对象属性函数:依据PDM系统中的预定义的对象,通过调用TOM系统提供标准的写对象属性函
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1