一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于WPS加载项的EXCEL数据导入方法与流程

2022-10-26 06:53:35 来源:中国专利 TAG:

一种基于wps加载项的excel数据导入方法
技术领域
1.本发明属于数据处理技术领域,具体涉及一种基于wps加载项的excel数据导入方法。


背景技术:

2.在当前的信息化应用系统中,数据导入导出是比较常见的操作。目前主流导入方式是上传excel文件、读取excel数据、处理excel数据、最终将数据写入系统。这种导入方式存在如下问题:一、通常用户要在特定excel模板中填写数据,填写模板数据时往往需要从别的excel文件中复制数据,容易出现数据转换错误、格式不匹配等问题;二、后端读取excel数据要使用第三方组件,这类组件通常需付费,开源组件性能或维护等存在一定局限,自研组件维护成本更高;三、当数据量大时读取excel会占用大量应用服务器内存,容易造成服务器卡顿、影响应用系统使用。
3.为了克服现有技术的不足,本发明提出了一种基于wps加载项的excel数据导入方法。 wps加载项是一套基于web技术用来扩展wps应用程序的解决方案,wps加载项打开的网页可以直接与wps应用程序进行交互,相互之间可以进行数据共享。通过这种方式,用户打开excel文件,有限配置后即可将数据上传,无需再上传excel文件,服务后端按照常规方法开发接口用来接收数据即可,大大提升了用户便利及开发维护难度。


技术实现要素:

4.本发明要解决的技术问题是:提供一种基于wps加载项的excel数据导入方法,以至少解决上述部分技术问题。
5.为实现上述目的,本发明采用的技术方案如下:一种基于wps加载项的excel数据导入方法,包括以下步骤:步骤s1、将数据上传接口名称、数据上传接口地址和数据上传接口中每个字段名称和描述写入数据上传接口文档中;步骤s2、设置数据上传的加载项,采用wps加载项自动加载;步骤s3、设置wps加载项的上传参数,调用本地接口储存上传参数;步骤s4、将上传数据存储于excel文件中,由数据上传接口文档对上传数据添加相对应的字段名称;步骤s5、由api接口读取上传数据;步骤s6、调用数据上传接口,上传数据。
6.进一步地,所述步骤s4包括:读取数据上传接口文档,找到与上传数据相匹配的数据上传接口,根据数据上传接口中的描述得到相对应的字段名称,将该字段名称添加于上传数据上,直至所有上传数据添加完毕。
7.进一步地,所述字段名称添加为:上传数据在excel文件中按列分类,在上传数据的第一行前新增空白行为字段行,在上传数据对应列字段行的空白单元格添加字段名称。
8.进一步地,所述步骤s5包括:步骤s51、指定字段行的行号、列号范围,申明一个空的第一js对象用于保存指定列与列对应字段名称的关系,调用rows对象读取每一行、调用cells对象读取每一列,对存在数据的列的第一js对象追加属性,第一js对象的属性名称是列号、值是该列的字段名称;步骤s52、指定上传数据的行号范围,申明一个js数组用于保存所有指定行号范围的数据;步骤s53、调用rows对象读取步骤s52的每一行,申明一个空的第二js对象用于保存行的内容,调用cells对象读取该行每一列,第二js对象的属性名称是列号、属性是从步骤s51的第一js对象中获取的字段名称、值为该列的值,直至所有列读取完毕,并将第二js对象追加到步骤s52的js数组中;步骤s54、重复步骤s53直至用户指定所有行读取完成。
9.进一步地,所述上传参数至少包括数据上传接口名称、url地址和http请求头。
10.进一步地,所述步骤s6包括:用户选择所需的数据上传接口,读取该数据上传接口内的参数,设置http组件、url地址、请求方式和请求头,调用数据上传接口,上传数据。
11.进一步地,上传数据方式包括逐行上传、批量上传、全部上传;如采用逐行上传,则循环执行,调用数据上传接口依次将数据上传;如采用批量上传,指定单次上传数据的数量,则循环执行,依次截取用户指定数量的数据上传;如选择全部上传,则调用数据上传接口,将全部数据一次性上传。
12.进一步地,所述步骤s2为:创建批处理文件并运行,设置加载参数值使启动wps软件时wps加载项自动加载并显示于wps软件打开界面的导航菜单上。进一步地,所述步骤s3为:设置wps加载项的上传参数,调用wps软件提供的filesystem接口,将上传参数写入本地文件中。与现有技术相比,本发明具有以下有益效果:本发明基于wps软件二次扩展开发的wps加载项,克服当前主流excel上传方式的诸多不足。第一,用户无需下载、填写模板文件,避免了excel模板复制内容出错的情况,用户可以在任意excel准备数据,不需要上传到应用服务器,仅需wps加载项并参照接口描述文档并以字段关联行即可,操作更灵活简单;第二、wps 加载项基于使用前端开发技术的nodejs,使用wps软件提供的api接口读取excel内容,能最大限度减少格式匹配、转换等问题,使得开发更快速、更轻量化;第三、应用后端只需按照常规接口开发的方式开发接口,提供清晰简洁的接口信息描述文档,使开发者更关注于业务开发。
附图说明
13.图1为本发明方法流程图。
具体实施方式
14.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进一步详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
15.在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位或
者以特定的方位构造和操作,因此其不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
16.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;当然的,还可以是机械连接,也可以是电连接;另外的,还可以是直接相连,也可以是通过中间媒介间接相连,或者可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
17.术语说明:excel为一款微软公司的办公软件;wps为一款办公软件套装;api为应用程序接口;powershell为一种命令行外壳程序和脚本环境;oem.ini为wps软件种的一个文件;jsapiplugin、jspluginsserver为oem.ini文件中的两个参数;filesystem为访问和操作文件;xml为可扩展标记语言;url为统一资源定位系统;http为超文本传输协议;js全称为javascript,是一种脚本语言;rows、cells为wps软件提供的api;nodejs为运行于服务端的javascript解释器。
18.现有技术中,几乎都是需要上传数据载体excel文件,暂时没有只上传数据而不上传excel文件的方法。由上传excel文件通常需要模板,用户向模板复制内容容易出现格式转换、数据转换等错误;大数据量的excel文件具有读取性能差、组件授权难、自研组件维护成本高技术问题等。
19.为此,本发明提供了一种基于wps加载项的excel数据导入方法,如图1所示,包括以下步骤:步骤s1、将数据上传接口名称、数据上传接口地址和数据上传接口中每个字段名称和描述写入数据上传接口文档中;步骤s2、设置数据上传的加载项,采用wps加载项自动加载;步骤s3、设置wps加载项的上传参数,调用本地接口储存上传参数;步骤s4、将上传数据存储于excel文件中,由数据上传接口文档对上传数据添加相对应的字段名称;步骤s5、由api接口读取上传数据;步骤s6、调用数据上传接口,上传数据。
20.本发明所述的数据上传接口文档,用于数据上传接口名称、数据上传接口地址和数据上传接口中每个字段名称和描述的写入,以此构建数据、字段名称和上传接口的联系,简化上传流程,避免中间流程转化造成了错误。数据上传接口文档由开发人员操作并提供给用户。
21.本发明基于wps软件二次扩展开发的wps加载项,用于数据上传启动,具备快速开发、轻量化、跨平台等优点。为方便wps加载项的使用,本发明通过设置实现wps加载项的自动加载,如此用户启动wps软件时,wps加载项即可自动加载并显示于wps软件打开界面的导航菜单上。wps加载项自动加载的设置具体为:创建批处理文件或powershell脚本并运行,设置加载参数值,所述加载参数为wps软件目录下oem.ini文件中jsapiplugin、jspluginsserver参数。所述加载参数值的设置具体为:修改wps软件安装目录下的oem.ini文件,设定jsapiplugin为true,jspluginsserver为加载项的配置url,true表示启用wps的加载项功能,加载项的配置url对应一个配置各个加载项信息的xml文件,该xml文件至少包含有加载项的名称、类型和下载地址。
22.本发明所述步骤s3为:设置wps加载项的上传参数,调用wps软件提供的filesystem接口,将上传参数写入本地文件中,加载wps加载项时将加载这些参数,并实现一次设置多次使用。所述上传参数至少包括数据上传接口名称、url地址和http请求头。
23.本发明所述步骤s4为:读取数据上传接口文档,找到与上传数据相匹配的数据上传接口,根据数据上传接口中的描述得到相对应的字段名称,将该字段名称添加于上传数据上,直至所有上传数据添加完毕。其中,所述字段名称添加为:上传数据在excel文件中按列分类,在上传数据的第一行前新增空白行为字段行,在上传数据对应列字段行的空白单元格添加字段名称,无需上传其他列数据对应列空白行的单元格留空。例如,上传商品信息数据,该商品信息的excel文件中的第一列代表商品名称,阅读数据上传接口的字段文档,找到商品上传接口,阅读字段信息部分,找到代表商品名称的字段名称goodsname,则在字段行第一列的单元格填入goodsname,如此直到所有要上传的字段全部设置完毕。
24.本发明所述步骤s5包括:步骤s51、指定字段行的行号、列号范围,申明一个空的第一js对象用于保存指定列与列对应字段名称的关系,调用rows对象读取每一行、调用cells对象读取每一列,对存在数据的列的第一js对象追加属性,第一js对象的属性名称是列号、值是该列的字段名称;步骤s52、指定上传数据的行号范围,申明一个js数组用于保存所有指定行的数据;步骤s53、调用rows对象读取步骤s52的每一行,申明一个空的第二js对象用于保存该行的内容,调用cells对象读取该行每一列,第二js对象的属性名称是列号、属性是从步骤s51的第一js对象中获取的字段名称、值为该列的值,直至所有列读取完毕,并将第二js对象追加到步骤s52的js数组中;步骤s54、重复步骤s53直至用户指定所有行读取完成。所述rows对象为wps软件提供的api,表示表格行的集合;所述cells对象为wps软件提供的api,表示表格列的集合。
25.本发明所述步骤s6包括:用户选择所需的数据上传接口,读取该数据上传接口内的参数,设置http组件、url地址、请求方式和请求头,调用数据上传接口,上传数据。若上传数据采用逐行上传,则循环执行,调用数据上传接口依次将数据上传;若批量上传,指定单次上传数据的数量,则循环执行,依次截取用户指定数量的数据上传;若全部上传,则调用数据上传接口,将全部数据一次性上传。
26.最后应说明的是:以上各实施例仅仅为本发明的较优实施例用以说明本发明的技术方案,而非对其限制,当然更不是限制本发明的专利范围;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或
者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围;也就是说,但凡在本发明的主体设计思想和精神上作出的毫无实质意义的改动或润色,其所解决的技术问题仍然与本发明一致的,均应当包含在本发明的保护范围之内;另外,将本发明的技术方案直接或间接的运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献