机器人和服务器之间存在基本的管理与调度关系,并且我们额外增加了服务器对机器人的辅助能力——服务器变量。服务器变量是存储在服务器,而非存储在机器人里面,是持久化的变量。通过在服务端设置变量,开发者可以通过设计器和机器人访问所属部门的变量,对变量进行获取、调用及设置。
1 新增变量
服务器变量存储在服务器中,因此只能在服务端定义,不能在客户端定义和声明。
1.1 登录服务端
管理者能实现对所属部门及其子部门的管理,新增变量要以管理者身份登录。
1.2 新增变量
点击“新增”,设置新增变量的信息和权限,确定后新增成功,该变量可被拥有权限的用户和机器人调用。
注:共享变量存储在服务器中,因此只能管理者在服务端定义,不能在客户端定义,但可以通过设置权限指定用户和机器人访问该共享变量,对其进行获取、调用及设置。
1.3 参数设置
1)变量类型
变量类型分为文本和密码两种类型,当设置为“密码类型”时,保存后密码以“*****”形式保存,即密码加密保存。
2)变量值
支持整型、字符串、数组类型,也可以定义一个 “key-value”,将变量值写成{"key1": "value1", "key2": "value2"}形式,用一个变量保存一堆变量,即字典型。
3)权限
(1)所属部门:变量可被所属部门及其子部门的用户访问,对其进行获取、调用和设置。
(2)机器人:金蝶云苍穹RPA机器人使用服务器变量受限于所属部门和机器人,即限定谁能访问这个变量,以及谁可以修改变量。
• 当设置为“特定机器人”,那么所属部门就无关紧要了,此时只有特定机器人可以获取、调用和设置该变量。
• 当设置为“动态分配”,则此部门下的和没有部门的用户或机器人可以获取、调用和设置该变量。
• 当设置为“部门机器人”,则只有所属部门下的用户或机器人可以获取、调用和设置该变量。
(3)所属部门配置 在权限设置时,管理者可以在服务端“系统”—“部门管理”中对所属部门进行配置,以便选择。部门管理中的部门信息从金蝶云苍穹中同步过来,如需修改,需要在金蝶云苍穹基础服务中进行维护。
管理者只能对子部门进行新增等管理,如果新增一级部门,需要超级管理者身份。
(4)客户端修改
设置修改变量的权限,勾选时则允许机器人和设计器修改服务器变量。
(5) Python表达式
(1)对于字符串的服务器变量,无论是否勾选,都可以获取此变量; (2)对于字典型的服务器变量,即{"key1": "value1, "key2": "value2}型,勾选“ Python 表达式”,可将此变量以字典形式返回,并且获取字典中任意“key”的值.若不勾选,则返回字符串类型的服务器变量。
(6) 新增成功
2 获取变量
开发者可以使用设计器和机器人获取所属部门的服务器变量。
开发者只能访问所属部门的服务器变量。 设计器或者机器人配置企业服务器地址。
2.1 使用设计器获取服务器变量
(1) 配置访问服务器地址
在设计器“账号”-“切换账号”中,开发者用户登录“企业服务器”,配置访问服务端地址。
(2) 获取变量
在画布中选择“服务器-获取变量”组件并填入要获取的本部门服务器变量名称,运行即可。
注: 变量名为服务端设置的名称。 超时时间指接口超时时间。
• (1)若获取文本类型变量,则返回值为。
• (2)若获取密码类型变量,则返回加密后的变量值。
2.2 使用机器人获取服务器变量
(1 )配置访问服务器地址
在机器人“注册”中配置服务端地址,用户需和设计器流程同账号。
(2) 组件设置
在画布中选择“获取变量”组件并填入要获取的服务器变量名称。
注: 变量名为服务端设置的名称。 超时时间指接口超时时间。 只能获取开发者所属部门的变量。
(3) 发布流程到本地机器人
在“工具”-“发布为流程”将此流程发布到本地机器人。
(4) 执行结果
机器人运行结束后可在日志中查看服务器变量的值。
2.3 勾选python表达式
如果文本变量中值为字典型,例如值为:{"aa": 11", "bb": "22"},并勾选“ Python 表达式”,则可以获取变量中某一个“key”的值。
示例,服务器设置变量值为。
返回值为指定“key”的值。