一种报表数据导出方法技术

技术编号:14927704 阅读:217 留言:0更新日期:2017-03-30 19:30
本发明专利技术公开了一种报表数据导出方法,包括空间有限的数据缓存对依据筛选信息从本地数据库中查找出的报表数据按照时间倒序的方式进行读取,再对数据缓存中的报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理,得到分列报表数据,将分列报表数据保存至指定报表文件中,得到CSV文件,如果报表数据没有被全部读取完,则将上一次数据缓存中读取的报表数据中的最后一条记录对应的时间作为新的终止时间,则数据缓存继续对报表数据按照时间倒序的方式进行读取并进行后续处理,直至所有的报表数据均被保存为CSV文件,本发明专利技术能够将报表数据一次完整导出,且实现了CSV文件的自动分列,方便了用户的查看,提高了用户体验。本发明专利技术还公开了另一种报表数据到处方法。

【技术实现步骤摘要】

本专利技术涉及报表数据导出
,特别是涉及一种报表数据导出方法
技术介绍
现有技术中,通常将PcVue组态作为上位机,采用该组态中的本地数据库保存报表。原来查询报表数据并将报表数据导出到CSV文件时,数据创建的最大的缓存空间为128Kb,若查询时间段中的报表数据过大,则只能保存报表数据中的一部分,因此,用户如果想要保存大容量的报表数据只能分多次保存;另外,在本地数据库中逗点被视为分隔符,即查询到的报表数据不会含有逗号,以至于报表数据保存到CSV文件后,不能实现自动分列,不利于用户的查看,用户体验差。因此,如何提供一种能够将选中的报表数据完整导出且能够实现自动分列的报表数据导出方法是本领域技术人员目前需要解决的问题。
技术实现思路
本专利技术的目的是提供一种报表数据导出方法,能够将无论容量多大的报表数据均能够一次保存完,也即完整导出,且通过对报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理,实现了CSV文件的自动分列,方便了用户的查看,提高了用户体验;本专利技术的另一目的是提供另一种报表数据导出方法。为解决上述技术问题,本专利技术提供了一种报表数据导出方法,包括:步骤S101:依据筛选信息从本地数据库中查找出报表数据;步骤S102:依据所述筛选信息确定要保存的所述报表数据对应的起始时间和终止时间;步骤S103:设置报表保存标识;步骤S104:将所述报表数据按照时间倒序的方式读取至数据缓存中;步骤S105:判断所述数据缓存的空间是否已满,如果是,则进入步骤S106,否则,判断所述报表数据是否全部被读取,如果是,则进入步骤S106,否则,返回步骤S104;步骤S106:对所述数据缓存中的报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理,得到分列报表数据;步骤S107:将所述分列报表数据保存至指定报表文件中,得到CSV文件;步骤S108:判断所述报表数据是否被全部读取,如果是,则进入步骤S110,否则,进入步骤S109;步骤S109:将上一次所述数据缓存中读取的报表数据中的最后一条记录对应的时间作为新的终止时间,并返回步骤S104;步骤S110:结束对所述报表数据的导出。优选地,所述筛选信息包括所述起始时间、所述终止时间、所述报表数据对应的行、所述报表数据对应的设备、所述报表数据的类型、所述类型对应的记录描述和记录瞬时值,其中,所述类型包括报警、状态和指令。优选地,步骤S109和步骤S110之间还包括:恢复所述报表保存标识。优选地,步骤S106中,对所述数据缓存中的报表数据进行重复报表数据删除处理的过程具体为:将本次读取的报表数据与上一次读取的报表数据重合的部分删除,其中,重合部分的报表数据对应的时间为所述新的终止时间。优选地,步骤S106中,对所述数据缓存中的报表数据进行添加CSV文件分列标识处理的过程具体为:分别将所述数据缓存中的报表数据中的每一条记录分割为日期、时间、设备、类型、记录描述以及记录瞬时值六个分支;在所述六个分支中的任意两个分支间添加列分隔符,在最后一个分支后添加行分隔符,所有经过添加分隔符处理后的记录形成所述分列报表数据。为解决上述技术问题,本专利技术提供了另一种报表数据导出方法,包括:步骤S201:依据筛选信息从本地数据库中查找出报表数据;步骤S202:依据所述筛选信息确定要保存的所述报表数据对应的起始时间和终止时间;步骤S203:设置报表保存标识;步骤S204:将所述报表数据按照时间顺序的方式读取至数据缓存中;步骤S205:判断所述数据缓存的空间是否已满,如果是,则进入步骤S206,否则,判断所述报表数据是否全部被读取,如果是,则进入步骤S206,否则,返回步骤S204;步骤S206:对所述数据缓存中的报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理,得到分列报表数据;步骤S207:将所述分列报表数据保存至指定报表文件中,得到CSV文件;步骤S208:判断所述报表数据是否被全部读取,如果是,则进入步骤S210,否则,进入步骤S209;步骤S209:将上一次所述数据缓存中读取的报表数据中的最后一条记录对应的时间作为新的起始时间,并返回步骤S204;步骤S210:结束对所述报表数据的导出。优选地,所述筛选信息包括所述起始时间、所述终止时间、所述报表数据对应的行、所述报表数据对应的设备、所述报表数据的类型、所述类型对应的记录描述和记录瞬时值,其中,所述类型包括报警、状态和指令。优选地,步骤S209和步骤S210之间还包括:恢复所述报表保存标识。优选地,步骤S206中,对所述数据缓存中的报表数据进行重复报表数据删除处理的过程具体为:将本次读取的报表数据与上一次读取的报表数据重合的部分删除,其中,重合部分的报表数据对应的时间为所述新的起始时间。优选地,步骤S206中,对所述数据缓存中的报表数据进行添加CSV文件分列标识处理的过程具体为:分别将所述数据缓存中的报表数据中的每一条记录分割为日期、时间、设备、类型、记录描述以及记录瞬时值六个分支;在所述六个分支中的任意两个分支间添加列分隔符,在最后一个分支后添加行分隔符,所有经过添加分隔符处理后的记录形成所述分列报表数据。本专利技术提供了一种报表数据导出方法,该方法中,空间有限的数据缓存对依据筛选信息从本地数据库中查找出的报表数据按照时间倒序的方式进行读取,再对数据缓存中的报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理,得到分列报表数据,将分列报表数据保存至指定报表文件中,得到CSV文件,如果报表数据没有被全部读取完,则将上一次数据缓存中读取的报表数据中的最后一条记录对应的时间作为新的终止时间,则数据缓存继续对报表数据按照时间倒序的方式进行读取并进行后续处理,直至所有的报表数据均被保存为CSV文件,可见,本专利技术能够将无论容量多大的报表数据均能够一次保存完,也即完整导出,且通过对报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理,实现了CSV文件的自动分列,方便了用户的查看,提高了用户体验。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的一种报表数据导出方法的过程的流程图;图2为本专利技术提供的一种查找报表数据时的控件页面显示图;图3为本专利技术提供的一种依据筛选信息从本地数据库中查找出报表数据的过程的流程图;图4为本专利技术提供的一种对数据缓存中的报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理的过程的流程图;图5为本专利技术提供的另一种报表数据导出方法的过程的流程图本文档来自技高网...
一种报表数据导出方法

【技术保护点】
一种报表数据导出方法,其特征在于,包括:步骤S101:依据筛选信息从本地数据库中查找出报表数据;步骤S102:依据所述筛选信息确定要保存的所述报表数据对应的起始时间和终止时间;步骤S103:设置报表保存标识;步骤S104:将所述报表数据按照时间倒序的方式读取至数据缓存中;步骤S105:判断所述数据缓存的空间是否已满,如果是,则进入步骤S106,否则,判断所述报表数据是否全部被读取,如果是,则进入步骤S106,否则,返回步骤S104;步骤S106:对所述数据缓存中的报表数据进行重复报表数据删除处理以及添加CSV文件分列标识处理,得到分列报表数据;步骤S107:将所述分列报表数据保存至指定报表文件中,得到CSV文件;步骤S108:判断所述报表数据是否被全部读取,如果是,则进入步骤S110,否则,进入步骤S109;步骤S109:将上一次所述数据缓存中读取的报表数据中的最后一条记录对应的时间作为新的终止时间,并返回步骤S104;步骤S110:结束对所述报表数据的导出。

【技术特征摘要】
1.一种报表数据导出方法,其特征在于,包括:
步骤S101:依据筛选信息从本地数据库中查找出报表数据;
步骤S102:依据所述筛选信息确定要保存的所述报表数据对应的起始时
间和终止时间;
步骤S103:设置报表保存标识;
步骤S104:将所述报表数据按照时间倒序的方式读取至数据缓存中;
步骤S105:判断所述数据缓存的空间是否已满,如果是,则进入步骤S106,
否则,判断所述报表数据是否全部被读取,如果是,则进入步骤S106,否则,
返回步骤S104;
步骤S106:对所述数据缓存中的报表数据进行重复报表数据删除处理以
及添加CSV文件分列标识处理,得到分列报表数据;
步骤S107:将所述分列报表数据保存至指定报表文件中,得到CSV文件;
步骤S108:判断所述报表数据是否被全部读取,如果是,则进入步骤S110,
否则,进入步骤S109;
步骤S109:将上一次所述数据缓存中读取的报表数据中的最后一条记录
对应的时间作为新的终止时间,并返回步骤S104;
步骤S110:结束对所述报表数据的导出。
2.如权利要求1所述的报表数据导出方法,其特征在于,所述筛选信息
包括所述起始时间、所述终止时间、所述报表数据对应的行、所述报表数据对
应的设备、所述报表数据的类型、所述类型对应的记录描述和记录瞬时值,其
中,所述类型包括报警、状态和指令。
3.如权利要求1所述的报表数据导出方法,其特征在于,步骤S109和步
骤S110之间还包括:
恢复所述报表保存标识。
4.如权利要求1所述的报表数据导出方法,其特征在于,步骤S106中,
对所述数据缓存中的报表数据进行重复报表数据删除处理的过程具体为:
将本次读取的报表数据与上一次读取的报表数据重合的部分删除,其中,
重合部分的报表数据对应的时间为所述新的终止时间。
5.如权利要求4所述的报表数据导出方法,其特征在于,步骤S106中,
对所述数据缓存中的报表数据进行添加CSV文件分列标识处理的过程具体为:
分别将所述数据缓存中的报表数据中的每一条记录分割为日期、时间、设
备、类型、记录描述以及记录瞬时值六个分支;
在所述六个分支中的任意两个分支间添加列分隔符,在最后一个分支后添
加行分隔符,所有经过添加分隔符处理后的记录形成所述分列报表数据。
...

【专利技术属性】
技术研发人员:刘先振徐光建马乾
申请(专利权)人:重庆川仪自动化股份有限公司
类型:发明
国别省市:重庆;50

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1