一种基于调度同期线损的报表自动生成系统和方法

文档序号:1073188 发布日期:2020-10-16 浏览:7次 >En<

阅读说明:本技术 一种基于调度同期线损的报表自动生成系统和方法 (Report automatic generation system and method based on scheduling synchronization line loss ) 是由 承春明 赵欣慧 王金珂 王永翔 冀振鑫 赵东坡 胡丹 李晓方 于 2020-07-28 设计创作,主要内容包括:本发明公开了一种基于调度同期线损的报表自动生成系统和方法,所述系统包括数据源自动获取模块、报表自动生成模块和数据可视化模块,所述数据源自动获取模块用于自动完成信息管理系统数据源指定位置的下载与存储,所述报表自动生成模块用于自动生成包含多个文件的数据报表,所述数据可视化模块用于自动完成对应数据的可视化。本发明能够定点自动完成对应数据源的下载,随后自动批量完成数据报表的合并、主键值字段模糊处理、获取所有主键值、精确匹配、返回值判别和存储,以及数据可视化展示,提高调控各部门一线班组人员的工作效率。(The invention discloses a report automatic generation system and a method based on scheduling synchronization line loss, wherein the system comprises a data source automatic acquisition module, a report automatic generation module and a data visualization module, the data source automatic acquisition module is used for automatically completing downloading and storing of a data source designated position of an information management system, the report automatic generation module is used for automatically generating a data report containing a plurality of files, and the data visualization module is used for automatically completing visualization of corresponding data. The invention can automatically complete the downloading of the corresponding data source at a fixed point, then automatically complete the combination of data reports in batches, the fuzzy processing of the primary key value fields, the acquisition of all primary key values, the accurate matching, the judgment and the storage of return values, and the visual display of data, thereby improving the working efficiency of the staff of one-line team of each department.)

一种基于调度同期线损的报表自动生成系统和方法

技术领域

本发明属于数据处理技术领域,具体涉及一种基于调度同期线损的报表自动生成系统和方法。

背景技术

电网系统中,涉及最多的是各种信息管理系统和其中的数据,对于现有的报表下载,需操作员登录相应的信息管理系统人为下载,对于多个报表的汇总合并操作,需使用excel办公软件逐个文件进行复制粘贴、逐条数据进行查找、匹配,人工操作和excel手动处理费时费力,涉及大量重复、有步骤顺序的数据下载与数据处理,如文件合并、字符串匹配、数据比对判别等,因此,开发一种能够自动化下载并实时自动生成报表的方法,并针对不同需求可简单修改,对于大幅提高运维人员的工作效率具有积极的意义。

公告号为CN103699618B的中国专利公开了一种数据报表的生成方法和系统,所述方法包括:将报表生成任务转换为两组以上的报表子任务,其中,每组所述报表子任务对应报表数据的部分数据;通过分布式系统的至少两个分布式服务器一一对应地执行所述报表子任务,分别从所述分布式系统的分布式数据库中获取与所述报表子任务对应的报表数据,并分别将各自获取的报表数据生成子报表;将各个所述子报表合并为与所述报表生成任务对应的报表。实施该发明的方法和系统,可同时提高海量数据生成报表时的数据读取速率和报表生成速率。但是,实际业务系统中仍然以数据库查询和制作数据报表为主,该专利只适用于如何从海量数据中筛选重点数据并制作成表格和图表混搭的模式,提高报表制作效率,降低报表制作时间,仅适用于银行业务数据库,通用性较差。

公告号为CN104715052B的中国专利公开了一种生成报表的方法及其系统,方法包括:通过浏览器输入用户名和密码,登录报表系统;在报表系统内,根据物料的种类与数目录入物料信息;提取物料信息的种类和数目,并根据物料信息的种类和数目调用服务器中数据库内相应的属性信息与报表格式,将物料信息填充至相应的属性信息与报表格式生成报表,其中,属性信息包括报表编号、报表名称、报表内设置的公式与报表类型,报表格式包括字体、线条与单元格宽度;将生成的报表导入服务器存储矩阵中进行存储,同时,根据用户端的设置不同将报表转换成不同文件格式的报表。该发明提升报表系统生成报表的兼容性、解决了报表系统不宜维护和统计复杂的问题。该专利是解决excel、word不能实时动态根据报表结构加载报表数据问题,提出一种基于物料数据的报表生成方法,全程不具自动化,应用范围局限。

发明内容

为克服上述缺陷,本发明的目的在于提供一种基于调度同期线损的报表自动生成系统和方法。

为实现上述目的,本发明采用如下技术方案:

一种基于调度同期线损的报表自动生成系统,包括数据源自动获取模块、报表自动生成模块和数据可视化模块,所述数据源自动获取模块用于自动完成信息管理系统数据源指定位置的下载与存储,所述报表自动生成模块用于自动生成包含多个文件的数据报表,所述数据可视化模块用于自动完成对应数据的可视化。

优选地,所述数据源自动获取模块结合主流WEB自动化工具Selenium、网络爬虫技术和Python自动化技术,模拟用户的鼠标键盘操作,通过网页元素的定位、选择、输入和点击操作以及程序的定点触发机制,自动完成信息管理系统数据源指定位置的下载与存储。

优选地,所述报表自动生成模块批量完成单个excel文件的自动合并与命名、主键值字段的模糊处理、获取所有主键值、精确匹配、返回值判别和存储,自动生成包含多个文件的数据报表。

一种基于调度同期线损的报表自动生成方法,包括以下步骤:

(1)数据源自动获取:数据源自动获取模块将数据源自动下载到报表自动生成模块所在目录内;

(2)报表自动生成:a. 批量完成单个excel文件的自动合并与命名,即将同一文件夹下的多个excel文件合并到一个文件的不同工作表中;

b. 撰写正则表达式完成每个工作表中主键值字段的模糊处理,并写入对应的工作表中;

c. 循环遍历各个工作表,获取所有主键值,并写入‘汇总’工作表;

d. 将遍历后的‘汇总’工作表分别与其余工作表进行精确匹配,返回写入对应的数据列,同时与将返回的数据列与标准值作比对,并区别标注;

e. 处理后的result.xlsx保存到指定文件夹;

(3)数据可视化展示:选定‘汇总表’的关键属性,自动完成对应数据的可视化。

优选地,所述数据源自动获取方法为:结合主流WEB自动化工具Selenium、网络爬虫技术和Python自动化技术,模拟用户的鼠标键盘操作,通过网页元素的定位、选择、输入和点击操作以及程序的定点触发机制,自动完成信息管理系统数据源指定位置的下载与存储。

优选地,所述获取所有主键值包括以下步骤:

第一个工作表为“汇总”工作表,复制第二工作表的主键值至“汇总”工作表,遍历下一工作表,若存在,遍历下一工作表,若不存在,写入“汇总”工作表。

本发明的积极有益效果:

1. 本发明能够定点自动完成对应数据源的下载,随后自动批量完成数据报表的合并、主键值字段模糊处理、获取所有主键值、精确匹配、返回值判别和存储,以及数据可视化展示,提高调控各部门一线班组人员的工作效率,每日及时快速分析地市几百条线路的线损指标数据存在的问题,推动同期线损指标管理再上新台阶;而且运用本发明的方法,还也可批量完成数据一键查询、分类、统计、计算等常用数据处理方向,为经常使用报表处理数据的公司和程序开发人员提供新思路。

附图说明

图1为本发明基于调度同期线损系统的报表自动生成系统的结构框图;

图2为本发明报表自动生成方法流程图;

图3为本发明获取所有主键值方法流程图;

图4为本发明数据源获取方法流程图;

图5为本发明数据源获取结果图;

图6为本发明母线平衡数据图一;

图7为本发明母线平衡数据图二;

图8为本发明母线平衡数据图三。

具体实施方式

下面结合一些具体实施例对本发明进一步说明。

实施例1

参见图1,一种基于调度同期线损系统的报表自动生成系统,包括数据源自动获取模块、报表自动生成模块和数据可视化模块,所述数据源自动获取模块用于自动完成信息管理系统数据源指定位置的下载与存储,所述报表自动生成模块用于自动生成包含多个文件的数据报表,所述数据可视化模块用于自动完成对应数据的可视化。

所述数据源自动获取模块结合主流WEB自动化工具Selenium、网络爬虫技术和Python自动化技术,模拟用户的鼠标键盘操作,通过网页元素的定位、选择、输入和点击操作以及程序的定点触发机制,自动完成信息管理系统数据源指定位置的下载与存储。

所述报表自动生成模块批量完成单个excel文件的自动合并与命名、主键值字段的模糊处理、获取所有主键值、精确匹配、返回值判别和存储,自动生成包含多个文件的数据报表。

一种基于调度同期线损的报表自动生成方法,包括以下步骤:

(1)数据源自动获取:数据源自动获取模块将数据源自动下载到报表自动生成模块所在目录内;

所述数据源获取方法为:结合主流WEB自动化工具Selenium、网络爬虫技术和Python自动化技术,模拟用户的鼠标键盘操作,通过网页元素的定位、选择、输入和点击操作,自动完成信息管理系统关键指标及文件的抓取、显示、判别、下载与存储;

(2)报表自动生成:参见图2,a. 批量完成单个excel文件的自动合并与命名,即将同一文件夹下的多个excel文件合并到一个文件的不同工作表中;

b. 撰写合适的正则表达式完成每个工作表中主键值字段(即母线名称)的模糊处理,并写入对应的工作表中;

c. 循环遍历各个工作表,获取所有主键值,并写入‘汇总’工作表;

参见图3,所述获取所有主键值包括以下步骤:

第一个工作表为“汇总”工作表,复制第二工作表的主键值至“汇总”工作表,遍历下一工作表,若存在,遍历下一工作表,若不存在,写入“汇总”工作表;

d. 将遍历后的‘汇总’工作表分别与其余工作表进行精确匹配,返回写入对应的数据列,同时与将返回的数据列与标准值作比对,并分别以不同的符号标注;

e. 处理后的result.xlsx保存到指定文件夹;

(3)数据可视化展示:选定‘汇总表’的关键属性,自动完成对应数据的可视化,可视化分析规定周期内每条线路线损值的不平衡率、合格数、不合格数,按母线名称对统计后的数据可视化展示。

以国网河南省电力公司漯河供电公司为例,按照顺序将数据源自动获取和报表自动生成模块加入任务定点自启动中,设置早上八点自启动数据源自动获取模块,将数据源下载到报表自动生成模块所在目录内,设置早上八点十分自启动报表自动生成模块,完成报表的自动比对与生成,全程自动完成,操作步骤如下:

(1)数据源自动获取

参见图4,分析请求访问页面的URL,请求方式(Request Method,get或post),内容类型(content type),cookie,以及常见网页元素如文本框、密码框、按钮、悬浮菜单、iFrame、下拉框、链接、复选框、表格的位置与属性,完成对应网页元素的点击、输入与测试,获取数据结果参见图5,自动将对应日期的调度线损母平数据以单个excel存储在固定的某个目录下,以便第二步‘数据报表自动生成’做铺垫;

(2)报表自动生成,参见图2,a. 批量完成单个excel文件的自动合并与命名,即将同一文件夹下的多个excel文件合并到一个文件的不同工作表中;

b. 撰写合适的正则表达式完成每个工作表中主键值字段(即母线名称)的模糊处理,并写入对应的工作表中;

c. 循环遍历各个工作表,获取所有主键值,并写入‘汇总’工作表;

参见图3,所述获取所有主键值包括以下步骤:

第一个工作表为“汇总”工作表,复制第二工作表的主键值至“汇总”工作表,遍历下一工作表,若存在,遍历下一工作表,若不存在,写入“汇总”工作表;

d. 将遍历后的‘汇总’工作表分别与其余工作表进行精确匹配,返回写入对应的数据列,同时与将返回的数据列与标准值作比对,并分别以不同的符号标注;

实现结果参见“汇总”工作表1-1,1-2.1-3,表1-2.1-3 为表1-1的续表,“汇总”工作表由201904、201905、201906、201907、20190804、20190805、20190806、20190807、20191101、20191102、20191103工作表组成,以11个调控母平excel为例(每个excel行数不一致、且行主属性的汇总数量不等于漯河线路总量),sheet2-12为单个excel名称,且相应的数据已复制其中;‘母线名称’为主属性名(唯一标识),‘模糊比对象’为经模糊匹配处理后的属性,用于下一步vlookup精确匹配返回‘不平衡率’做准备;返回的‘不平衡率’分别写在以不同excel命名的属性列中,后缀有*表示比正常范围最大值还大的值,后缀有#表示比正常范围最小值还小的值,对于每日线路的每一日期,都会在其后增加一列‘是否标准’属性列,用以判断返回值是否合格(在合格阈值范围内);

表1-1 “汇总”工作表之一

Figure DEST_PATH_IMAGE001

表1-2 “汇总”工作表之二

表1-3 “汇总”工作表之三

Figure DEST_PATH_IMAGE003

e. 处理后的result.xlsx保存到指定文件夹;

其中,主键值字段的模糊处理查找匹配方式包括如下:

①模糊匹配策略1(近似匹配,主键值前几个字符(≥2)匹配即视为匹配成功)

②模糊匹配策略2(包含,工作表1主键值∈工作表2主键值)

③模糊匹配策略3(*匹配,包含除*外的字符即视为匹配成功)

④模糊匹配策略4(编写正则表达式+vlookup精确匹配)

⑤集成其他一些主流模糊匹配算法,如fuzzywuzzy、BK-Tree算法

⑥自定义特殊需求的匹配规则(预留接口,处理特殊需求);

(3)数据可视化展示:完成数据报表的合并汇总与判别后,为了从海量数据中更形象直观地表达数据、展示数据,需要用到数据可视化模块,通过图形化界面选择需绘图类型:如柱状图、饼状图、扇形图、仪表图、时间-趋势图、散点图等常用的数据可视化图例,结果参见图6-8。

图6中○代表合格‘不平衡率’的母线名称,×代表不合格‘不平衡率’的母线名称,向用户直观展示某天或某个月不同线路的不平衡率,给用户以大致印象(对照国网调控线损指标规定合格值范围,来确定是否合格)。

接着图7和图8以漯河大流站交流10kV母线线损数据一键自动处理为例,图7和图8配合的方式更精确统计对应合格与不合格母平信息,图7中虚线表示不平衡率范围,落在范围内的‘不平衡率’值为合格值,范围外的为不合格值,分别对应到图8中的“合格数”和“不合格数”图。

最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,本领域普通技术人员对本发明的技术方案所做的其他修改或者等同替换,只要不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于多模板的债权凭证生成方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!