CN106372082A - 一种单文件多表单数据自动入库的方法和*** - Google Patents
一种单文件多表单数据自动入库的方法和*** Download PDFInfo
- Publication number
- CN106372082A CN106372082A CN201510434935.5A CN201510434935A CN106372082A CN 106372082 A CN106372082 A CN 106372082A CN 201510434935 A CN201510434935 A CN 201510434935A CN 106372082 A CN106372082 A CN 106372082A
- Authority
- CN
- China
- Prior art keywords
- data
- form data
- monofile
- datas
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种单文件多表单数据自动入库的方法和***,涉及计算机软件***应用开发领域。本发明实施例提供的技术方案,基于面对单文件多表单的数据入库的需求,借鉴了信息技术中的并发思想,提出了对单文件多表单入库的单次访问,批量响应,并发入库的方法。在实际的项目应用中该方法切实有效的节省了开发时间、提高了开发效率。并且实现了对复杂表、多页表与用户业务用表的快速采集。
Description
技术领域
本发明涉及计算机软件***应用开发领域,尤其涉及一种单文件多表单数据自动入库的方法和***。
背景技术
B/S架构是当前各行业应用***采用的主要技术架构之一,随着计算机硬件性能的不断提升,对信息呈现效果的需求也不断提高;Si lverl ight作为微软.net开发环境下的一个组件,能提供丰富多彩的展示效果,已被诸多行业采用。信息***的应用有效提升了数据的价值,进而衍生出异构数据、海量数据、大数据等领域的研究;结构化数据能直接建立各种关联关系,能深度探索和挖掘数据价值,多以报表的方式存储在关系型数据库中,并以此提供各种直观的图形展现模式。
当前报表数据入库方式多采用界面录入或单表导入的方式,很大程度满足了数据入库的需要;但是,对于习惯用office软件excel作为报表载体的用户在将表单数据入库时就遇到了新问题,如某行业的业务主管需将过去一个月的数据入库,而这一个月的数据表单不是单个表单形式存在,而是一个excel文件多表格(sheet)的方式存在于其工作电脑上,如何将该单文件多表单数据自动入库便是该业务主管迫切需要知悉的内容,按当前主要的存储技术,需拆分成若干单表单再入库或者通过数据库的存储对单文件各表单每个字段予以访问、确认再入库,工作量不仅繁杂,而且效率还比较低下。
发明内容
本发明的目的在于提供一种单文件多表单数据自动入库的方法和***,从而解决现有技术中存在的前述问题。
为了实现上述目的,本发明采用的技术方案如下:
一种单文件多表单数据自动入库的方法,包括如下步骤:
S1,在客户端采集待入库文件的表单数据,并为每个表单编号;
S2,判断所述待入库文件的表单数据是否为多页提交,如果是,则执行S3,否则,按照单页提交;
S3,将所有表单异步并发至服务端;
S4,在服务端,按照表单编号,查询对应的数据库中存储的模板,并判断表单结构与数据库中存储的模板结构是否匹配,如果是,则将表单数据存入对应的模板中,否则,返回存储失败的信息。
进一步地,S1之前,还包括步骤:定制模板,并将定制模板编号后存入数据库中;则S1中,所述在客户端采集待入库文件的表单数据,在客户端使用定制模板采集待入库文件的表单数据。
进一步地,S2和S3之间还包括步骤:对所述待入库文件的表单数据进行一次质检,如果质检结果为表单数据符合数据要求,则提交表单,否则,返回数据错误信息。
优选地,所述一次质检采用抽取相应字段的质检规则。
优选地,所述表单数据符合数据要求,采用如下方法进行判断:
表单数据类型是否与定制模板设定的数据类型一致,如果是,则表单数据符合数据要求,否则,不符合。
进一步地,S4中,所述如果是,则将表单数据存入对应的模板中之前还包括步骤:对表单数据进行二次质检,如果质检结果为表单数据符合数据要求,则将表单数据存入对应的模板中,否则,返回数据错误信息。
优选地,所述二次质检采用封装质检规则。
优选地,所述表单数据符合数据要求,采用如下方法进行判断:
表单数据的主键是否非空、主键是否唯一,字段的类型、长度与定制模板的设定是否一致,如果表单数据的主键非空且唯一并且字段类型、长度与定制模板的设定一致,则表单数据符合数据要求,否则,不符合。
一种单文件多表单数据自动入库的***,包括:
客户端:用于采集待入库文件的表单数据;还用于为表单编号,还用于将表单提交至服务端;
服务端:用于判断所述待入库文件的表单数据是否为多页提交,还用于按照表单编号,查询对应的数据库中存储的模板,并判断表单结构与数据库中存储的模板结构是否匹配,还用于将表单数据存入对应的模板中。
优选地,所述服务端还用于存储定制模板,所述客户端用于使用定制模板采集待入库文件的表单数据。
本发明的有益效果是:本发明实施例提供的单文件多表单数据自动入库的方法和***,基于面对单文件多表单的数据入库的需求,借鉴了信息技术中的并发思想,提出了对单文件多表单入库的单次访问,批量响应,并发入库的方法。在实际的项目应用中该方法切实有效的节省了开发时间、提高了开发效率。并且实现了对复杂表、多页表与用户业务用表的快速采集。
附图说明
图1是本发明实施例提供的单文件多表单数据自动入库的方法流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
实施例一
如图1所示,本发明实施例提供了一种单文件多表单数据自动入库的方法,包括如下步骤:
S1,在客户端采集待入库文件的表单数据,并为每个表单编号;
S2,判断所述待入库文件的表单数据是否为多页提交,如果是,则执行S3,否则,按照单页提交;
S3,将所有表单异步并发至服务端;
S4,在服务端,按照表单编号,查询对应的数据库中存储的模板,并判断表单结构与数据库中存储的模板结构是否匹配,如果是,则将表单数据存入对应的模板中,否则,返回存储失败的信息。
具体的实现过程为:
对于包括多个表单的单文件,采用本发明实施例提供的方法,可以进行单页提交,也可以进行多页提交。
如果是单页提交,则可以按照现有技术中的方法实现,即按照表单编号一页一页的提交。
如果用户选择多页提交,则***会调用异步并发程序,将多页表单同时递交至服务端。其中,异步并发程序可以采用现有的常规技术实现。
而在服务端的数据存储阶段,服务端需要根据表单编号,查询对应的数据库中存储的模板,并判断表单结构与数据库中存储的模板结构是否匹配,如果是,则将表单数据存入对应的模板中,否则,丢弃表单数据。从而实现在服务端的自动入库。
其中,表单编号与数据库中存储的模板是一一对应的,或者是一致的,但是由于在表单数据采集的过程中,用户可能自行改变了表单的格式或字段等,从而导致对应表单编号的表单数据与存储模板的格式不一致,则递交至服务端后,服务端需要对两者进行匹配,如果匹配一致,才能将表单数据存储在数据库的模板中,否则,将表单数据丢弃,或者可以返回存储失败的信息。
单文件多表单入库采用单次访问,批量响应,并发入库的方法。在实际的项目应用中该方法切实有效的节省了开发时间、提高了开发效率。并且实现了对复杂表、多页表与用户业务用表的快速采集。
本发明的一个实施例中,S1之前,还包括步骤:定制模板,并将定制模板编号后存入数据库中;则S1中,所述在客户端采集待入库文件的表单数据,在客户端使用定制模板采集待入库文件的表单数据。
为了使在客户端用于采集表单数据的模板与数据库中存储的模板一致,本实施例中,在开发阶段,就根据用户数据采集的需求定制模板,并将该模板存储在数据库中,以及发布在客户端的登录页面中,用于用户采集表单数据。
这样,就可以保证在客户端用于采集表单数据的模板与数据库中存储的模板一致,从而使表单数据的入库操作更加顺畅。
本发明实施例中,S2和S3之间还包括步骤:对所述待入库文件的表单数据进行一次质检,如果质检结果为表单数据符合数据要求,则提交表单,否则,返回数据错误信息。
为了使存储到数据库中的数据符合要求,为后续的使用提供数据支撑,本实施例中,需要对待递交的表单数据进行质量检查,只有符合要求的表单数据才能递交成功,否则,返回错误信息或者丢弃错误数据。
本实施例中,所述一次质检采用抽取相应字段的质检规则。
即对表单数据的字段进行抽检。这样,不仅可以提高质检的效率,也能够降低错检率。
本发明实施例中,所述表单数据符合数据要求,采用如下方法进行判断:
表单数据类型是否与定制模板设定的数据类型一致,如果是,则表单数据符合数据要求,否则,不符合。
例如,需填日期格式的单元格所填内容如果为字符,则提示该表单数据格式错误。
本发明实施例中,S4中,所述如果是,则将表单数据存入对应的模板中之前还包括步骤:对表单数据进行二次质检,如果质检结果为表单数据符合数据要求,则将表单数据存入对应的模板中,否则,返回数据错误信息。
为了进一步保证存储在数据库中的表单数据符合要求,本实施例中,在存储之前,对递交的表单进行二次质检。
所述二次质检采用封装质检规则。
具体为:
数据库存储过程依据表单对应的数据表判断表单数据的主键是否非空、主键是否唯一;字段的类型、长度是否符合数据表要求。如主键为空,则返回主键为空的错误提示,如主键重复,则提示主键已存在错误提示;如字段类型、长度不符合要求,则返回表单数据格式错误。
其中,所述表单数据符合数据要求,采用如下方法进行判断:
表单数据的主键是否非空、主键是否唯一,字段的类型、长度与定制模板的设定是否一致,如果表单数据的主键非空且唯一并且字段类型、长度与定制模板的设定一致,则表单数据符合数据要求,否则,不符合。
实施例二
本发明实施例提供了一种单文件多表单数据自动入库的***,包括:
客户端:用于采集待入库文件的表单数据;还用于为表单编号,还用于将表单提交至服务端;
服务端:用于判断所述待入库文件的表单数据是否为多页提交,还用于按照表单编号,查询对应的数据库中存储的模板,并判断表单结构与数据库中存储的模板结构是否匹配,还用于将表单数据存入对应的模板中。
上述***的工作过程可参见实施例一中的描述,在此不再详述。
本发明实施例中,所述服务端还用于存储定制模板,所述客户端用于使用定制模板采集待入库文件的表单数据。
上述结构的工作过程和功能可参见实施例一中的相关描述,在此不再赘述。
通过采用本发明公开的上述技术方案,得到了如下有益的效果:本发明实施例提供的单文件多表单数据自动入库的方法和***,基于面对单文件多表单的数据入库的需求,借鉴了信息技术中的并发思想,提出了对单文件多表单入库的单次访问,批量响应,并发入库的方法。在实际的项目应用中该方法切实有效的节省了开发时间、提高了开发效率。并且实现了对复杂表、多页表与用户业务用表的快速采集。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域人员应该理解的是,上述实施例提供的方法步骤的时序可根据实际情况进行适应性调整,也可根据实际情况并发进行。
上述实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,例如:个人计算机、服务器、网络设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,例如:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (10)
1.一种单文件多表单数据自动入库的方法,其特征在于,包括如下步骤:
S1,在客户端采集待入库文件的表单数据,并为每个表单编号;
S2,判断所述待入库文件的表单数据是否为多页提交,如果是,则执行S3,否则,按照单页提交;
S3,将所有表单异步并发至服务端;
S4,在服务端,按照表单编号,查询对应的数据库中存储的模板,并判断表单结构与数据库中存储的模板结构是否匹配,如果是,则将表单数据存入对应的模板中,否则,返回存储失败的信息。
2.根据权利要求1所述的单文件多表单数据自动入库的方法,其特征在于,S1之前,还包括步骤:定制模板,并将定制模板编号后存入数据库中;则S1中,所述在客户端采集待入库文件的表单数据,在客户端使用定制模板采集待入库文件的表单数据。
3.根据权利要求2所述的单文件多表单数据自动入库的方法,其特征在于,S2和S3之间还包括步骤:对所述待入库文件的表单数据进行一次质检,如果质检结果为表单数据符合数据要求,则提交表单,否则,返回数据错误信息。
4.根据权利要求3所述的单文件多表单数据自动入库的方法,其特征在于,所述一次质检采用抽取相应字段的质检规则。
5.根据权利要求3所述的单文件多表单数据自动入库的方法,其特征在于,所述表单数据符合数据要求,采用如下方法进行判断:
表单数据类型是否与定制模板设定的数据类型一致,如果是,则表单数据符合数据要求,否则,不符合。
6.根据权利要求2所述的单文件多表单数据自动入库的方法,其特征在于,S4中,所述如果是,则将表单数据存入对应的模板中之前还包括步骤:对表单数据进行二次质检,如果质检结果为表单数据符合数据要求,则将表单数据存入对应的模板中,否则,返回数据错误信息。
7.根据权利要求6所述的单文件多表单数据自动入库的方法,其特征在于,所述二次质检采用封装质检规则。
8.根据权利要求6所述的单文件多表单数据自动入库的方法,其特征在于,所述表单数据符合数据要求,采用如下方法进行判断:
表单数据的主键是否非空、主键是否唯一,字段的类型、长度与定制模板的设定是否一致,如果表单数据的主键非空且唯一并且字段类型、长度与定制模板的设定一致,则表单数据符合数据要求,否则,不符合。
9.一种单文件多表单数据自动入库的***,其特征在于,包括:
客户端:用于采集待入库文件的表单数据;还用于为表单编号,还用于将表单提交至服务端;
服务端:用于判断所述待入库文件的表单数据是否为多页提交,还用于按照表单编号,查询对应的数据库中存储的模板,并判断表单结构与数据库中存储的模板结构是否匹配,还用于将表单数据存入对应的模板中。
10.根据权利要求9所述的单文件多表单数据自动入库的***,其特征在于,所述服务端还用于存储定制模板,所述客户端用于使用定制模板采集待入库文件的表单数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510434935.5A CN106372082A (zh) | 2015-07-22 | 2015-07-22 | 一种单文件多表单数据自动入库的方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510434935.5A CN106372082A (zh) | 2015-07-22 | 2015-07-22 | 一种单文件多表单数据自动入库的方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106372082A true CN106372082A (zh) | 2017-02-01 |
Family
ID=57879702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510434935.5A Pending CN106372082A (zh) | 2015-07-22 | 2015-07-22 | 一种单文件多表单数据自动入库的方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106372082A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018177275A1 (zh) * | 2017-03-27 | 2018-10-04 | 北京国双科技有限公司 | 一种多数据源用户信息整合方法和装置 |
CN109257407A (zh) * | 2018-01-23 | 2019-01-22 | 苏州帮选信息技术有限公司 | 工业零件数据的批量上传方法及*** |
CN110442766A (zh) * | 2019-07-11 | 2019-11-12 | 新华三大数据技术有限公司 | 网页数据采集方法、装置、设备及存储介质 |
CN110769024A (zh) * | 2019-08-26 | 2020-02-07 | 计算力(江苏)智能技术有限公司 | 电子测试数据的同步存储方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101866364A (zh) * | 2010-06-22 | 2010-10-20 | 用友软件股份有限公司 | 数据导入方法和装置 |
CN102609483A (zh) * | 2012-01-19 | 2012-07-25 | 北京神州数码思特奇信息技术股份有限公司 | 一种基于配置方式的Excel通用导入方法 |
CN102841784A (zh) * | 2011-06-24 | 2012-12-26 | 镇江华扬信息科技有限公司 | 一种Excel数据动态导入数据库的方法 |
CN103020089A (zh) * | 2011-09-27 | 2013-04-03 | 深圳市金蝶友商电子商务服务有限公司 | 一种将excel文件中的数据导入数据库的方法及装置 |
CN103246651A (zh) * | 2012-02-02 | 2013-08-14 | 金蝶软件(中国)有限公司 | 一种数据导入方法及*** |
CN103970736A (zh) * | 2013-01-25 | 2014-08-06 | 苏州精易会信息技术有限公司 | 一种将Excel表格转换成数据库表的方法 |
-
2015
- 2015-07-22 CN CN201510434935.5A patent/CN106372082A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101866364A (zh) * | 2010-06-22 | 2010-10-20 | 用友软件股份有限公司 | 数据导入方法和装置 |
CN102841784A (zh) * | 2011-06-24 | 2012-12-26 | 镇江华扬信息科技有限公司 | 一种Excel数据动态导入数据库的方法 |
CN103020089A (zh) * | 2011-09-27 | 2013-04-03 | 深圳市金蝶友商电子商务服务有限公司 | 一种将excel文件中的数据导入数据库的方法及装置 |
CN102609483A (zh) * | 2012-01-19 | 2012-07-25 | 北京神州数码思特奇信息技术股份有限公司 | 一种基于配置方式的Excel通用导入方法 |
CN103246651A (zh) * | 2012-02-02 | 2013-08-14 | 金蝶软件(中国)有限公司 | 一种数据导入方法及*** |
CN103970736A (zh) * | 2013-01-25 | 2014-08-06 | 苏州精易会信息技术有限公司 | 一种将Excel表格转换成数据库表的方法 |
Non-Patent Citations (1)
Title |
---|
北京鹏: "使用线程池读excel中的多个SHEET", 《HTTPS://BLOG.CSDN.NET/QQ522935502/ARTICLE/DETAILS/8161349》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018177275A1 (zh) * | 2017-03-27 | 2018-10-04 | 北京国双科技有限公司 | 一种多数据源用户信息整合方法和装置 |
CN108664480A (zh) * | 2017-03-27 | 2018-10-16 | 北京国双科技有限公司 | 一种多数据源用户信息整合方法和装置 |
CN108664480B (zh) * | 2017-03-27 | 2020-02-11 | 北京国双科技有限公司 | 一种多数据源用户信息整合方法和装置 |
US11256683B2 (en) | 2017-03-27 | 2022-02-22 | Beijing Gridsum Technology Co., Ltd. | Method and apparatus for integrating multi-data source user information |
CN109257407A (zh) * | 2018-01-23 | 2019-01-22 | 苏州帮选信息技术有限公司 | 工业零件数据的批量上传方法及*** |
CN110442766A (zh) * | 2019-07-11 | 2019-11-12 | 新华三大数据技术有限公司 | 网页数据采集方法、装置、设备及存储介质 |
CN110769024A (zh) * | 2019-08-26 | 2020-02-07 | 计算力(江苏)智能技术有限公司 | 电子测试数据的同步存储方法及*** |
CN110769024B (zh) * | 2019-08-26 | 2022-12-06 | 计算力(江苏)智能技术有限公司 | 电子测试数据的同步存储方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11422853B2 (en) | Dynamic tree determination for data processing | |
US8738645B1 (en) | Parallel processing framework | |
CN103119588B (zh) | 用于预先呈现希望***响应的方法和装置 | |
CN104536904B (zh) | 一种数据管理的方法、设备与*** | |
CN106372082A (zh) | 一种单文件多表单数据自动入库的方法和*** | |
CN102662639A (zh) | 一种基于Mapreduce的多GPU协同计算方法 | |
CN102073697A (zh) | 一种数据处理方法及装置 | |
CN109408115A (zh) | 一种基于容器环境中迁移对象的方法及计算*** | |
CN103246549B (zh) | 一种数据转存的方法及*** | |
CN103699534B (zh) | ***目录中数据对象的显示方法及装置 | |
CN104239377A (zh) | 跨平台的数据检索方法及装置 | |
CN104809130A (zh) | 数据查询的方法、设备及*** | |
CN101093454A (zh) | 一种在分布式***中执行sql脚本文件的方法和装置 | |
CN104111936A (zh) | 数据查询方法和*** | |
CN103198097A (zh) | 一种基于分布式文件***的海量地学数据并行处理方法 | |
CN114328779A (zh) | 基于云计算高效检索浏览的地理信息云盘 | |
CN106055622A (zh) | 一种数据搜索方法及*** | |
CN105991478A (zh) | 服务器资源分配方法及其*** | |
EP2932391A1 (en) | Systems and methods for integrating storage usage information | |
CN108073696A (zh) | 基于分布式内存数据库的gis应用方法 | |
CN104333573A (zh) | 一种大并发量请求的处理方法及处理*** | |
CN104572505A (zh) | 一种保证海量数据缓存最终一致性的***及方法 | |
CN108287889A (zh) | 一种基于弹性表模型的多源异构数据存储方法和*** | |
JPH0668032A (ja) | データベースシステム | |
CN106656552A (zh) | 一种数据平台***的扩展方法、***及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170201 |