CN110516220B - 一种报表数据录入方法、***及相关设备 - Google Patents
一种报表数据录入方法、***及相关设备 Download PDFInfo
- Publication number
- CN110516220B CN110516220B CN201910804191.XA CN201910804191A CN110516220B CN 110516220 B CN110516220 B CN 110516220B CN 201910804191 A CN201910804191 A CN 201910804191A CN 110516220 B CN110516220 B CN 110516220B
- Authority
- CN
- China
- Prior art keywords
- column
- filled
- data
- character string
- cells
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000003491 array Methods 0.000 claims description 44
- 238000013479 data entry Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012905 input function Methods 0.000 abstract description 6
- 230000001960 triggered effect Effects 0.000 abstract description 6
- 230000010076 replication Effects 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008676 import Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明实施例公开了一种报表数据录入方法、***及相关设备,用于提高报表数据录入效率。本发明实施例中,在触发报表数据录入功能之后,报表数据录入***可以读取针对已有报表中第一区域复制操作生成的字符串缓存数据,并解析该字符串缓存数据,依次生成第一区域中各列单元格对应的缓存数组,最后以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,已有报表与目标报表的编辑软件类型不同,实现了不同类型的报表中的单元格数据的批量录入,无需逐一录入单元格,提高了报表数据录入效率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种报表数据录入方法、***及相关设备。
背景技术
计算机上的报表的主要特点是数据动态化,格式多样化,并且实现报表数据和报表格式的完全分离,用户可以只修改数据,或者只修改格式。常见的报表分类有EXCEL表格、久其报表、金蝶EAS报表等。
现有方式中不同类型的报表数据录入方式往往是人工逐项输入或复制粘贴,例如,在编辑合并报表的抵销分录时,若想要手动输入抵销分录中功能键或下拉框对应的目录中的内容,每次只能在一个单元格中输入数据。如果报表项目较多的情况下,需要花费大量人力及时间去录入项目数据,效率低下。
发明内容
本发明实施例提供了一种报表数据录入方法、***及相关设备,用于提高报表数据录入效率。
本发明实施例第一方面提供了一种报表数据录入方法,其特征在于,包括:
读取缓存区域复制操作生成的字符串缓存数据,所述字符串缓存数据是已有报表中被选中第一区域的各个单元格中的字符串按照预设存储格式复制生成;
根据所述预设存储格式解析所述字符串缓存数据,将归属于所述第一区域中同一列的字符串作为一组缓存数组,依次生成所述第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着所述第一区域中对应的列数的增加而增加;
获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型,所述已有报表与所述目标报表的编辑软件类型不同;
以所述待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,所述数据填充操作包括:从列序号最小的待填充单元格开始,按照各组缓存数组的序号增序依次读取一组所述缓存数组中的字符串数据作为当前一列待填充单元格的目标数据,并按照所述当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将所述目标数据填充至所述当前一列待填充单元格中。
可选的,作为一种可能的实施方式,本发明实施例中的,当所述已有报表为电子表格,所述缓存区域为粘贴板时,所述根据所述预设存储格式解析所述字符串缓存数据,包括:
遍历所述字符串缓存数据,根据单元格结束字符及每一行单元格结束之后的换行符识别所述字符串缓存数据中归属于所述已有报表中同一列的字符串。
可选的,作为一种可能的实施方式,本发明实施例中的报表数据录入方法还包括:
根据所述换行符的数量识别所述第一区域在所述已有报表中对应的行的数量;
若所述第一区域在所述已有报表中对应的行的数量大于所述待填充区域单元格的行数量,则适应增加所述待填充区域单元格的行数量。
可选的,作为一种可能的实施方式,本发明实施例中,所述目标报表待填充区域中各列待填充单元格的列坐标,包括:
接收框选指令,所述框选指令用于指示选中目标报表中的待填充区域,所述待填充区域中单元格行列坐标连续;
剔除所述待填充区域中锁定的一列或多列单元格对应的列坐标之后,将所述待填充区域剩余的单元格对应的列坐标作为各列待填充单元格的列坐标。
可选的,作为一种可能的实施方式,本发明实施例中,在所述将归属于所述第一区域中同一列的字符串作为一组缓存数组之前,所述方法还包括:
判断读取到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;
和/或,判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
本申请实施例还提供了一种报表数据录入***,其特征在于,包括:
读取单元,用于读取缓存区域复制操作生成的字符串缓存数据,所述字符串缓存数据是已有报表中被选中第一区域的各个单元格中的字符串按照预设存储格式复制生成;
解析单元,用于根据所述预设存储格式解析所述字符串缓存数据,将归属于所述第一区域中同一列的字符串作为一组缓存数组,依次生成所述第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着所述第一区域中对应的列数的增加而增加;
获取单元,用于获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型,所述已有报表与所述目标报表的编辑软件类型不同;
填充单元,用于以所述待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,所述数据填充操作包括:从列序号最小的待填充单元格开始,按照各组缓存数组的序号增序依次读取一组所述缓存数组中的字符串数据作为当前一列待填充单元格的目标数据,并按照所述当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将所述目标数据填充至所述当前一列待填充单元格中。
可选的,作为一种可能的实施方式,本发明实施例中的,当所述已有报表为电子表格,所述缓存区域为粘贴板时,所述解析单元包括:
遍历模块,用于遍历所述字符串缓存数据,根据单元格结束字符及每一行单元格结束之后的换行符识别所述字符串缓存数据中归属于所述已有报表中同一列的字符串,依次生成所述第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着所述第一区域中对应的列数的增加而增加。
可选的,作为一种可能的实施方式,本发明实施例中的报表数据录入***还包括:
识别单元,用于根据所述换行符的数量识别所述第一区域在所述已有报表中对应的行的数量;
调节单元,若所述第一区域在所述已有报表中对应的行的数量大于所述待填充区域单元格的行数量,则适应增加所述待填充区域单元格的行数量。
可选的,作为一种可能的实施方式,本发明实施例中的获取单元包括:
接收模块,接收框选指令,所述框选指令用于指示选中目标报表中的待填充区域,所述待填充区域中单元格行列坐标连续;
剔除模块,用于剔除所述待填充区域中锁定的一列或多列单元格对应的列坐标之后,将所述待填充区域剩余的单元格对应的列坐标作为各列待填充单元格的列坐标。
可选的,作为一种可能的实施方式,本发明实施例中的报表数据录入***还包括:
第一判断单元,用于判断读取到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;
第二判断单元,用于判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
本申请实施例第三方面提供了一种计算机装置,其特征在于,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如第一方面及第一方面中任意一项所述报表数据录入方法的步骤。
本申请实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如第一方面及第一方面中任意一项所述报表数据录入方法的步骤。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,在触发报表数据录入功能之后,报表数据录入***可以读取针对已有报表中第一区域复制操作生成的字符串缓存数据,并解析该字符串缓存数据,依次生成第一区域中各列单元格对应的缓存数组,最后以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,已有报表与目标报表的编辑软件类型不同,实现了不同类型报表中的单元格数据的批量录入,无需逐一录入单元格,提高了报表数据录入效率。
附图说明
图1为本发明实施例中一种报表数据录入方法的一个实施例示意图;
图2为本发明实施例中在Excel表格中复制操作生成预设格式的字符串缓存数据场景示意图;
图3为本发明实施例中字符串缓存数据解析流程示意图;
图4为本发明实施例中报表数据粘贴流程示意图;
图5为本发明实施例中EAS***报表中待录入区域示意图;
图6为本发明实施例中Excel表格中框选区域示意图;
图7为本发明实施例中一种报表数据录入***的一个实施例示意图;
图8为本发明实施例中一种计算机装置的一个实施例示意图。
具体实施方式
本发明实施例提供了一种报表数据录入方法、***及相关设备,用于提高报表数据录入效率。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于理解,下面对本发明实施例中的具体流程进行描述,请参阅图1,本发明实施例中一种报表数据录入方法的一个实施例可包括:
101、读取缓存区域复制操作生成的字符串缓存数据;
在触发报表数据录入功能之后,用户可以选择已有的报表,并在已有的报表中选中需要复制的第一区域,计算机操作***或者报表数据录入***会复制该第一区域的各个单元格中的填充数据,并按照预设存储格式生成此次复制操作对应的字符串缓存数据。在字符串缓存数据生成之后,报表数据录入***可以读取粘贴板中的字符串缓存数据。优选的,读取缓存区域最近一次复制操作生成的字符串缓存数据。
102、根据预设存储格式解析字符串缓存数据,将归属于第一区域中同一列的字符串作为一组缓存数组,依次生成第一区域中各列单元格对应的缓存数组;
本发明实施例中,报表数据录入***可以根据预设存储格式解析字符串缓存数据,将归属于第一区域中同一列的字符串作为一组缓存数组,依次生成第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着第一区域中对应的列数的增加而增加。
示例性的,请参阅图2,若用户选择的已有报表是Excel表格,缓存区域为操作***对应的粘贴板时,当用户在Excel表格中选中多行多列单元格时,每一个单元格的字符串之后会有一个单元格结束字符“\t”,每一行单元格字符串之后会有一个换行符“\n”。字符串缓存数据解析过程中,可以遍历字符串缓存数据,根据单元格结束字符“\t”及每一行单元格结束之后的换行符“\n”识别字符串缓存数据中归属于已有报表中同一列的字符串。
具体的,遍历字符串过程中,根据\t与\n判断,每遇到一个\t则列数加1,直到遇到\n再加1然后结束,此时\t的计数值便是列数,行数直接根据\n数量判断,进而识别字符串缓存数据中归属于已有报表中同一列的字符串。
可以理解的是,实际运用中,可以根据已有报表的软件类型确定单元格中的字符串对应的预设存储格式,并根据预设的存储格式适应性的解析字符串缓存数据,具体的预设存储格式此处不做限定。例如,当已有报表为Excel表格,缓存区域为粘贴板时,根据预设存储格式解析所述字符串缓存数据,包括:遍历所述字符串缓存数据,根据单元格结束字符(例如,Excel中单元格结束字符为“\t”)及每一行单元格结束之后的换行符(例如,Excel中换行符为“\n”)识别字符串缓存数据中归属于已有报表中同一列的字符串。
103、获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型;
本发明实施例中以列为单位进行数据填充,报表数据录入***可以根据用户的操作,获取目标报表待填充区域中各列待填充单元格的列坐标、待填充区域中行列坐标最小的单元格的行、列坐标。例如,报表数据录入***可以根据用户的框选操作目标报表被选中的待填充区域并识别各列待填充单元格的列坐标。报表数据录入***可以接收框选指令,框选指令用于指示选中目标报表中的待填充区域,待填充区域中单元格行列坐标连续;剔除待填充区域中锁定的一列或多列单元格对应的列坐标之后,将待填充区域剩余的单元格对应的列坐标作为各列待填充单元格的列坐标。报表数据录入***还可以在设置输入框接收用户输入的目标报表待填充区域中各列待填充单元格的列坐标,具体的获取方式此处不做限定。需要说明的是,优选的,本发明实施例中已有报表与所述目标报表的编辑软件类型不同,例如已有报表为Excel软件编辑的表格,目标报表可以为金蝶EAS***编辑的报表,具体的类型此处不做限定。
此外,报表每一列中可能对应不同类型的编辑控件,例如金蝶EAS***中的F7控件、下拉框控件、文本框控件等内嵌控件,不同的编辑控件对应不同的数据格式。为此还需要获取各列待填充单元格对应的编辑控件类型。在本发明实施例中,可以预先维护每列坐标与编辑控件的映射关系,在获取到列坐标之后可以根据映射关系获取到各列单元格的标记控件类型,或者直接从单元格对象的属性信息中读取各列单元格的标记控件类型,具体的获取方式此处不做限定。
104、以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作。
报表数据录入***以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作数据填充操作包括:从列序号最小的待填充单元格开始,按照各组缓存数组的序号增序依次读取一组缓存数组中的各行字符串数据作为当前一列待填充单元格的目标数据,并按照当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将目标数据填充至当前一列待填充单元格中。
本发明实施例中,在触发报表数据录入功能之后,报表数据录入***可以读取针对已有报表中第一区域复制操作生成的字符串缓存数据,并解析该字符串缓存数据,依次生成第一区域中各列单元格对应的缓存数组,最后以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,已有报表与目标报表的编辑软件类型不同,实现了不同类型报表中的单元格数据的批量录入,无需逐一录入单元格,提高了报表数据录入效率。
可以理解的是,在本发明的各种实施例中,上述各步骤的序号的大小并不意味着执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。例如步骤103可以在步骤101之前实施。
可选的,作为一种可能的实施方式,在上述图1所示的实施例的基础上,实际运用中可能需要从已有的报表中录入的单元格行数较多,为了便于用户在目标报表中的框选操作,只需要用户框选待填充区域中少量的行即可,报表数据录入***可以自动补充待填充区域的行数量。具体的,当已有报表为电子表格,例如Excel表格,缓存区域为粘贴板时,本发明实施例中,报表数据录入***还可以根据换行符“\n”的数量识别第一区域在已有报表中对应的行的数量;若第一区域在已有报表中对应的行的数量大于待填充区域单元格的行数量,则适应增加待填充区域单元格的行数量。
可选的,作为一种可能的实施方式,在上述图1所示的实施例的基础上,实际运用中,为了提高数据录入效率,可以在数据读取过程中舍弃不符合读取规则的无效数据。具体的,在将归属于第一区域中同一列的字符串作为一组缓存数组之前,报表数据录入***可以判断读取到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;和/或,判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
示例性的,以EAS***中报表为例,EAS***中有以下几类单元格:a.规定输入的数据类型:例如文本类、数值类;b.内嵌控件:F7、下拉框,这种控件中会绑定特定的数据集合,也就是说它们的数据集是固定的。具体判断字符串是否符合读取规则的判断方法如下:a.文本类型,则直接填入;b.数值,则在try使用new Big decimal(字符串),若异常则说明不是数值类型,不填入数组;c.F7、下拉框,在第一次触发查询时,将控件绑定的数据集合存入***缓存。判断字符串是否在该数据集合存中,若有则填入数组,无则不填。
为了便于理解,下面将结合Excel表格中的数据录入金蝶EAS***报表的具体实施过程对本发明实施例中报表数据录入方法进行描述。
在触发报表数据录入功能之后,用户选择Excel表格中的某一区域的各个单元格进行复制,复制操作生成的字符串缓存数据存储于***粘贴板,报表数据录入***可以对粘贴板中数据的读取与解析,具体包括如下步骤:
1.读取直接调用java.awt.Toolkit的对应接口即可得到***粘贴板中的字符串;
2.读取粘贴板中存储的Excel表格中复制操作得到的字符串,并进行解析,具体的解析流程图如图3所示,假设粘贴板中的字符串str依次编号为str[0]、str[1]、str[2]…str[i],从i=0开始依次读取字符串直到读取完成str[i]不存在为止,并识别读取到的字符串是否符合预设条件,将符合预设条件的字符串保存到数组中。其中,Excel粘贴之后的字符串中“\t”代表一个单元格的结束,“\n”代表一行的结束,根据这一标准,进行字符串的分割,读取指定列的数据。对于字符串是否符合预设条件的判断,EAS***中有以下几类单元格:a.规定输入的数据类型:例如文本类、数值类;b.内嵌控件:F7、下拉框,这种控件中会绑定特定的数据集合,也就是说它们的数据集是固定的。具体判断字符串是否符合读取规则的判断方法如下:a.文本类型,则直接填入;b.数值,则在try使用new Big decimal(字符串),若异常则说明不是数值类型,不填入数组;c.F7、下拉框,在第一次触发查询时,将控件绑定的数据集合存入***缓存。判断字符串是否在该数据集合存中,若有则填入数组,无则不填入数组。
其中,在数据粘贴前,判断粘贴行数与分录行数的关系,若已有分录行小于粘贴行数,增加对应分录行。粘贴为覆盖导入:若已有分录行大于等于需要粘贴的分录行,但已有数据,则会覆盖导入而非***导入,由于分录列是固定的几个属性,故存在粘贴列大于分录列,则多余的数据将不粘贴到分录列中。
粘贴过程中,按列取数:根据分录中的起始列和粘贴板中的列数,计算哪些列需要进行粘贴、是否需要跳过,具体流程图如图4所示。如果EAS***报表中有锁定的区域(如图6所示),例如“项目名称”,该列不可编辑为锁定区域,故粘贴时需要跳过此列。最后根据不同列中的编辑控件类型(F7、下拉框、数值、文本)不同,触发对应的填充操作。
具体判断col列是否需要粘贴的过程如下:设EAS***中的报表起始坐标为(Xstart,Ystart),Excel所选列数a,不填充的列横坐标为Xignore,若Xstart≤Xignore<(Xstart+a),则在填充第Xstart+i(0≤i<a)列时,有Xignore≤(Xstart+i)<(Xstart+a),此时填充统一后移一列,即填充Xstart+i+1列。例如,如图6所示,在Excle中框选4列单元格进行复制,在EAS分录中,以所选中的最小坐标为起始点,假设起始坐标(3,3)如图6所示,锁定区域为第4列,即此时起始横坐标Xstart为3,不填充的“项目名称”列横坐标Xignore为4,填充列数a为4,填充的最终列横坐标(Xstart+a-1)为7。根据上述规则,填充到第4列时,因为满足Xstart<=Xignore<=(Xstart+a)、Xignore<=(Xstart+i)<(Xstart+a)这两个条件,故填充到第***中的第5列,第6、7列同样如此。
请参阅图7,本申请实施例还提供了一种报表数据录入***,其特征在于,包括:
读取单元701,用于读取缓存区域复制操作生成的字符串缓存数据,字符串缓存数据是已有报表中被选中第一区域的各个单元格中的字符串按照预设存储格式复制生成;
解析单元702,用于根据预设存储格式解析字符串缓存数据,将归属于第一区域中同一列的字符串作为一组缓存数组,依次生成第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着第一区域中对应的列数的增加而增加;
获取单元703,用于获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型,已有报表与目标报表的编辑软件类型不同;
填充单元704,用于以以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,数据填充操作包括:从列序号最小的待填充单元格开始,按照各组缓存数组的序号增序依次读取一组缓存数组中的各行字符串数据作为当前一列待填充单元格的目标数据,并按照当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将目标数据填充至当前一列待填充单元格中。
本发明实施例中,在触发报表数据录入功能之后,报表数据录入***可以读取针对已有报表中第一区域复制操作生成的字符串缓存数据,并解析该字符串缓存数据,依次生成第一区域中各列单元格对应的缓存数组,最后以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,实现了报表中的单元格数据的批量录入,无需逐一录入单元格,提高了报表数据录入效率。
可选的,作为一种可能的实施方式,本发明实施例中的,当已有报表为电子表格,缓存区域为粘贴板时,解析单元包括:
遍历模块7031,用于遍历字符串缓存数据,根据单元格结束字符及每一行单元格结束之后的换行符识别字符串缓存数据中归属于已有报表中同一列的字符串,依次生成第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着第一区域中对应的列数的增加而增加。
可选的,作为一种可能的实施方式,本发明实施例中的报表数据录入***还包括:
识别单元705,用于根据换行符的数量识别第一区域在已有报表中对应的行的数量;
调节单元706,若第一区域在已有报表中对应的行的数量大于待填充区域单元格的行数量,则适应增加待填充区域单元格的行数量。
可选的,作为一种可能的实施方式,本发明实施例中的获取单元703包括:
接收模块7031,接收框选指令,框选指令用于指示选中目标报表中的待填充区域,待填充区域中单元格行列坐标连续;
剔除模块7032,用于剔除待填充区域中锁定的一列或多列单元格对应的列坐标之后,将待填充区域剩余的单元格对应的列坐标作为各列待填充单元格的列坐标。
可选的,作为一种可能的实施方式,本发明实施例中的报表数据录入***还包括:
第一判断单元707,用于判断读取到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;
第二判断单元708,用于判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机装置,如图8所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。参考图8,计算机装置8包括:存储器810、处理器820、有线或无线网络模块830以及存储在存储器中并可在处理器上运行的计算机程序。处理器执行计算机程序时实现上述各个报表数据录入方法实施例中的步骤,例如图1所示的步骤101至104。或者,处理器执行计算机程序时实现上述各装置实施例中各模块或单元的功能。
本申请实施例中的一些实施例中,处理器用于执行存储器中存储的计算机程序时实现如下步骤:
读取缓存区域复制操作生成的字符串缓存数据,字符串缓存数据是已有报表中被选中第一区域的各个单元格中的字符串按照预设存储格式复制生成;
根据预设存储格式解析字符串缓存数据,将归属于第一区域中同一列的字符串作为一组缓存数组,依次生成第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着第一区域中对应的列数的增加而增加;
获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型,已有报表与目标报表的编辑软件类型不同;
以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,数据填充操作包括:从列序号最小的待填充单元格开始,按照各组缓存数组的序号增序依次读取一组缓存数组中的各行字符串数据作为当前一列待填充单元格的目标数据,并按照当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将目标数据填充至当前一列待填充单元格中。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
遍历字符串缓存数据,根据单元格结束字符及每一行单元格结束之后的换行符识别字符串缓存数据中归属于已有报表中同一列的字符串。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
根据换行符的数量识别第一区域在已有报表中对应的行的数量;
若第一区域在已有报表中对应的行的数量大于待填充区域单元格的行数量,则适应增加待填充区域单元格的行数量。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
接收框选指令,框选指令用于指示选中目标报表中的待填充区域,待填充区域中单元格行列坐标连续;
剔除待填充区域中锁定的一列或多列单元格对应的列坐标之后,将待填充区域剩余的单元格对应的列坐标作为各列待填充单元格的列坐标。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
判断读取到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;
和/或,判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
本领域技术人员可以理解,图8中示出的结构并不构成对计算机装置的限定,计算机装置8可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,例如计算机装置还可以包括输入输出设备、总线等。
所称处理器可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现计算机装置的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,可以实现如下步骤:
读取缓存区域复制操作生成的字符串缓存数据,字符串缓存数据是已有报表中被选中第一区域的各个单元格中的字符串按照预设存储格式复制生成;
根据预设存储格式解析字符串缓存数据,将归属于第一区域中同一列的字符串作为一组缓存数组,依次生成第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着第一区域中对应的列数的增加而增加;
获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型,已有报表与目标报表的编辑软件类型不同;
以待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,数据填充操作包括:从列序号最小的待填充单元格开始,按照各组缓存数组的序号增序依次读取一组缓存数组中的各行字符串数据作为当前一列待填充单元格的目标数据,并按照当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将目标数据填充至当前一列待填充单元格中。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
遍历字符串缓存数据,根据单元格结束字符及每一行单元格结束之后的换行符识别字符串缓存数据中归属于已有报表中同一列的字符串。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
根据换行符的数量识别第一区域在已有报表中对应的行的数量;
若第一区域在已有报表中对应的行的数量大于待填充区域单元格的行数量,则适应增加待填充区域单元格的行数量。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
接收框选指令,框选指令用于指示选中目标报表中的待填充区域,待填充区域中单元格行列坐标连续;
剔除待填充区域中锁定的一列或多列单元格对应的列坐标之后,将待填充区域剩余的单元格对应的列坐标作为各列待填充单元格的列坐标。
可选的,本申请的一些实施例中,处理器还可以用于实现如下步骤:
判断读取到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;
和/或,判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (7)
1.一种报表数据录入方法,其特征在于,包括:
读取缓存区域复制操作生成的字符串缓存数据,所述字符串缓存数据是已有报表中被选中第一区域的各个单元格中的字符串按照预设存储格式复制生成;
根据所述预设存储格式解析所述字符串缓存数据,将归属于所述第一区域中同一列的字符串作为一组缓存数组,依次生成所述第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着所述第一区域中对应的列数的增加而增加;
获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型,所述已有报表与所述目标报表的编辑软件类型不同,所述编辑控件绑定预设的数据集合;
以所述待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,所述数据填充操作包括:从列序号最小的待填充单元格开始,按照各组所述缓存数组的序号增序依次读取一组所述缓存数组中的字符串数据作为当前一列待填充单元格的目标数据,并按照所述当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将所述目标数据填充至所述当前一列待填充单元格中;
当所述已有报表为电子表格,所述缓存区域为粘贴板时,所述根据所述预设存储格式解析所述字符串缓存数据,包括:遍历所述字符串缓存数据,根据单元格结束字符及每一行单元格结束之后的换行符识别所述字符串缓存数据中归属于所述已有报表中同一列的字符串;
在所述将归属于所述第一区域中同一列的字符串作为一组缓存数组之前,所述方法还包括:判断解析到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;和/或,判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
2.根据权利要求1所述的方法,其特征在于,还包括:
根据所述换行符的数量识别所述第一区域单元格行的数量;
若所述第一区域在所述已有报表中对应的行的数量大于所述待填充区域单元格的行数量,则适应增加所述待填充区域单元格的行数量。
3.根据权利要求1至2中任一项所述的方法,其特征在于,所述获取目标报表待填充区域中各列待填充单元格的列坐标,包括:
接收框选指令,所述框选指令用于指示选中目标报表中的待填充区域,所述待填充区域中单元格行列坐标连续;
剔除所述待填充区域中锁定的一列或多列单元格对应的列坐标之后,将所述待填充区域剩余的单元格对应的列坐标作为各列待填充单元格的列坐标。
4.一种报表数据录入***,其特征在于,包括:
读取单元,用于读取缓存区域复制操作生成的字符串缓存数据,所述字符串缓存数据是已有报表中被选中第一区域的各个单元格中的字符串按照预设存储格式复制生成;
解析单元,用于根据所述预设存储格式解析所述字符串缓存数据,将归属于所述第一区域中同一列的字符串作为一组缓存数组,依次生成所述第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着所述第一区域中对应的列数的增加而增加;
获取单元,用于获取目标报表待填充区域中各列待填充单元格的列坐标及各列待填充单元格对应的编辑控件类型,所述已有报表与所述目标报表的编辑软件类型不同,所述编辑控件绑定预设的数据集合;
填充单元,用于以所述待填充区域中行列坐标最小的单元格为起点,依次完成各列待填充单元格的数据填充操作,所述数据填充操作包括:从列序号最小的待填充单元格开始,按照各组所述缓存数组的序号增序依次读取一组所述缓存数组中的字符串数据作为当前一列待填充单元格的目标数据,并按照所述当前一列待填充单元格对应的编辑控件类型相匹配的数据格式将所述目标数据填充至所述当前一列待填充单元格中;
当所述已有报表为电子表格,所述缓存区域为粘贴板时,所述解析单元包括:遍历模块,用于遍历所述字符串缓存数据,根据单元格结束字符及每一行单元格结束之后的换行符识别所述字符串缓存数据中归属于所述已有报表中同一列的字符串,依次生成所述第一区域中各列单元格对应的缓存数组,各组缓存数组的序号随着所述第一区域中对应的列数的增加而增加;
第一判断单元,用于判断读取到的字符串是否属于预设的数据类型,若不属于预设的数据类型,则舍弃当前读取到的字符串;和/或,第二判断单元,用于判断读取到的字符串是否与预设的数据集合中的任一预设字符串匹配,若不存在匹配的预设字符串,则舍弃当前读取到的字符串。
5.根据权利要求4所述的***,其特征在于,还包括:
识别单元,用于根据所述换行符的数量识别所述第一区域在所述已有报表中对应的行的数量;
调节单元,若所述第一区域在所述已有报表中对应的行的数量大于所述待填充区域单元格的行数量,则适应增加所述待填充区域单元格的行数量。
6.一种计算机装置,其特征在于,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至3中任意一项所述方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1至3中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910804191.XA CN110516220B (zh) | 2019-08-28 | 2019-08-28 | 一种报表数据录入方法、***及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910804191.XA CN110516220B (zh) | 2019-08-28 | 2019-08-28 | 一种报表数据录入方法、***及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110516220A CN110516220A (zh) | 2019-11-29 |
CN110516220B true CN110516220B (zh) | 2023-12-26 |
Family
ID=68627624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910804191.XA Active CN110516220B (zh) | 2019-08-28 | 2019-08-28 | 一种报表数据录入方法、***及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110516220B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112183040B (zh) * | 2020-09-27 | 2024-06-14 | 金蝶软件(中国)有限公司 | 一种凭证生成方法以及相关装置 |
CN114429113B (zh) * | 2022-01-12 | 2024-07-23 | 上海华虹宏力半导体制造有限公司 | 一种用于mpw产品测试数据自动区分归类的方法 |
CN116029267A (zh) * | 2023-02-08 | 2023-04-28 | 信利光电股份有限公司 | 一种excel数据排版的处理方法、装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001325562A (ja) * | 2000-05-17 | 2001-11-22 | Minolta Co Ltd | 画像認識装置、画像形成装置、画像認識方法および画像認識プログラムを記憶したコンピュータ読取り可能な記録媒体 |
CN102799574A (zh) * | 2012-06-29 | 2012-11-28 | 无锡永中软件有限公司 | 电子表格的数据分割和合并方法 |
CN102819539A (zh) * | 2011-09-28 | 2012-12-12 | 金蝶软件(中国)有限公司 | 数据快速录入的方法及*** |
CN104616088A (zh) * | 2014-09-28 | 2015-05-13 | 用友优普信息技术有限公司 | 快速填充表格的装置及方法 |
CN109522538A (zh) * | 2018-11-28 | 2019-03-26 | 腾讯科技(深圳)有限公司 | 表格内容的自动分列方法、装置、设备及存储介质 |
-
2019
- 2019-08-28 CN CN201910804191.XA patent/CN110516220B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001325562A (ja) * | 2000-05-17 | 2001-11-22 | Minolta Co Ltd | 画像認識装置、画像形成装置、画像認識方法および画像認識プログラムを記憶したコンピュータ読取り可能な記録媒体 |
CN102819539A (zh) * | 2011-09-28 | 2012-12-12 | 金蝶软件(中国)有限公司 | 数据快速录入的方法及*** |
CN102799574A (zh) * | 2012-06-29 | 2012-11-28 | 无锡永中软件有限公司 | 电子表格的数据分割和合并方法 |
CN104616088A (zh) * | 2014-09-28 | 2015-05-13 | 用友优普信息技术有限公司 | 快速填充表格的装置及方法 |
CN109522538A (zh) * | 2018-11-28 | 2019-03-26 | 腾讯科技(深圳)有限公司 | 表格内容的自动分列方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110516220A (zh) | 2019-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110516220B (zh) | 一种报表数据录入方法、***及相关设备 | |
CN107391762B (zh) | 日志数据的处理方法及装置 | |
CN111400387B (zh) | 导入导出数据的转换方法、装置、终端设备及存储介质 | |
CN107341262A (zh) | 数据库中对象类型列的序列化、反序列化方法及装置 | |
CN110515951B (zh) | 一种bom标准化方法、***及电子设备和存储介质 | |
CN106570013B (zh) | 页面访问数据的处理方法和装置 | |
CN107992492B (zh) | 一种数据区块的存储方法、读取方法、其装置及区块链 | |
CN106921614B (zh) | 业务数据处理方法和装置 | |
CN102110102A (zh) | 数据处理方法及装置、文件识别方法及工具 | |
CN110728123A (zh) | 一种报表生成方法、***及相关设备 | |
CN114357943A (zh) | 一种通用高效Excel读取处理方法、工具、介质及设备 | |
CN114090671A (zh) | 数据导入方法、装置、电子设备及存储介质 | |
CN106997394A (zh) | 一种数据乱序到达处理方法和*** | |
CN113051460A (zh) | 基于Elasticsearch的数据检索方法、***、电子设备及存储介质 | |
CN112307318B (zh) | 一种内容发布方法、***及装置 | |
CN106599324B (zh) | 一种cad数据抓取方法 | |
CN110750960A (zh) | 一种配置文件的解析方法、存储介质、电子设备及*** | |
CN108664505A (zh) | 一种数据库表结构的导出方法及装置 | |
CN115065945B (zh) | 短信链接生成方法、装置、电子设备及存储介质 | |
CN110688395A (zh) | 一种信息查询方法、装置、信息统计方法及相关设备 | |
CN108874994A (zh) | 一种分块读取数据的方法、装置及计算机存储介质 | |
CN111309370B (zh) | 多项目多***环境的版本号有向图排序稽核方法和*** | |
CN114416731A (zh) | 数据存储方法、数据读取方法、装置、电子设备及介质 | |
CN107092607A (zh) | 一种话单入库方法及装置 | |
CN114840586A (zh) | 一种数据转换方法、设备、服务器及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |