【技术实现步骤摘要】
一种实现多层级表头多类型数据结构的excel电子表格数据导入导出方法
[0001]本专利技术涉及业务数据的自动化采集、存储及输出
,尤其涉及一种实现多层级表头多类型数据结构的excel电子表格数据导入导出方法。
技术介绍
[0002]生产采集的数据类型复杂,有时间戳、数值型、文本等多种数据格式,数据结构层级多样,存在分组、分类等多种组合结构,通常采用EXCEL电子表格实现与Oracle、DB2、sqlServer、Access、Sybase、MySQL等主流数据库的数据转换。传统的数据转换方法是手动将EXCEL报表中的原始数据格式转换为常规字符串类型,导入生产业务数据库,导出单一的表格结构,这种方式的缺陷是:生产第一手数据,需要人工将格式转换为常规格式,耗时耗力、效率低,电子表格自带的计算功能将丢失,导出表格结构简单、样式丢失。
技术实现思路
[0003]本专利技术的目的在于提供一种多层级表头多类型数据结构的excel电子表格数据导入导出方法,从而解决现有技术中存在的前述问题。
[0004]为了实现上述目的,本专利技术采用的技术方案如下:
[0005]一种多层级表头多类型数据结构的excel电子表格数据导入导出方法,通过JSON数据结构对象与excel的单元格sheet对象的解析编码实现excel电子表格数据与关系型数据库之间的数据导入导出;其中包括,
[0006]A、表格表头的树形层级数据结构的解析:与数据column对象结构对应,实现header表头sheet对象的构 ...
【技术保护点】
【技术特征摘要】
1.一种实现多层级表头多类型数据结构的excel电子表格数据导入导出方法:通过JSON数据结构对象与excel的单元格sheet对象的解析编码实现excel电子表格数据与关系型数据库之间的数据导入导出;其中包括,A、表格表头的树形层级数据结构的解析:与数据column对象结构对应,实现header表头sheet对象的构建;B、表格column列的数据类型对象的解析:excel电子表格中数据导入关系型数据库时,数据对应执行字符串格式转换方法、时间戳转换方法和数值型数据转换方法;关系型数据库中数据导出为excel电子表格时,数据对应执行字符串格式转化方法、日期格式转化方法和数值型数据格式转化方法;C、表格单元格格式的解析:纯JS写法,扩展读取和写入.xlsx工作簿的单元格格式;单元格关联的数字格式字符串采用标准的Sheet对象属性,计算并构建输出的数据对象结构。2.根据权利要求1所述的实现多层级表头多类型数据结构的excel电子表格数据导入导出方法,其特征在于:表格表头的树形层级数据结构的解析包括如下过程,A1、定制标准的复杂表头的JSON数据结构,定义多层级column1,column2、
…
、columnN表格列元素对象,其基础属性包括字段、标题、宽度、类型、数值类型、格式类型和子节点;A2、采用表格JSON结构型数据的逐层遍历解析方法,通过columns对象、索引、层级、表头节点对象,计算单元格对象;单元格对象包括所属行、所属列、属性、标题、表单标签、排列序号、类型、数据类型;A3、递归执行A2,计算出整个表头节点的单元格对象的数组集合,构建出复杂多层级表头结构;A4、通过行数据、列数据对象的过滤,实现表头单元格格式的计算;A5、取表头最大列数、最大层级,循环执行fromCharCode方法,将ASCI I码值转为对应的字符,计算表头填充区域。3.根据权利要求1所述的实现多层级表头多类型数据结构的excel电子表格数据导入导出方法,其特征在于:字符串格式转换方法为:定制键值匹配数据集合[{key1,value1},{key2,value2},
…
{keyn,valuen}],利用setRuleData函数,匹配列属性,通过键值与有效值一一对应,将列文本格式转为编码值;执行导入数据格式化方法setImportTableData,通过键值映射,实现汉字转编码的数据导入;时间戳转换方法为:类型为date、datetime的数据,采用日期格式化formatDate函数转换为日期及日期时间格式,再调用format函数转换为与dataformat匹配的日期格式;类型为time的数据,执行formatTimes函数,转换为HH:mm:ss样式的时间字符串;数值型数据转换方法为:Excel单元格为数值型的数据,显示格式,按精度转换为Number类型实现数据导入。4.根据权利要求1所述的实现多层级表头多类型数据结构的excel电子表格数据导入导出方法,其特征在于:字符串...
【专利技术属性】
技术研发人员:杨莉锋,刘岩,
申请(专利权)人:红有软件股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。