CN104317839B - 生成报表模板的方法和装置 - Google Patents

生成报表模板的方法和装置 Download PDF

Info

Publication number
CN104317839B
CN104317839B CN201410532753.7A CN201410532753A CN104317839B CN 104317839 B CN104317839 B CN 104317839B CN 201410532753 A CN201410532753 A CN 201410532753A CN 104317839 B CN104317839 B CN 104317839B
Authority
CN
China
Prior art keywords
expression formula
data
checked
identifier
output
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
Application number
CN201410532753.7A
Other languages
English (en)
Other versions
CN104317839A (zh
Inventor
张轩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201410532753.7A priority Critical patent/CN104317839B/zh
Publication of CN104317839A publication Critical patent/CN104317839A/zh
Application granted granted Critical
Publication of CN104317839B publication Critical patent/CN104317839B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]

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)

Abstract

本发明公开了一种生成报表模板的方法和装置。其中,该方法包括:获取用户输入的报表表达式参数,其中,报表表达式参数包括:数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选待查询数据的预设条件、输出表达式的输出参数;基于第一标识符、第二标识符和预设条件,生成数据源表达式;基于第一标识符和输出参数,生成输出表达式;保存数据源表达式和输出表达式得到报表文件,并将报表文件的名称修改为预设名称,得到报表模板。通过本发明,解决了现有技术中获取报表模板的效率低、报表模板准确率低的问题,实现了提高生成报表模板的效率和报表模板准确率的效果。

Description

生成报表模板的方法和装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种生成报表模板的方法和装置。
背景技术
在基于数据分析的在线业务优化服务中,当客户需要查看其指定产品的参数(如访问量)时,技术人员需要编写报表表达式并将其输出到Excel里的指定单元格,以制作符合客户需求的报表模板,以供客户查看。
上述报表表达式包括数据源表达式和输出表达式。
下面结合图1详细介绍现有技术中报表模板生成的过程。
如图1所示的现有技术的方案通过如下步骤生成报表模板:
步骤S102,手动编写报表表达式,并制作报表模板。
步骤S104,测试报表模板,得到测试结果。
步骤S106,判断测试结果是否符合客户要求。
在测试结果符合客户要求的情况下,执行步骤S108;在测试结果不符合客户要求的情况下,返回执行步骤S102。
步骤S108,配置任务计划,以将报表模板定时发送至指定客户。
具体地,手动查询编写报表表达式所需的参数并完成编写,将编写好的报表表达式输出到指定的Excel单元格内,制作成报表模板;将报表模板发送给技术人员进行测试,得到测试结果;判断报表模板的测试结果是否符合客户的要求,即报表模板的测试结果是否是客户要查看的其指定产品的参数;在测试结果符合客户的要求的情况下,配置任务计划,按照任务计划将报表模板定时发送至指定客户,在测试结果不符合客户的要求的情况下,重新手动编写报表表达式并制作模板。
现有的编写报表表达式的方式比较单一,只可以在网页前端查找相关参数,并手动编写表达式。下面结合图2详细介绍现有技术中的报表表达式的获取过程。
如图2所示的现有技术的方案通过如下步骤生成报表表达式:
步骤S202,在网页前端打开相应的客户产品界面,从网址中解析出客户产品的标识符,查找指定维度和指标,从网址中解析出对应的参数。
步骤S204,记录解析得到的参数,手动填写数据源表达式。
步骤S206,填写输出表达式,将数据源表达式和输出表达式写入Excel不同的单元格中。
具体地,需要在网页前端上打开相应的客户产品界面,从网址中解析出客户产品的标识符,并查找客户指定的维度和指标,从网址中解析出对应的参数;记录上述标识符和参数,手动填写数据源表达式;然后填写输出表达式,并将数据源表达式和输出表达式填写到Excel中的不同单元格里。
现有技术中,需要手动查找并填写报表表达式的参数,花费时间久,编写报表表达式的效率低,导致获取报表模板的效率低。例如,在数据存储系统的网页网址栏里面查找指定的参数值,如需要从一长串的URL中找到对应的参数,所需时间长、效率低。因手动编写报表表达式,填写参数时会产生填写错误的问题,报表表达式准确率低,导致报表模板错误率高。因此手动填写的报表表达式构造的Excel报表模板在后期交给技术人员测试的时候,会产生各种各样的错误,这些错误需要一一排查,产生的损失也是巨大的。
针对现有技术中获取报表模板的效率低、报表模板准确率低的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中获取报表模板的效率低、报表模板准确率低的问题,目前尚未提出有效的解决方案,为此,本发明的主要目的在于提供一种生成报表模板的方法和装置,以解决上述问题。
为了实现上述目的,根据本发明的一个方面,提供了一种生成报表模板的方法,该方法包括:获取用户输入的报表表达式参数,其中,报表表达式参数包括:数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选待查询数据的预设条件、输出表达式的输出参数,其中,数据源表达式用于查询待查询数据,输出表达式用于指示待查询数据的输出位置;基于第一标识符、第二标识符和预设条件,生成数据源表达式;基于第一标识符和输出参数,生成输出表达式;保存数据源表达式和输出表达式得到报表文件,并将报表文件的名称修改为预设名称,得到报表模板。
进一步地,在获取用户输入的报表表达式参数之前,方法还包括:接收用户的报表模板生成请求,其中,报表模板生成请求中携带有报表表达式参数的描述信息;获取待查询数据的第二标识符包括:从数据表中读取用户的数据存储系统;从数据存储系统的数据库中查找描述信息所指示的待查询对象;从待查询对象的配置文件中提取待查询数据的第二标识符。
进一步地,获取用户输入的用于筛选待查询数据的预设条件包括:从描述信息中提取预设条件,其中,预设条件包括:地域范围、待查询数据的时间信息、页面浏览信息和会话信息。
进一步地,基于第一标识符、第二标识符和预设条件,生成数据源表达式包括:按照预设的数据源表达式格式保存第一标识符、第二标识符、地域范围、待查询数据的时间信息、页面浏览信息以及会话信息,生成数据源表达式;基于第一标识符和输出参数,生成输出表达式包括:按照预设的输出表达式格式保存第一标识符和预设的输出参数,生成输出表达式,其中,输出参数包括指示输出位置的起始位置的参数。
进一步地,保存数据源表达式和输出表达式得到报表文件,并将报表文件的名称修改为预设名称,得到报表模板包括:将数据源表达式和输出表达式保存至不同的Excel单元格内;将Excel单元格的名称修改为预设名称,得到报表模板,其中,预设名称为TC_开头的名称。
为了实现上述目的,根据本发明的另一方面,提供了一种生成报表模板的装置,该装置包括:获取模块,用于获取用户输入的报表表达式参数,其中,报表表达式参数包括:数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选待查询数据的预设条件、输出表达式的输出参数,其中,数据源表达式用于查询待查询数据,输出表达式用于指示待查询数据的输出位置;第一生成模块,用于基于第一标识符、第二标识符和预设条件,生成数据源表达式;第二生成模块,用于基于第一标识符和输出参数,生成输出表达式;处理模块,用于保存数据源表达式和输出表达式得到报表文件,并将报表文件的名称修改为预设名称,得到报表模板。
进一步地,装置还包括:接收模块,用于在获取用户输入的报表表达式参数之前,接收用户的报表模板生成请求,其中,报表模板生成请求中携带有报表表达式参数的描述信息;获取模块包括:读取模块,用于从数据表中读取用户的数据存储系统;查找模块,用于从数据存储系统的数据库中查找描述信息所指示的待查询对象;第一提取模块,用于从待查询对象的配置文件中提取待查询数据的第二标识符。
进一步地,获取模块还包括:第二提取模块,用于从描述信息中提取预设条件,其中,预设条件包括:地域范围、待查询数据的时间信息、页面浏览信息和会话信息。
进一步地,第一生成模块包括:第一生成子模块,用于按照预设的数据源表达式格式保存第一标识符、第二标识符、地域范围、待查询数据的时间信息、页面浏览信息以及会话信息,生成数据源表达式;第二生成模块包括:第二生成子模块,用于按照预设的输出表达式格式保存第一标识符和预设的输出参数,生成输出表达式,其中,输出参数包括指示输出位置的起始位置的参数。
进一步地,处理模块包括:保存模块,用于将数据源表达式和输出表达式保存至不同的Excel单元格内;修改模块,用于将Excel单元格的名称修改为预设名称,得到报表模板,其中,预设名称为TC_开头的名称。
采用本发明实施例,在获取报表表达式参数时,自动获取用户输入的报表表达式参数,提高了查找报表表达式参数的速度,避免了手动输入报表表达式参数时的输入错误,基于上述自动获取的报表表达式参数生成报表表达式(即上述实施例中的数据源表达式和输出表达式),提高了基于此报表表达式生成的报表模板的准确性和生成报表模板的效率;得到报表文件后自动将其名称修改为预设名称,避免了手动编写报表模板时忘记修改报表文件名称,提高了报表模板的可用性。采用本发明实施例,解决了现有技术中获取报表模板的效率低、报表模板准确率低的问题,实现了提高生成报表模板的效率和报表模板准确率的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据现有技术的生成报表模板的流程图;
图2是根据现有技术中的获取报表表达式的流程图;
图3是根据本发明实施例的生成报表模板的方法的流程图;
图4是根据本发明实施例的一种可选的生成报表模板的方法的流程图;
图5是根据本发明实施例的一种可选的获取待查询数据的第二标识符的示意图;
图6是根据本发明实施例的一种可选的获取待查询数据的基本参数的示意图;
图7是根据本发明实施例的一种可选的获取待查询数据的维度的示意图;
图8是根据本发明实施例的一种可选的获取待查询数据的指标的示意图;
图9是根据本发明实施例的一种可选的获取待查询数据的过滤条件的示意图;以及
图10是根据本发明实施例的生成报表模板的装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图3是根据本发明实施例的生成报表模板的方法的流程图,如图3所示该方法可以包括如下步骤:
步骤S302,获取用户输入的报表表达式参数。
其中,报表表达式参数包括:数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选待查询数据的预设条件、输出表达式的输出参数,其中,数据源表达式用于查询待查询数据,输出表达式用于指示待查询数据的输出位置。
步骤S304,基于第一标识符、第二标识符和预设条件,生成数据源表达式。
步骤S306,基于第一标识符和输出参数,生成输出表达式。
步骤S308,保存数据源表达式和输出表达式得到报表文件,并将报表文件的名称修改为预设名称,得到报表模板。
其中,预设名称为后续操作中的程序能够识别的名称,便于后续操作中的程序调用上述报表模板,以运行报表模板并最终得到要查询的数据;报表表达式可以包括数据源表达式和输出表达式。
采用本发明,在获取报表表达式参数时,自动获取用户输入的报表表达式参数,提高了查找报表表达式参数的速度,避免了手动输入报表表达式参数时的输入错误,基于上述自动获取的报表表达式参数生成报表表达式(即上述实施例中的数据源表达式和输出表达式),提高了基于此报表表达式生成的报表模板的准确性和生成报表模板的效率;得到报表文件后自动将其名称修改为预设名称,避免了手动编写报表模板时忘记修改报表文件名称,提高了报表模板的可用性。采用本发明实施例,解决了现有技术中获取报表模板的效率低、报表模板准确率低的问题,实现了提高生成报表模板的效率和报表模板准确率的效果。
图4是根据本发明上述实施例的一种可选的生成报表模板的方法。下面结合图4详细介绍本发明的上述实施例。
如图4所示,该方法可以包括以下步骤:
步骤S402,接收用户的报表模板生成请求。
步骤S404,调用WCF服务获取数据库的参数。
其中,WCF服务为Windows Communication Foundation,即Windows通讯开发平台,是由微软开发的一系列支持数据通信的应用程序框架;数据库中存储有待查询数据;数据库的参数为数据库中存储的所有待查询数据对应的所有参数,该参数可以包括上述实施例中用户输入的报表表达式参数。
步骤S406,从数据库的参数中获取用户输入的参数。
其中,用户输入的参数可以包括本发明上述实施例中的数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选待查询数据的预设条件、输出表达式的输出参数。
步骤S408,判断用户输入的参数是否具有子参数。
在用户输入的参数具有子参数的情况下,执行步骤S404;在用户输入的参数不具有子参数的情况下,执行步骤S410。
步骤S410,根据用户输入的参数生成报表表达式。
其中,报表表达式可以包括数据源表达式和输出表达式。
步骤S412,将报表表达式输出至指定的Excel单元格内,并修改该Excel单元格名称。
具体地,当接收到用户的报表模板生成请求之后,会调用WCF服务,从用户的数据存储系统的数据库中获取数据库的参数,当从数据库的参数中获取用户输入的参数之后,会根据该用户输入的参数生成报表表达式,其中,报表表达式可以包括数据源表达式和输出表达式;将该数据源表达式和输出表达式输出至指定的不同Excel单元格内,并将上述Excel单元格名称修改为预设名称,得到报表模板。
根据本发明的上述实施例,在获取用户输入的报表表达式参数之前,该方法还可以包括:接收用户的报表模板生成请求,其中,报表模板生成请求中携带有报表表达式参数的描述信息;获取待查询数据的第二标识符可以包括:从数据表中读取用户的数据存储系统;从数据存储系统的数据库中查找描述信息所指示的待查询对象;从待查询对象的配置文件中提取待查询数据的第二标识符。
具体地,接收到用户的报表模板生成请求之后,首先从数据表中读取该用户的数据存储系统;然后调用支持数据通信的应用程序从该数据存储系统的数据库中查找报表模板生成请求中携带的报表表达式参数的描述信息所指示的待查询对象;最后从该待查询对象的配置文件中提取待查询数据的第二标识符。
其中,数据表中存储有用户与数据存储系统的映射关系,每个用户对应一个数据存储系统;数据存储系统的数据库中可以包括一个或多个待查询对象;每个待查询对象具有唯一的一个配置文件,该配置文件中存储有一个或多个待查询数据的第二标识符。在上述实施例中,可以通过配置文件获取待查询对象的待查询数据的第二标识符。
在该实施例中,通过待查询数据的第二标识符可以得到待查询数据的数据源;该数据源位于在数据存储系统的数据库中。
可选地,上述实施例中的数据存储系统可以包括:Web Dissector、VideoDissector或者Mobile Dissector。其中,Web Dissector用于存储网页用户访问行为数据,Video Dissector用于存储视频用户访问行为数据,Mobile Dissector用于存储移动应用用户访问行为数据。
需要进一步说明的是,在上述实施例中,报表表达式参数的描述信息可以包括:时间信息、地域范围、待查询数据的第二标识符的描述信息、待查询数据的类型等。
其中,时间信息用于指示待查询数据生成的时间;地域范围用于指示待查询数据生成的地点;待查询数据的第二标识符的描述信息用于指示待查询数据的第二标识符;待查询数据的类型用于指示待查询数据应用的范围。
下面结合图5详细介绍本发明的上述实施例。
例如,用户的报表模板生成请求是要求查看2014年7月27日至8月12日期间,可口可乐的Coke Brand Site(即可口可乐品牌网站)在上海地区的新用户访问量及所有页面浏览量的数据(即上述实施例中的待查询数据),如图5所示,首先根据该报表模板生成请求,从数据表中读取用户的数据存储系统(即图5所示的选择产品)为Web Dissector(即图5所示的wd),然后从Web Dissector的数据库中查找并确定待查询对象(即图5所示的解决方案)为可口可乐,在确定待查询对象之后,自动获取该待查询对象的配置文件,从该配置文件中提取出待查询数据的第二标识符(即图5所示的Coke Brand Site)。
其中,图5所示的数据源ID即上述实施例中的数据源表达式的第一标识符,每个数据源表达式具有唯一的一个第一标识符,该第一标识符可以为数字或字符。
在本发明的上述实施例中,获取用户输入的用于筛选待查询数据的预设条件可以包括:从描述信息中提取预设条件,其中,预设条件可以包括:地域范围、待查询数据的时间信息、页面浏览信息和会话信息。
其中,地域范围根据上述实施例中的报表表达式参数中的地域范围确定;待查询数据的时间信息根据上述实施例中的报表表达式参数中的时间信息确定;页面浏览信息和会话信息根据上述实施例中的报表表达式参数中的待查询数据的类型确定。
根据不同的报表模板生成请求,预设条件可以为不同的条件。
可选地,预设条件可以包括:访问者信息,如是否为新访问者、访问者是否跳出页面、页面查看量或访问时长等;地域范围可以按国家查询数据,,以及进一步按照省份及城市名称查询数据;待查询数据的时间信息用于根据待查询数据生成的时间限制查询范围,如返回7月至8月的数据;会话信息可以包括访问量、综合浏览量、平均停留时间、页面跳出率、平均页面访问数等。上述实施例中的预设条件还可以包括所有页面浏览信息,如所有页面浏览量、页面停留时长、页面加载时长、页面访问深度、页面刷新率、着陆率、次访率以及退出率等。
下面结合图6详细介绍本发明的上述实施例。
如图6所示,根据本发明上述实施例中的用户的报表模板生成请求,待查询数据的时间信息(即图6所示的开始时间、结束时间、昨天、前天以及上周)为2014年7月27日至8月12日,即开始时间为2014年7月27日和结束时间为2014年8月12日。
其中,本发明上述实施例中的待查询数据的预设条件可以包括图6所示的基本参数、维度、指标以及过滤条件,其中,指标和过滤条件用于对维度查询到的数据作进一步筛选。
图7是根据本发明实施例的一种可选的获取维度的示意图。
如图7所示,维度可以包括访问者、地域、时间、技术、广告投放、流量源、页面、站内优化、事件参与以及目标等参数,其中,上述每个参数均可以包括一个或多个子参数,如访问者子参数可以包括是否新访问者、是否跳出、页面查看量及访问时长,地域子参数可以包括国家、省份和城市。
根据本发明上述实施例中的用户的报表模板生成请求,在图7中,需要在维度中选择访问者子参数中的是否新访问者以及地域子参数中的国家。
图8是根据本发明实施例的一种可选的获取指标的示意图。
如图8所示,指标可以包括会话、所有页面浏览量等参数,其中,会话参数可以包括基础流量指标和访问者两个子参数,基础流量指标又可以包括访问量、综合浏览量、平均停留时间、跳出率以及平均页面访问数等子参数,所有页面浏览量又可以包括所有页面浏览量、页面停留时间、页面加载时长、页面访问深度、页面刷新率等子参数。
根据本发明上述实施例中的用户的报表模板生成请求,在图8中,需要在指标中选择会话子参数中的访问量以及所有页面浏览量子参数中的所有页面浏览量。
下面结合图9详细介绍本发明上述实施例中的过滤条件的获取。
如图9所示,根据本发明上述实施例中的用户的报表模板生成请求,基于地域参数,需要通过过滤条件进一步查询出上海市的待查询数据。
其中,过滤条件可以包括维度的过滤条件和指标的过滤条件。
通过本发明的上述实施例,从描述信息中提取预设条件,可以对待查询数据进行准确的限定,避免了手动查找并填写参数时错误率高的问题,提高了获取报表表达式参数的准确性。
根据本发明的上述实施例,基于第一标识符、第二标识符和预设条件,生成数据源表达式可以包括:按照预设的数据源表达式格式保存第一标识符、第二标识符、地域范围、待查询数据的时间信息、页面浏览信息以及会话信息,生成数据源表达式;基于第一标识符和输出参数,生成输出表达式可以包括:按照预设的输出表达式格式保存第一标识符和预设的输出参数,生成输出表达式,其中,输出参数包括指示输出位置的起始位置的参数。
其中,预设的数据源表达式格式可以为:
#datasource(id={}&product={}&profile={}&begintime={}&endtime={}&detailviews={}&metrics={}&viewportfilters={}&orderby={}&top={})。
预设的输出表达式格式可以为:
#dump(datasource={}&type={}&origin={}&skipheaders={}&textcelltemplate={}&dat acelltemplate={})。
其中,{}为占位符,而不是真实数据;id对应于上述实施例中的数据源ID,product对应于上述实施例中的选择产品,profile对应于上述实施例中的配置文件,begintime对应于上述实施例中的开始时间,endtime对应于上述实施例中的结束时间,detailviews对应于上述实施例中的维度,metrics对应于上述实施例中的指标,viewportfilters为上述实施例中的维度的过滤条件,orderby用于对查询到的数据按升序或降序排序;top用于规定要返回的查询到的数据的数目;datasource对应于上述实施例中的数据源ID,type为数据的输出格式(如表格格式),origin用于指示输出位置的起始位置,skipheaders用于表示输出的数据是否带有标题,textcelltemplate和datacelltemplate用于更改数据所在单元格的背景样式(如背景色、单元格形状等)。
需要进一步说明的是,datasource表达式用于根据该表达式中的参数从数据库查找数据并对其排序;dump表达式用于将datasource表达式查找到的数据输出至指定Excel单元格内;按照上述预设的数据源表达式格式和输出表达式格式保存所有从描述信息中提取到的预设条件。
例如,如图6所示,当获取了上述实施例中的基本参数。维度、指标及过滤条件之后,即可自动生成数据源表达式(即图6所示的datasource表达式)。
通过本发明的上述实施例,基于报表表达式参数的描述信息获取第一标识符、第二标识符、预设条件和输出参数生成数据源表达式以及输出表达式,可以使生成的报表模板符合用户的报表模板生成请求,提高报表表达式的准确率。
在本发明的上述实施例中,保存数据源表达式和输出表达式得到报表文件,并将报表文件的名称修改为预设名称,得到报表模板可以包括:将数据源表达式和输出表达式保存至不同的Excel单元格内;将Excel单元格的名称修改为预设名称,得到报表模板,其中,预设名称为TC_开头的名称。
具体地,将上述实施例中的数据源表达式和输出表达式保存至不同的Excel单元格内,并将数据源表达式和输出表达式所在的Excel单元格的名称修改为TC_开头的预设名称,最终得到报表模板。
例如,用户请求从Excel内的第一行第二列开始,以表格形式输出数据,那么dump表达式中的type即为表格输出格式,origin即为Excel内的第一行第二列,按照预设的输出表达式格式保存,得到输出表达式。
软件得到报表表达式和输出表达式之后,会将其输出至Excel的不同单元格内,并将单元格的名称修改为TC_开头的名称,得到报表模板。
需要进一步说明的是,输出参数还可以包括:待查询数据的输出格式(即上述实施例的type)、待查询数据的标题信息(即上述实施例中的skipheaders)以及待查询数据的输出位置的背景样式(即上述实施例中的textcelltemplate和datacelltemplate)等。
通过本发明上述实施例,利用数据源表达式的第一标识符,可以保证输出表达式与报表表达式一一对应,使后续的程序在运行报表表达式得到相关数据之后,能够按照对应的输出表达式将数据输出至输出参数指定的位置,使得运行报表模板得到的结果更加准确,提高了报表模板的可用性。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图10是根据本发明实施例的生成报表模板的装置的示意图,如图10所示,该检测装置可以包括:获取模块10、第一生成模块30、第二生成模块50以及处理模块70。
其中,获取模块10用于获取用户输入的报表表达式参数,其中,报表表达式参数包括:数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选待查询数据的预设条件、输出表达式的输出参数,其中,数据源表达式用于查询待查询数据,输出表达式用于指示待查询数据的输出位置;第一生成模块30用于基于第一标识符、第二标识符和预设条件,生成数据源表达式;第二生成模块50用于基于第一标识符和输出参数,生成输出表达式;处理模块70用于保存数据源表达式和输出表达式得到报表文件,并将报表文件的名称修改为预设名称,得到报表模板。
其中,预设名称为后续操作中的程序能够识别的名称,便于后续操作中的程序调用上述报表模板,以运行报表模板并最终得到要查询的数据;报表表达式可以包括数据源表达式和输出表达式。
采用本发明,在获取报表表达式参数时,通过获取模块自动获取用户输入的报表表达式参数,提高了查找报表表达式参数的速度,避免了手动输入报表表达式参数时的输入错误,基于上述自动获取的报表表达式参数生成报表表达式(即上述实施例中的数据源表达式和输出表达式),提高了基于此报表表达式生成的报表模板的准确性和生成报表模板的效率;得到报表文件后处理模块自动将其名称修改为预设名称,避免了手动编写报表模板时忘记修改报表文件名称,提高了报表模板的可用性。采用本发明实施例,解决了现有技术中获取报表模板的效率低、报表模板准确率低的问题,实现了提高生成报表模板的效率和报表模板准确率的效果。
根据本发明的上述实施例,该装置还可以包括:接收模块,用于在获取用户输入的报表表达式参数之前,接收用户的报表模板生成请求,其中,报表模板生成请求中携带有报表表达式参数的描述信息;获取模块可以包括:读取模块,用于从数据表中读取用户的数据存储系统;查找模块,用于从数据存储系统的数据库中查找描述信息所指示的待查询对象;第一提取模块,用于从待查询对象的配置文件中提取待查询数据的第二标识符。
具体地,接收到用户的报表模板生成请求之后,首先从数据表中读取该用户的数据存储系统;然后调用支持数据通信的应用程序从该数据存储系统的数据库中查找报表模板生成请求中携带的报表表达式参数的描述信息所指示的待查询对象;最后从该待查询对象的配置文件中提取待查询数据的第二标识符。
其中,数据表中存储有用户与数据存储系统的映射关系,每个用户对应一个数据存储系统;数据存储系统的数据库中可以包括一个或多个待查询对象;每个待查询对象具有唯一的一个配置文件,该配置文件中存储有一个或多个待查询数据的第二标识符。在上述实施例中,可以通过配置文件获取待查询对象的待查询数据的第二标识符。
在该实施例中,通过待查询数据的第二标识符可以得到待查询数据的数据源;该数据源位于在数据存储系统的数据库中。
可选地,上述实施例中的数据存储系统可以包括:Web Dissector、VideoDissector或者Mobile Dissector。其中,Web Dissector用于存储网页用户访问行为数据,Video Dissector用于存储视频用户访问行为数据,Mobile Dissector用于存储移动应用用户访问行为数据。
需要进一步说明的是,在上述实施例中,报表表达式参数的描述信息可以包括:时间信息、地域范围、待查询数据的第二标识符的描述信息、待查询数据的类型等。
其中,时间信息用于指示待查询数据生成的时间;地域范围用于指示待查询数据生成的地点;待查询数据的第二标识符的描述信息用于指示待查询数据的第二标识符;待查询数据的类型用于指示待查询数据应用的范围。
在本发明的上述实施例中,获取模块还可以包括:第二提取模块,用于从描述信息中提取预设条件,其中,预设条件包括:地域范围、待查询数据的时间信息、页面浏览信息和会话信息。
其中,地域范围根据上述实施例中的报表表达式参数中的地域范围确定;待查询数据的时间信息根据上述实施例中的报表表达式参数中的时间信息确定;页面浏览信息和会话信息根据上述实施例中的报表表达式参数中的待查询数据的类型确定。
根据不同的报表模板生成请求,预设条件可以为不同的条件。
可选地,预设条件可以包括:访问者信息,如是否为新访问者、访问者是否跳出页面、页面查看量或访问时长等;地域范围可以按国家查询数据,,以及进一步按照省份及城市名称查询数据;待查询数据的时间信息用于根据待查询数据生成的时间限制查询范围,如返回7月至8月的数据;会话信息可以包括访问量、综合浏览量、平均停留时间、页面跳出率、平均页面访问数等。上述实施例中的预设条件还可以包括所有页面浏览信息,如所有页面浏览量、页面停留时长、页面加载时长、页面访问深度、页面刷新率、着陆率、次访率以及退出率等。
通过本发明的上述实施例,从描述信息中提取预设条件,可以对待查询数据进行准确的限定,避免了手动查找并填写参数时错误率高的问题,提高了获取报表表达式参数的准确性。
根据本发明的上述实施例,第一生成模块可以包括:第一生成子模块,用于按照预设的数据源表达式格式保存第一标识符、第二标识符、地域范围、待查询数据的时间信息、页面浏览信息以及会话信息,生成数据源表达式;第二生成模块可以包括:第二生成子模块,用于按照预设的输出表达式格式保存第一标识符和预设的输出参数,生成输出表达式,其中,输出参数包括指示输出位置的起始位置的参数。
其中,预设的数据源表达式格式可以为:
#datasource(id={}&product={}&profile={}&begintime={}&endtime={}&detailviews={}&metrics={}&viewportfilters={}&orderby={}&top={})。
预设的输出表达式格式可以为:
#dump(datasource={}&type={}&origin={}&skipheaders={}&textcelltemplate={}&dat acelltemplate={})。
其中,{}为占位符,而不是真实数据;id对应于上述实施例中的数据源ID,product对应于上述实施例中的选择产品,profile对应于上述实施例中的配置文件,begintime对应于上述实施例中的开始时间,endtime对应于上述实施例中的结束时间,detailviews对应于上述实施例中的维度,metrics对应于上述实施例中的指标,viewportfilters为上述实施例中的维度的过滤条件,orderby用于对查询到的数据按升序或降序排序;top用于规定要返回的查询到的数据的数目;datasource对应于上述实施例中的数据源ID,type为数据的输出格式(如以图表、文本、表格等格式输出数据),origin用于指示输出位置的起始位置,skipheaders用于表示输出的数据是否带有标题,textcelltemplate和datacelltemplate用于更改数据所在单元格的背景样式(如背景色、单元格形状等)。
需要进一步说明的是,datasource表达式用于根据该表达式中的参数从数据库查找数据并对其排序;dump表达式用于将datasource表达式查找到的数据输出至指定Excel单元格内;按照上述预设的数据源表达式格式和输出表达式格式保存所有从描述信息中提取到的预设条件。
通过本发明的上述实施例,基于报表表达式参数的描述信息获取第一标识符、第二标识符、预设条件和输出参数生成数据源表达式以及输出表达式,可以使生成的报表模板符合用户的报表模板生成请求,提高报表表达式的准确率。
在本发明的上述实施例中,处理模块可以包括:保存模块,用于将数据源表达式和输出表达式保存至不同的Excel单元格内;修改模块,用于将Excel单元格的名称修改为预设名称,得到报表模板,其中,预设名称为TC_开头的名称。
具体地,将上述实施例中的数据源表达式和输出表达式保存至不同的Excel单元格内,并将数据源表达式和输出表达式所在的Excel单元格的名称修改为TC_开头的预设名称,最终得到报表模板。
需要进一步说明的是,输出参数还可以包括:待查询数据的输出格式(即上述实施例中的type)、待查询数据的标题信息(即上述实施例中的skipheaders)以及待查询数据的输出位置的背景样式(即上述实施例中的textcelltemplate和datacelltemplate)等。
通过本发明上述实施例,利用数据源表达式的第一标识符,可以保证输出表达式与报表表达式一一对应,使后续的程序在运行报表表达式得到相关数据之后,能够按照对应的输出表达式将数据输出至输出参数指定的位置,使得运行报表模板得到的结果更加准确,提高了报表模板的可用性。
本实施例中所提供的各个模块与方法实施例对应步骤所提供的使用方法相同、应用场景也可以相同。当然,需要注意的是,上述模块涉及的方案可以不限于方法实施例中的内容和场景,且上述模块可以运行在计算机终端或移动终端,可以通过软件或硬件实现。
从以上的描述中,可以看出,本发明实现了如下技术效果:
采用本发明,在获取报表表达式参数时,自动获取用户输入的报表表达式参数,提高了查找报表表达式参数的速度,避免了手动输入报表表达式参数时的输入错误,基于上述自动获取的报表表达式参数生成报表表达式(即上述实施例中的数据源表达式和输出表达式),提高了基于此报表表达式生成的报表模板的准确性和生成报表模板的效率;得到报表文件后自动将其名称修改为预设名称,避免了手动编写报表模板时忘记修改报表文件名称,提高了报表模板的可用性。采用本发明实施例,解决了现有技术中获取报表模板的效率低、报表模板准确率低的问题,实现了提高生成报表模板的效率和报表模板准确率的效果。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种生成报表模板的方法,其特征在于,包括:
获取用户输入的报表表达式参数,其中,所述报表表达式参数包括:数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选所述待查询数据的预设条件、输出表达式的输出参数,其中,所述数据源表达式用于查询所述待查询数据,所述输出表达式用于指示所述待查询数据的输出位置;
基于所述第一标识符、所述第二标识符和所述预设条件,生成所述数据源表达式;
基于所述第一标识符和所述输出参数,生成所述输出表达式;
保存所述数据源表达式和所述输出表达式得到报表文件,并将所述报表文件的名称修改为预设名称,得到所述报表模板,
其中,所述预设名称为后续操作中的程序能够识别的名称,以运行所述报表模板,得到查询的数据。
2.根据权利要求1所述的方法,其特征在于,
在获取所述用户输入的所述报表表达式参数之前,所述方法还包括:接收所述用户的报表模板生成请求,其中,所述报表模板生成请求中携带有所述报表表达式参数的描述信息;
获取所述待查询数据的所述第二标识符包括:
从数据表中读取所述用户的数据存储系统;
从所述数据存储系统的数据库中查找所述描述信息所指示的待查询对象;
从所述待查询对象的配置文件中提取所述待查询数据的所述第二标识符。
3.根据权利要求2所述的方法,其特征在于,
获取所述用户输入的所述用于筛选所述待查询数据的预设条件包括:从所述描述信息中提取所述预设条件,
其中,所述预设条件包括:地域范围、所述待查询数据的时间信息、页面浏览信息和会话信息。
4.根据权利要求3所述的方法,其特征在于,
所述基于所述第一标识符、所述第二标识符和所述预设条件,生成所述数据源表达式包括:
按照预设的数据源表达式格式保存所述第一标识符、所述第二标识符、所述地域范围、所述待查询数据的所述时间信息、所述页面浏览信息以及所述会话信息,生成所述数据源表达式;
所述基于所述第一标识符和所述输出参数,生成所述输出表达式包括:
按照预设的输出表达式格式保存所述第一标识符和预设的所述输出参数,生成所述输出表达式,其中,所述输出参数包括指示所述输出位置的起始位置的参数。
5.根据权利要求4所述的方法,其特征在于,保存所述数据源表达式和所述输出表达式得到报表文件,并将所述报表文件的名称修改为预设名称,得到所述报表模板包括:
将所述数据源表达式和所述输出表达式保存至不同的Excel单元格内;
将所述Excel单元格的名称修改为所述预设名称,得到所述报表模板,其中,所述预设名称为TC_开头的名称。
6.一种生成报表模板的装置,其特征在于,包括:
获取模块,用于获取用户输入的报表表达式参数,其中,所述报表表达式参数包括:数据源表达式的第一标识符、待查询数据的第二标识符和用于筛选所述待查询数据的预设条件、输出表达式的输出参数,其中,所述数据源表达式用于查询所述待查询数据,所述输出表达式用于指示所述待查询数据的输出位置;
第一生成模块,用于基于所述第一标识符、所述第二标识符和所述预设条件,生成所述数据源表达式;
第二生成模块,用于基于所述第一标识符和所述输出参数,生成所述输出表达式;
处理模块,用于保存所述数据源表达式和所述输出表达式得到报表文件,并将所述报表文件的名称修改为预设名称,得到所述报表模板,
其中,所述预设名称为后续操作中的程序能够识别的名称,以运行所述报表模板,得到查询的数据。
7.根据权利要求6所述的装置,其特征在于,
所述装置还包括:接收模块,用于在获取所述用户输入的所述报表表达式参数之前,接收所述用户的报表模板生成请求,其中,所述报表模板生成请求中携带有所述报表表达式参数的描述信息;
所述获取模块包括:
读取模块,用于从数据表中读取所述用户的数据存储系统;
查找模块,用于从所述数据存储系统的数据库中查找所述描述信息所指示的待查询对象;
第一提取模块,用于从所述待查询对象的配置文件中提取所述待查询数据的所述第二标识符。
8.根据权利要求7所述的装置,其特征在于,所述获取模块还包括:
第二提取模块,用于从所述描述信息中提取所述预设条件,
其中,所述预设条件包括:地域范围、所述待查询数据的时间信息、页面浏览信息和会话信息。
9.根据权利要求8所述的装置,其特征在于,
所述第一生成模块包括:
第一生成子模块,用于按照预设的数据源表达式格式保存所述第一标识符、所述第二标识符、所述地域范围、所述待查询数据的所述时间信息、所述页面浏览信息以及所述会话信息,生成所述数据源表达式;
所述第二生成模块包括:
第二生成子模块,用于按照预设的输出表达式格式保存所述第一标识符和预设的所述输出参数,生成所述输出表达式,其中,所述输出参数包括指示所述输出位置的起始位置的参数。
10.根据权利要求9所述的装置,其特征在于,所述处理模块包括:
保存模块,用于将所述数据源表达式和所述输出表达式保存至不同的Excel单元格内;
修改模块,用于将所述Excel单元格的名称修改为所述预设名称,得到所述报表模板,其中,所述预设名称为TC_开头的名称。
CN201410532753.7A 2014-10-10 2014-10-10 生成报表模板的方法和装置 Active CN104317839B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410532753.7A CN104317839B (zh) 2014-10-10 2014-10-10 生成报表模板的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410532753.7A CN104317839B (zh) 2014-10-10 2014-10-10 生成报表模板的方法和装置

Publications (2)

Publication Number Publication Date
CN104317839A CN104317839A (zh) 2015-01-28
CN104317839B true CN104317839B (zh) 2017-11-14

Family

ID=52373071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410532753.7A Active CN104317839B (zh) 2014-10-10 2014-10-10 生成报表模板的方法和装置

Country Status (1)

Country Link
CN (1) CN104317839B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138504A (zh) * 2015-09-07 2015-12-09 北京恒华伟业科技股份有限公司 一种报表生成方法及报表引擎
CN106681970B (zh) * 2015-11-11 2020-05-12 北京国双科技有限公司 报表生成方法和装置
CN107786530B (zh) * 2017-02-16 2019-12-13 平安科技(深圳)有限公司 文件交互系统及方法
CN106934021B (zh) * 2017-03-10 2020-06-23 深圳市科脉技术股份有限公司 模块化封装报表的处理方法和系统
CN108804478B (zh) * 2017-05-05 2021-05-25 北京京东尚科信息技术有限公司 二维数据处理方法、装置及计算机可读存储介质
CN107315782A (zh) * 2017-06-08 2017-11-03 北京奇艺世纪科技有限公司 一种数据查询方法及装置
CN110309315B (zh) * 2018-04-23 2024-02-02 腾讯科技(深圳)有限公司 模板文件的生成方法、装置、计算机可读介质及电子设备
CN109800402B (zh) * 2018-12-28 2023-08-08 广州明珞汽车装备有限公司 一种用于工艺仿真的设备信息处理方法及系统
CN112148751B (zh) * 2019-06-28 2024-05-07 北京百度网讯科技有限公司 用于查询数据的方法和装置
CN110532502B (zh) * 2019-08-26 2023-05-30 盐城工学院 一种基于Excel的机械公式表示系统及系统的使用方法
CN110555178B (zh) * 2019-08-28 2020-07-21 贝壳找房(北京)科技有限公司 数据代理方法及装置
CN110765750B (zh) * 2019-09-16 2024-03-15 平安科技(深圳)有限公司 报表数据录入方法及终端设备
CN112416865A (zh) * 2020-11-20 2021-02-26 中国建设银行股份有限公司 基于大数据的文件处理方法和装置
CN114297994A (zh) * 2021-12-23 2022-04-08 中冶南方工程技术有限公司 一种参数化报表生成的方法、系统、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1482430A2 (en) * 2003-05-27 2004-12-01 Cognos Incorporated System and method of transforming queries based upon e/r schema into multi-dimensional expression queries
CN101620591A (zh) * 2009-08-12 2010-01-06 国网电力科学研究院 一种基于单元格方式的组件化报表布局设计方法
CN101650712A (zh) * 2009-08-18 2010-02-17 深圳市科陆电子科技股份有限公司 一种自定义报表的生成管理方法及系统
CN101661460A (zh) * 2009-09-18 2010-03-03 上海宝信软件股份有限公司 管理系统报表生成方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1482430A2 (en) * 2003-05-27 2004-12-01 Cognos Incorporated System and method of transforming queries based upon e/r schema into multi-dimensional expression queries
CN101620591A (zh) * 2009-08-12 2010-01-06 国网电力科学研究院 一种基于单元格方式的组件化报表布局设计方法
CN101650712A (zh) * 2009-08-18 2010-02-17 深圳市科陆电子科技股份有限公司 一种自定义报表的生成管理方法及系统
CN101661460A (zh) * 2009-09-18 2010-03-03 上海宝信软件股份有限公司 管理系统报表生成方法和装置

Also Published As

Publication number Publication date
CN104317839A (zh) 2015-01-28

Similar Documents

Publication Publication Date Title
CN104317839B (zh) 生成报表模板的方法和装置
CN103368992B (zh) 一种信息推送方法及装置
CN106372113A (zh) 新闻内容的推送方法及系统
CN104408159B (zh) 一种数据关联、加载、查询方法及装置
CN104504077B (zh) 网页访问数据的统计方法和装置
CN105306495B (zh) 用户识别方法和装置
CN105955862A (zh) 一种异常问题的监测定位方法及装置
CN110415569B (zh) 校园课堂共享教育方法和系统
CN108805694A (zh) 信贷咨询服务方法、装置、设备及计算机可读存储介质
CN105989084A (zh) 一种回复问题的方法和设备
CN110288350A (zh) 用户价值预测方法、装置、设备及存储介质
CN106446170A (zh) 数据查询方法及装置
CN108038655A (zh) 部门需求的推荐方法、应用服务器及计算机可读存储介质
CN109902087A (zh) 用于问答的数据处理方法及装置、服务器
CN106598919A (zh) 文档生成的方法和装置
CN106255082A (zh) 一种垃圾短信的识别方法及系统
CN107291775A (zh) 错误样本的修复语料生成方法和装置
CN106487939A (zh) 一种确定用户ip子网的方法和装置、一种电子设备
CN101710927A (zh) 基于语音平台提供信息服务的方法和系统
CN104598351B (zh) 3d引擎兼容性的测试方法和装置
CN103297419A (zh) 线下线上数据融合方法及系统
CN110955835A (zh) 一种基于大数据技术的共享平台信息发布系统
CN107423307A (zh) 一种互联网信息资源的分配方法及装置
TW202006617A (zh) 雲端自助分析平台與其分析方法
CN111143688B (zh) 一种基于移动新闻客户端的评估方法及其系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and device for generating report form template

Effective date of registration: 20190531

Granted publication date: 20171114

Pledgee: Shenzhen Black Horse World Investment Consulting Co.,Ltd.

Pledgor: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

Registration number: 2019990000503

PE01 Entry into force of the registration of the contract for pledge of patent right
CP02 Change in the address of a patent holder

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Patentee after: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Patentee before: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder
PP01 Preservation of patent right

Effective date of registration: 20240604

Granted publication date: 20171114

PP01 Preservation of patent right