excel数据转换说明
变更记录
产品版本 | 更新内容 | 更新时间 |
公有云:CosmicRPACloud.V5.0.011_2022.2.1.0 私有云:CosmicRPA.V5.0.011_2022.2.1.0 | 初始版本 | 2022-11-17 |
公有云:CosmicRPACloud.V5.0.022_2023.2.0.0 私有云:CosmicRPA.V5.0.022_2023.2.0.0 | 增加调用Python脚本功能 | 2023-06-09 |
1 前言
在使用RPA工具进程流程设计时,往往会遇到数据格式不一致,数据不完整的情况。对于开发者来说写Python脚本对数据进行加工和转换是一件轻松的事,但是对于不懂开发的业务人员来说却是一件难事,这无形提高了RPA工具的使用门槛。
Excel数据转换工具就是为了解决异构系统的数据加工和转换问题,而不需要进行代码编写。目前支持的功能如下:
基础数据处理:字符串处理、正则、时间、数学计算
逻辑处理:IF判断,When/判断(如同Switch),空判断,与或逻辑计算
产品线集成处理:星空基础资料查询,表格文件关联查询
Excel数据转换工具使用范例(钉钉单据导入到星空凭证)设计图如下:
业务说明:钉钉会有很多种类型的单据,通过Excel数据转换工具统一转成符合星空凭证模板格式的文件后,通过星空组件进行导入,那么只需要维护相应的转换规则文件即可;类似的范例还有支付宝账单转换成星空凭证,星空销售出库单转换到指定数据库表里等。
2 新建数据转换规则
(1)进入RPA设计器,点击“金蝶场景化工具”图标,进入金蝶场景化工具面板。
(2)点击数据转换工具的“使用”按钮,进入数据转换工具面板。
(3)数据转换工具中,左侧面板是数据转换文件的管理面板,支持刷新、导入、新增。
(4)点击新建规则,输入规则文件名称,点击确定,进入规则转换设置界面。
3 转换规则列表
[按钮]添加:添加一行空白行,目标字段类型默认为文本
[按钮]删除:会删除当前选中的行,支持快捷键delete(支持多选删除)
[按钮]上移/下移:可调整规则列表的顺序(转换执行顺序从上到下)
[源文件模板]文件:转换器需要对源文件模板字段进行引用,模板只作用于设计时,只需要列名,不需要数据
[源文件模板]Sheet页:选择完源文件模板后可以选择对应的Sheet页,如果Sheet页的名称可能发生变化,请选择带有※符号的Sheet页(当Sheet页名称找不到时会使用※后面的Sheet序号进行查找)
[源文件模板]起始行:选择包含列名的行号,会用于转换器里数据源的选择
[目标文件模板]文件:转换器需要对目标文件模板字段进行引用,模板只作用于设计时,只需要列名,不需要数据
[目标文件模板]Sheet页:选择完目标文件模板后可以选择对应的Sheet页,如果Sheet页的名称可能发生变化,请选择带有※符号的Sheet页(当Sheet页名称找不到时会使用※后面的Sheet序号进行查找)
[目标文件模板]起始行:选择包含列名的行号,会用于规则列表里目标字段的选择
“是否以源文件为目标模板”:点击此复选框,目标文件模板所属行会消失,源文件模板被当做目标文件模板
4 编辑转换规则
[转换器列表按钮]上移/下移:移动转换器位置
转换规则由转换器列表(上方列表),转换器(左侧树),转换器参数(右边Tab页),转换器测试组成(测试输入、测试输出),转换器支持逻辑表达式IF/When,也支持多个转换器叠加组成,执行结果取最后一个,过程可以引用其他转换器的结果。
参数类型支持表达式、常量、整数、布尔值、下拉框、Excel选择列、结果、标签按钮、基础资料、表格文件,文件夹选择每一种参数类型会对应一种模板控件。
只有带表达式类型(且只有1个)的转换器可以使用测试功能,例如正则、替换、字符串拆分,而获取列、相减则不提供测试功能,且测试输入和测试输出和按钮是灰色不可点击和输入
双击转换器列表的某一项,会触发修改功能,左边树形控件变成灰色,修改完成后点击保存即可,如不想修改可点击取消按钮或者按快捷键ESC,点击例子说明可以查看当前转换器的使用例子
选中转换器列表的某一项,可结合左边树形控件插入转换器到选中位置下方
[转换器列表按钮]编辑:选中转换器的一行数据点击编辑按钮或者直接双击某一行数据可修改转换器的参数
[转换器列表按钮]删除:删除选中的转换器,不支持多选,支持快捷键Delete
[转换器列表按钮]上移/下移:移动转换器位置
5 转换器
5.1 获取列
(用于直接获取不加工的Excel数据源字段数据,不支持输入输出测试)
点击“选择列”右边的下拉框可以直接选取Excel数据源的字段,转换器列表自动保存
5.2 获取字符串长度
获取Excel对应列值的长度
测试说明,输入张三,输出2(用于获取Excel数据源字段值的长度,支持输入输出测试
5.3 字符串拼接
自由拼接字符串、Excel数据源字段、转换器结果
(用于对Excel数据源多个字段和固定字符进行拼接,不支持输入输出测试)
5.4 字符串拆分
对Excel数据源字段进行拆分,并取拆分后的第几组,组数从1开始
测试说明:输入2022-10-12,输出2022
(用于对Excel数据源字段的拆分,例如时间年月日提取,支持输入输出测试)
5.5 字符串截取
设置起始位置和截取数量对Excel数据源字段进行截取,如果截取的数量超过数据原字段值的长度则截取到末尾
测试说明:输入你好呀,输出你好
(用于对Excel数据源字段的截取,支持输入输出测试)
5.6 正则
对Excel数据源字段进行正则提取,有多个匹配值可以通过组数进行取值
5.7 替换
对Excel数据源字段进行替换,替换方式是采取全部替换
测试说明:将深圳替换成北京
(用于对Excel数据源字段进行数据替换;支持输入输出测试)
5.8 空判断
对Excel数据源字段进行空判断,当Excel列不存在或者列的值为空时则返回成立的结果,否则返回不成立的结果
测试说明:获取户籍,如果户籍为空,结果变为“深圳人民”,否则变为“广州人民”
(用于对Excel数据源字段进行空值或不存在列的判断,支持输入输出测试)
5.9 相减
对Excel数据源中两个字段进行数学相减
(用于对Excel数据源两个字段进行相减,常用金额的相减;不支持输入输出测试)
5.10 相加
对Excel数据源中两个字段进行数学相加
(用于对Excel数据源两个字段进行相加,常用金额的相加;不支持输入输出测试)
5.11 区间列相加
对Excel数据源中两个字段区间的值进行相加
(用于对Excel数据源两个字段区间的值进行相加,常用金额的统计;不支持输入输出测试)
5.12 字符串转浮点
对Excel数据源字段进行格式转换,精确度可填写0或者#定义格式,其中#会去除无效的0尾数,而0会保留。例如数据123,精确度0.00输出123.00,精确度#.##输出123
测试说明:格式化带千分位的数值并保留小数后两位,输入1,输出1.00
(用于对Excel字段进行格式转换,常用金额的转换与格式调整;支持输入输出测试)
5.13 字符串转日期
对Excel数据源字段进行格式转换,可将字符串转成日期格式,日期格式默认为系统默认的日期格式,源数据格式预置有yyyyMMddHHmmssfff、yyyyMMddHHmmss、yyyyMMdd、yyyyMM四种,如不满足可选择自定义格式
测试说明:输入20221212,输出2022/12/12 0:00:00
(用于对Excel字段进行格式转换,常用将字符串转成日期再进行别的日期操作或者格式化;支持输入输出测试)
5.14 修改日期时间
对Excel数据源字段-日期时间进行修改,支持年月日时分秒的加减,修改后返回的日期格式为系统默认格式
测试说明:输入2022/01/01,修改年份+12,输出2034/1/1 0:00:00
(用于对Excel字段进行日期时间调整,支持输入输出测试)
5.15 日期格式化
对Excel数据源字段进行格式化,实现多种日期格式的转换,内置的日期格式如下:
yyyy-MM-dd HH:mm:ss fff,年-月-日 时:分:秒 毫秒
yyyy-MM-dd HH:mm:ss,年-月-日 时:分:秒
yyyy-MM-dd,年-月-日
yyyy/MM/dd HH:mm:ss fff,年/月/日 时:分:秒 毫秒
yyyy/MM/dd HH:mm:ss,年/月/日 时:分:秒
yyyy/MM/dd,年/月/日
yyyyMMddHHmmssfff,年月日时分秒毫秒
yyyyMMddHHmmss,年月日时分秒
yyyyMMdd,年月日
(如不满足可选择自定义格式)
测试说明:输入2022/12/12,格式设置为yyyy_MM_dd,输出2022_12_12
(用于对Excel字段进行日期格式转换,常用于获取年月日时分秒等信息,可结合修改日期时间获取到月份的最后一天;支持输入输出测试)
5.16 逻辑判断 - IF
Excel数据转换中可根据条件分批转换数据,IF条件成立则会执行下方的转换器,条件不成立则会执行Else下方的转换器
(用于对Excel数据转换时增加逻辑判断,实现不同逻辑的转换结果;不支持输入输出测试)
5.17 逻辑判断 - When
Excel数据转换中可根据条件分批转换数据,When条件成立则会执行下方的转换器,条件不成立则会执行下一个When,条件都不成立则会执行Default下方的转换器
(用于对Excel数据转换时增加逻辑判断,实现多分支的转换结果;不支持输入输出测试)
5.18 星空基础资料
请参考说明使用;
5.19 表格文件
请参考说明使用;
5.20 调用Python脚本
面对一些客户场景的需求,数据转换工具已有的转换器满足不了。针对这种情况,工具提供自定义转换器的灵活方式,用户可以通过Python脚本实现转换器逻辑以满足需求。
(1)工具中,转换器目录“其他转换”下增加【调用Python脚本】转换器。
(2)转换器需要配置一个参数:Python脚本文件。点击右侧的图标进入选择界面进行选择。
(1)选择界面支持Python脚本文件管理功能,此目录下的文件是放置在RPA流程的工程目录下,会随工程一起发布,以确保运行时可以找到配置的脚本文件。
A. 目录支持刷新、导入和新建功能
名称需要符合以下条件:仅包括字母、数字、下划线、横杆、中文,长度在50位内。
确定后,会生成对应的py文件,同时调用系统默认编辑py文件的程序进行打开编辑。生成的py文件是具有模板格式的,需要严格按照模板格式内的说明进行编辑,不然会导致转换器运行失败。
可以导入py格式的文件,导入的文件不做模板限制。
convert函数是一定不可删除的。如果py脚本内有引用第三方库,请先在设计器-工具-PIP管理上查看是否有安装,如果没有,先安装,不然运行会找不到第三方库。
B. 编辑、重命名和删除
鼠标悬浮在目录下的文件上时,可以编辑、重命名和删除。
C. 确认选择
鼠标双击或者选中后点击确定
D. 测试
转换器不支持测试,如果需要验证配置的脚本文件是否正确,可以通过运行时查看【Excel数据转换】组件运行情况。或者可以按照以下代码,自行验证(转换组件运行时采用的是第三方库Pandas进行处理)
注:测试完成记得把测试的代码删除。
6 数据转换活动组件说明
源文件:数据源(格式为xlsx或xls)
保存路径:在基础文件上通过规则转换后新的文件(格式为xlsx或xls)
规则文件:通过Excel数据转换工具设计出来的rule文件,可点击右边“选择文件”按钮进行选择
连接信息:用于星空的基础资料转换器使用
运行结果:运行完成后如果没有异常,返回值为True;如果有1个异常返回值则为False
运行完成后日志输出:包含每一个转换规则的结 果,如果是成功则输出:转换规则{序号}转换成功;
如果失败则输出:转换规则{序号}转换失败,转换器{名称}在转换第{源数据行号}数据时发生异常:{异常信息}
excel数据转换说明
本文2024-09-23 01:02:23发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-143369.html