自适应的跨软件域RPA系统
文献发布时间:2023-06-19 09:35:27
技术领域
本发明涉及RPA技术领域,具体涉及一种自适应的跨软件域RPA系统。
背景技术
电力系统中,很多软件的流程操作具有链条长、重复性高的特点,为节约用户的操作时间,弱化用户对流程操作的记忆要求,引入了RPA(Robotic Process Automation:机器人流程自动化)。RPA可以认为是一种实现用户流程化操作的脚本软件程序,能够代替或者协助人类在计算机、RPA手机等数字化设备中完成重复性工作与任务。
RPA的关键在于软件组件操作的识别,识别有两种方式,一是直接识别硬件的位置,例如鼠标点击屏幕的坐标位置,屏幕的坐标位置呈现为软件组件;二是获得操作的软件组件的组件ID和操作事件,组件ID例如句柄(handle),操作事件例如鼠标点击该组件。
然而,当被RPA自动操作的软件出现变化时,例如版本更新,更新后的软件组件可能具有不同的屏幕坐标位置,或者不同的组件ID,从而导致RPA脚本无法正常使用,或者需要重新调试和开发。尤其是在电力系统中,所使用的软件较多,包括多个自主研发的软件系统和多个通用软件系统的跨软件域操作,版本更新所带来的RPA问题更加突出。
发明内容
针对上述技术问题,本发明实施例提供一种自适应的跨软件域RPA系统,能够在被RPA自动操作的软件出现变化时,仍能至少执行部分功能。
本发明采用的技术方案为:
本发明实施例提供一种自适应的跨软件域RPA系统,包括:RPA服务器和n个RPA客户端,所述n个RPA客户端使用L个软件发布服务器发布的L个软件,任意一个RPA客户端均安装有L个软件中的1个或多个;所述RPA服务器包括与所述L个软件对应的L个配置文件和k个RPA脚本,所述配置文件包括软件版本号和RPA脚本使用的软件组件ID列表,所述k个RPA脚本与所述L个配置文件之间是多对对映射关系,所述n个RPA客户端与所述k个RPA脚本之间是多对多映射关系;其中,所述软件发布服务器发布的L个软件设置在所述RPA客户端,当n个RPA客户端中的任意一个RPA客户端X
可选地,所述RPA服务器根据接收到的软件j的版本更新对应的配置文件以及对应的RPA脚本,并将更新后的RPA脚本发送给所述RPA客户端X
S200,RPA服务器根据接收到的软件j的版本V
S210,RPA服务器获取软件j的组件ID列表ID
S220,所述软件发布服务器j判断组件ID列表ID
S230,RPA服务器使用更新后的组件ID列表ID
S240,RPA服务器将对应于软件j的版本Vj1的脚本ID列表JIDa发送给所述RPA客户端X
可选地,在S240中,RPA服务器保留所述软件j的旧版本的RPA脚本。
可选地,在S220中,在软件发布服务器j判断组件ID列表ID
S221,软件发布服务器j遍历组件ID列表ID
可选地,还包括:在S221中,如果软件发布服务器j没有检索到ID
S222,软件发布服务器j将删除标志附加到组件ID列表ID
可选地,S240进一步包括:
S241,RPA服务器遍历更新后的配置文件j,如果检索到ID
S242,获取并遍历与配置文件j关联的RPA脚本;
S243,在每个RPA脚本中检索“ID
S244,如果M
S245,如果M
可选地,所述预设阈值为1~3。
可选地,在S245中,分割得到的每个子脚本的文件名按照先后顺序依次为该RPA脚本的文件名尾部增加1到T,T为子脚本的数目。
本发明实施例提供的自适应的跨软件域RPA系统,当被RPA自动操作的软件出现变化时,能够自动的根据软件的变化而对对应的配置文件和RPA脚本进行更新,不会影响用户的使用,能够节约由于软件变化而需要重新调试何况开发所导致的成本,经济实用性强。
附图说明
图1为本发明实施例提供的自适应的跨软件域RPA系统的结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的自适应的跨软件域RPA系统的结构示意图。如图1所示,本发明实施例提供的自适应的跨软件域RPA系统,包括:RPA服务器和n个RPA客户端X
在一个实施例中,所述软件发布服务器发布的L个软件可设置在云端,即RPA客户端上的软件版本是及时更新的。当L个软件中的任意一个软件i更新时,所述RPA服务器根据更新后的软件i的版本更新对应的配置文件i以及对应的RPA脚本,例如,当软件1更新时,配置文件1更新,脚本2更新,并将更新后的RPA脚本发送给对应的RPA客户端,例如,当脚本2更新时,RPA服务器将脚本2发送给客户端X
本发明实施例提供的自适应的跨软件域RPA系统,由于当被RPA自动操作的软件出现更新时,能够自动的根据软件的更新化而对对应的配置文件和RPA脚本进行更新,从而不会影响用户的使用。
进一步地,在本发明实施例中,所述RPA服务器根据更新后的软件i的版本更新对应的配置文件i以及对应的RPA脚本,并将更新后的RPA脚本发送给对应的RPA客户端,可包括:
S100,RPA服务器轮询L个软件发布服务器,如果软件发布服务器i中的软件版本与配置文件i中的软件版本不一致,则执行S110;如果一致,则不操作;
S110,RPA服务器获取配置文件i中的组件ID列表ID
S120,软件发布服务器i判断组件ID列表ID
S130,RPA服务器使用更新后的组件ID列表IDi更新配置文件i;
S140,RPA服务器使用更新后的配置文件i更新与配置文件i关联的RPA脚本。
S150,RPA服务器将更新后的RPA脚本发送给与对应脚本关联的RPA客户端。
进一步地,在S140中,RPA服务器同时删除与配置文件i关联的旧版本的RPA脚本。
进一步地,在S120中,在软件发布服务器i判断组件ID列表ID
S121,软件发布服务器i遍历组件ID列表ID
在软件发布服务器i中,在发布新版本的时候,会有新版本的配置描述文件,该描述文件例如为文本格式csv或表格格式xls,配置描述文件中会记录组件ID的更新情况,例如上一版本的ID列表,以及更新后对应的新版本ID列表。这样软件发布服务器i在配置描述文件中使用ID
在S121中,软件发布服务器i遍历RPA服务器发送的组件ID列表ID
进一步地,还包括:在S121中,如果软件发布服务器i在配置描述文件中没有检索到IDij,表示ID
S122,软件发布服务器i将删除标志附加到组件ID列表ID
进一步地,在本发明一个实施例中,S140可进一步包括:
S141,RPA服务器遍历更新后的配置文件i,如果检索到ID
S142,获取并遍历与配置文件i关联的RPA脚本;与配置文件i关联的RPA脚本可能有1个,可以能是多个,多数情况下会是多个。
S143,在每个RPA脚本中检索“ID
S144,如果M
在S144中,如果M
S145,如果M
在S145中,优选的,分割得到的每个子脚本的文件名可按照先后顺序依次为该RPA脚本的文件名尾部增加1到T,T为子脚本的数目。
进一步地,在本发明实施例中,在S145中,可按照如下方式对RPA脚本进行分割:
方式1:
如果M
方式2:
如果M
方式3:
如果M
方式4:
如果M
方式5:
如果M
进一步地,在本发明另一实施例中,在ID
S146,如果M
S147,如果M
S148,对命令行行号列表CL进行遍历处理,如果CL
S149A,如果N
在S149A中,如果N
S149B,如果N
在S149B中,如果DL
S149C,对于每个子脚本,删除ID
进一步地,在本发明另一实施例中,其中,所述软件发布服务器发布的L个软件设置在RPA客户端,即RPA客户端可以使用旧版本。当n个RPA客户端中的任意一个RPA客户端X
进一步地,所述RPA服务器根据接收到的软件j的版本更新对应的配置文件以及对应的RPA脚本,并将更新后的RPA脚本发送给所述RPA客户端X
S200,RPA服务器根据接收到的软件j的版本V
S210,RPA服务器获取软件j的组件ID列表ID
S230,RPA服务器使用更新后的组件ID列表ID
在S230中,所述RPA服务器必须保留所述更新软件的旧版本的RPA脚本。
S240,RPA服务器将对应于软件j的版本Vj1的脚本ID列表JIDa发送给所述RPA客户端X
需要说明的是,任意客户端X
S221,软件发布服务器j遍历组件ID列表ID
在软件发布服务器j中,在发布新版本的时候,会有新版本的配置描述文件,该描述文件例如为文本格式csv或表格格式xls,配置描述文件中会记录组件ID的更新情况,例如上一版本的ID列表,以及更新后对应的新版本ID列表。这样软件发布服务器j在配置描述文件中使用ID
在S221中,软件发布服务器j遍历RPA服务器发送的组件ID列表ID
进一步地,还包括:在S221中,如果软件发布服务器j在配置描述文件中没有检索到ID
S222,软件发布服务器j将删除标志附加到组件ID列表ID
进一步地,在本发明一个实施例中,S230中的使用更新后的配置文件j更新与配置文件j关联的RPA脚本,可进一步包括:
S231,RPA服务器遍历更新后的配置文件j,如果检索到ID
S232,获取并遍历与配置文件j关联的RPA脚本;与配置文件j关联的RPA脚本可能有1个,可以能是多个,多数情况下会是多个。
S233,在每个RPA脚本中检索“ID
S234,如果M
在S234中,如果M
S235,如果M
在S235中,优选的,分割得到的每个子脚本的文件名可按照先后顺序依次为该RPA脚本的文件名尾部增加1到T,T为子脚本的数目。
进一步地,在本发明实施例中,在S235中,可按照如下方式对RPA脚本进行分割:
第一方式:
如果M
第二方式:
如果M
第三方式:
如果M
第四方式:
如果M
第五方式:
如果M
进一步地,在本发明另一实施例中,在ID
S236,如果M
S237,如果M
S238,对命令行行号列表CL进行遍历处理,如果CL
S239A,如果N
在S239A中,如果N
S239B,如果N
在S239B中,如果DL
S239C,对于每个子脚本,删除ID
综上,本发明实施例提供的自适应的跨软件域RPA系统,当被RPA自动操作的软件出现变化时,能够自动的根据软件的变化而对对应的配置文件和RPA脚本进行更新,不会影响用户的使用,能够节约由于软件变化而需要重新调试何况开发所导致的成本,经济实用性强。
以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
- 自适应的跨软件域RPA系统
- 跨软件域RPA系统