CN1318954C - 一种实现报表展示的方法 - Google Patents

一种实现报表展示的方法 Download PDF

Info

Publication number
CN1318954C
CN1318954C CNB2004100041239A CN200410004123A CN1318954C CN 1318954 C CN1318954 C CN 1318954C CN B2004100041239 A CNB2004100041239 A CN B2004100041239A CN 200410004123 A CN200410004123 A CN 200410004123A CN 1318954 C CN1318954 C CN 1318954C
Authority
CN
China
Prior art keywords
template
department
data
html
file
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.)
Expired - Fee Related
Application number
CNB2004100041239A
Other languages
English (en)
Other versions
CN1652074A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2004100041239A priority Critical patent/CN1318954C/zh
Publication of CN1652074A publication Critical patent/CN1652074A/zh
Application granted granted Critical
Publication of CN1318954C publication Critical patent/CN1318954C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种实现报表展示的方法,该方法为:按待展示的报表格式生成该报表对应的模板,并采用超文本标记语言(HTML)在该模板中定义与待展示数据之间的联系;生成所述模板的HTML文件;当执行所述HTML文件时,根据定义的联系从存放待显示数据的文件中获取数据填入报表中并展示该报表。

Description

一种实现报表展示的方法
技术领域
本发明涉及一种实现报表展示的方法。
背景技术
随着计算机软件技术的飞速发展,计算机软件系统已经成为现代企业不可缺少的运营支撑和管理手段,大量的报表也由原来的通过纸件制表完成,改为由计算机软件进行统计后完成展示。
早期的计算机报表皆是通过字符界面的程序进行展示,例如:
    工号   姓名   性别   部门   职务   电话     手机   电子邮件
    R0001   张重名   男   人事部   经理   28787408    13509663896   zcm@163.com
    R0002   李四   女   人事部   职员   28787408   li4@163.com
    C0001   王五   男   财务部   经理   28789687    13823250880   wang5@163.com
    C0003   丁六   女   财务部   会计师   28786144   ding6@163.com
    CO004   吴七   女   财务部   出纳   28786144   wu7@163.com
    W0001   朱八   男   网络部   经理   28787398    13923898722   zhu8@163.com
    W0002   黄九   男   网络部   工程师   28780808   huang9@163.com
    W0019   张重名   女   网络部   职员   28780808   zhangcm@163.com
    W0029   周十   男   网络部   职员   28780808   zhou10@163.com
随着计算机图形界面的逐步发展,报表展示进步到了比较美观的图形界面展现方式,如图1所示。
为了更加清晰美观的展示报表数据,计算机应用领域发展出了很多的报表展示手段,如:使用Excel等电子表格、使用Word文档等复杂文档模板、使用QuickReport、ReportBuilder等专用报表工具。
报表统计数据绝大多数都是二维表格数据,因此现在业界的报表主要展示手段之一就是将报表统计数据通过一个计算机界面上的表格控件(Component)展示出来。
图2为Borland公司的Delphi开发工具中的一个表格控件——DBGird,该控件通过与返回的结果数据表建立一对一的关系来显示报表数据,例如有如下表格数据需要进行报表展示:
 工号 姓名 性别 部门 职务 电话     手机  电子邮件
 R0001 张重名 人事部 经理 28787408  13509663896  zcm@163.com
 R0002 李四 人事部 职员 28787408  li4@163.com
 C0001 王五 财务部 经理 28789687  13823250080  wang5@163.com
 C0003 丁六 财务部 会计师 28786144  Ding6@163.com
 C0004 吴七 财务部 出纳 28786144  wu7@163.com
 W0001 朱八 网络部 经理 28787398  13923898722  zhu8@163.com
 W0002 黄九 网络部 工程师 28780808  huang9@163.com
 W0019 张重名 网络部 职员 28780808  zhangcm@163.com
 W0029 周十 网络部 职员 28780808  zhou10@163.com
则将该数据一一对应于表格控件中的列和行,如图1所示。
虽然上述诸多工具都能生成普通报表(即二维报表),但存在以下不足:
1、对于打印格式不容易控制,报表的图形展示和实际打印出来的纸件格式不一致,即所见非所得。
2、无法满足树型报表格式的需求,如下:
                 部门名称     职员人数
   ××公司               总经理室     1
人力资源部     考勤科     2
    薪酬科     2
    人事科     3
   财务部     出纳科     3
    会计科     4
    内部银行     2
   业务部 业务一部 市场拓展部     5
售前服务部     6
售后服务部     5
策划部     8
    业务二部 市场拓展部     7
售前服务部     5
售后服务部     5
  策划部        6
    ……     ……       ……   ……        ……
3、无法在报表上再进行二次运算。
发明内容
本发明的目的在于提供一种报表展示的方法,以使展示的报表格式与打印格式一致,还可生成树形报表和进行二次运算。
实现本发明的技术方案:
一种实现报表展示的方法,该方法为:按待展示的报表格式生成该报表对应的模板,并采用超丈本标记语言(HTML)在该模板中定义与待展示数据之间的联系;生成所述模板的HTML文件;当执行所述HTML文件时,根据定义的联系从存放待显示数据的文件中获取数据填入报表中并展示该报表。
其中:
所述报表为普通型报表或树型报表。
所述的模板采用HTML定义,或者采用电子表格,或者采用Word文档。
所述模板文件中还包括用HTML语言定义的用于完成报表中的数据运算的运算符,展示报表时进行二次运算并将结果填入报表。
对普通型报表,在模板文件中为该报表定义一个特别的行,在执行模板文件时根据待展示的数据行数复制该行。
本发明具有以下有益效果:
1、使报表的显示格式与打印格式一致,即所见即所得;
2、可以生成和打印树型报表;
3、允许在报表数据上进行二次运算。
附图说明
图1为现有技术中展示的报表;
图2为现有技术中的报表控件;
图3为本发明的流程图;
图4为本发明报表模板图;
图5为本发明展示的报表图;
图6A为本发明的树型报表模板图;
图6B为本发明展示的树型报表图。
具体实施方式
计算机软件系统中的报表展示究其根本就是把一些数据通过计算机的界面展示出来,并能支持打印功能。这些要展示的数据中大部分都是一个二维的数据表格(在计算机术语中常把“列”称为“字段”(“Field”),把“行”称为“记录”(“Record”),因此第2行第3列又可以称为第2条记录的第3个字段。)。
例如:
第1列 第2列 第3列 第4列 第5列 第6列  第7列  第8列
第1行 R0001 张重名 人事部 经理 28787408  13509663896  zcm@163.com
第2行 R0002 李四 人事部 职员 28787408  li4@163.com
第3行 C0001 王五 财务部 经理 28789687  13823250080  wang5@163.com
第4行 C0003 丁六 财务部 会计师 28786144  ding6@163.com
第5行 C0004 吴七 财务部 出纳 28786144  wu7@163.com
第6行 W0001 朱八 网络部 经理 28787398  13923898722  zhu8@163.com
第7行 W0002 黄九 网络部 工程师 28780808  huang9@163.com
第8行 W0019 张重名 网络部 职员 28780808  zhangcm@163.com
第9行 W0029 周十 网络部 职员 28780808  zhou10@163.com
为了解决现有技术中存在的问题,本发明采用基于Html文件作为报表模板,通过在模板中定义和待展示的数据集之间建立关联来展现最后的数据,即首先编辑一个Html的模板,通过在模板中使用特殊的文字定义模板的显示部分和结果数据之间的关系,通过报表展示工具最后阶段合成最终需要的报表,即可以理解为:报表模板+报表数据=最终报表。
参阅图3所示,具体处理流程如下:
步骤10:按待展示报表定义、编辑报表模板,在模板中使用特殊的文字定义模板的显示部分和结果数据之间的关系。
步骤20:生成所述报表模板的HTML文件。
步骤30:执行HTML文件以展示报表。
步骤40:从存放统计数据(待显示数据)的二维表中获得数字并填入报表相应的部分。
步骤50:根据报表中的运算符完成二次运算并将结果填入报表。
步骤60:展示最终报表。包括显示和打印等输出方式。
为了更清楚地说明本发明,下面使用两个例子进一步说明:
例一:
有如下一个二维表格数据需要生成报表:
 工号 姓名 性别 部门 职务 电话     手机  电子邮件
 RO001 张重名 人事部 经理 28787408  13509663896  zcm@163.com
 R0002 李四 人事部 职员 28787408  li4@163.com
 C0001 王五 财务部 经理 28789687  13823250080  wang5@163.com
 C0003 丁六 财务部 会计师 28786144  ding6@163.com
 C0004 吴七 财务部 出纳 28786144  wu7@163.com
 W0001 朱八 网络部 经理 28787398  13923898722  zhu8@163.com
 W0002 黄九 网络部 工程师 28780808  huang9@163.com
 W0019 张重名 网络部 职员 28780808  zhangcm@163.com
 W0029 周十 网络部 职员 28780808  zhou10@163.com
定义该报表模板如图4所示,模板的原始HTML文件如下:
<HTML>
<HEAD>
<TITLE>@Value(Title)</TITLE>
<META CONTENT=″text/html;charset=gb2312″HTTP-EQUIV=″Content-Type″>
<META CONTENT=″Microsoft FrontPage 5.0″NAME=″GENERATOR″>
<META CONTENT=″FrontPage.Editor.Document″NAME=″ProgId″>
<STYLE>
BODY  {       FONT-FAMILY:宋体,Arial;FoNT-SIZE:14px      }
P    { FONT-FAMILY:宋体,Arial;FONT-SIZE:14px;LINE-HEIGHT:18pt         }
TABLE  {     FONT-FAMILY:宋体,Arial;FONT-SIZE:14px  }
</STYLE>
</HEAD>
<BODY>
<P ALIGN=″center″><FONT SIZE=″4″COLOR=″#0000FF″><B>职员信息统计报表
</B></FONT></P>
<P>统计部门:XXX公司</P>
<TABLE ALIGN=″center″BORDER=″1″cellPadding=″5″cellSpacing=″0″
WIDTH=″100%″>
  <TR>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″2″><B>工号
</B></FONT></TD>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″2″><B>姓名
</B></FONT></TD>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″2″><B>性别
</B></FONT></TD>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″2″><B>部门
</B></FONT></TD>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″2″><B>职务
</B></FONT></TD>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″2″><B>电话
</B></FONT></TD>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″ 2″><B>手机
</B></FONT></TD>
    <TD ALIGN=″middle″bgColor=″#d5d5d5″><FONT SIZE=″2″><B>电子邮件
</B></FONT></TD>
  </TR>
  <TR Name=″ByRecord″>
    <TD ALIGN=″middle″>@Field(0)</TD>
    <TD ALIGN=″middle″>@Field(1)</TD>
    <TD ALIGN=″middle″>@Field(2)</TD>
    <TD ALIGN=″middle″>@Field(3)</TD>
    <TD ALIGN=″middle″>@Field(4)</TD>
    <TD ALIGN=″middle″>@Field(5)</TD>
    <TD ALIGN=″middle″>@Field(6)</TD>
    <TD ALIGN=″middle″>@Field(7)</TD>
  </TR>
</TABLE>
<P>打印时间:
@Value(Now)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&
nbsp;&nbsp;&nbsp;第@Value(PageIndex)页/共@Value(TotalPage)页</P>
</BODY>
</HTML>
在报表模板中定义了一个特别的行TR,其有个属性为Name=“ByReord”,通过该配置,报表工具就知道了要根据实际的记录数将该行复制多份;该行中的每一个单元格为一个显示项目,每个项目通过“@Field(n)”和统计报表数据中的第n个字段建立数据关联,即Field(0)就是第1个字段的值,依此类推。
通过报表工具将模板和数据进行整合以后生成最终的报表如图5所示。
例二:要生成如下树型结构的报表:
                 部门名称     职员人数
    ××公司               总经理室     1
人力资源部     考勤科     2
    薪酬科     2
    人事科     3
    小计     7
财务部     出纳科     3
    会计科     4
    内部银行     2
    小计     9
业务部 业务一部 市场拓展部     5
售前服务部     6
售后服务部     5
策划部     8
小计     24
业务二部 市场拓展部     7
售前服务部     5
售后服务部     5
策划部     6
小计     23
    合计     47
                总计     63
实际在计算机内部保存的还是如下的一张二维数据表:
  部门编码     部门名称     职员人数
  010000     总经理室     1
  020100     考勤科     2
  020200     薪酬科     2
  020300     人事科     3
  030100     出纳科     3
  030200     会计科     4
  030300     内部银行     2
    040101     市场拓展部     5
    040102     售前服务部     6
    040103     售后服务部     5
    040104     策划部     8
    040201     市场拓展部     7
    040202     售前服务部     5
    040203     售后服务部     5
    040204     策划部     6
它的每一条记录并没有表现出任何的树型关系(父子关系),它仅仅记录了叶子节点部门的职员人数,但每个部门的部门编码是唯一不重复的,通过部门编码这个字段可以唯一的定位到上述表格中一条记录。
根据需求生成如图6A所示的报表模板:其中的每个“@Value(KeyField,FieldIndex)”为一个报表显示项目,其意义是通过KeyField的值(这里就是部门编码)来定位到一条记录,后面的FieIdndex代表要将该条记录的第几个字段填写在该单元格(这里使用的是第2个字段-职员人数),该定义后面的等号意义为将该项目取个别名为XXX(如第一个的“@Value(010000,2)”取名为“al”);@Sum运算符就是报表工具的二次运算功能(这里的@Sum是求和,如“@Sum(a21,a22,a23)”就是将别名为a21、a22和a23的单元格中的数值进行求和。
通过上述的数据填写和二次计算功能,生成如图6B所示的最终报表。
由上可知,本发明在报表模板基础上生成最终报表,因此报表的设计、展示和打印都是基于报表模板,使用户能够获得统一的展示效果,解决了所见非所得的问题;其次,因为报表是基于模板的,所以可以在设计时将报表直接设计成树型结构,解决了传统报表工具无法生成树型报表的问题;最后,因为是通过报表工具在模板上填写报表数据完成最终报表,所以在完成报表数据填写后,报表工具还可以根据模板中的指定运算符完成一些二次运算。

Claims (5)

1、一种实现报表展示的方法,其特征在于该方法为:
按待展示的报表格式生成该报表对应的模板,并采用超文本标记语言HTML在该模板中定义与待展示数据之间的联系;
生成所述模板的HTML文件;
当执行所述HTML文件时,根据定义的联系从存放待显示数据的文件中获取数据填入报表中并展示该报表。
2、如权利要求1所述的方法,其特征在于,所述报表为普通型报表或树型报表。
3、如权利要求1或2所述的方法,其特征在于,所述的模板采用HTML定义,或者采用电子表格,或者采用Word文档。
4、如权利要求1所述的方法,其特征在于,所述模板文件中还包括用HTML语言定义的用于完成报表中的数据运算的运算符,展示报表时进行二次运算并将结果填入报表。
5、如权利要求2所述的方法,其特征在于,对普通型报表,在模板文件中为该报表定义一个特别的行,在执行模板文件时根据待展示的数据行数复制该行。
CNB2004100041239A 2004-02-07 2004-02-07 一种实现报表展示的方法 Expired - Fee Related CN1318954C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100041239A CN1318954C (zh) 2004-02-07 2004-02-07 一种实现报表展示的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100041239A CN1318954C (zh) 2004-02-07 2004-02-07 一种实现报表展示的方法

Publications (2)

Publication Number Publication Date
CN1652074A CN1652074A (zh) 2005-08-10
CN1318954C true CN1318954C (zh) 2007-05-30

Family

ID=34867630

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100041239A Expired - Fee Related CN1318954C (zh) 2004-02-07 2004-02-07 一种实现报表展示的方法

Country Status (1)

Country Link
CN (1) CN1318954C (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467378A (zh) * 2010-11-11 2012-05-23 深圳市金蝶友商电子商务服务有限公司 基于二维矩阵的html表格处理方法及计算机
CN103530082B (zh) * 2013-10-22 2016-04-13 天脉聚源(北京)传媒科技有限公司 一种信息展示方法和装置
CN103605801B (zh) * 2013-12-05 2017-01-11 用友网络科技股份有限公司 一种管理单据数据的方法和系统
CN105955730A (zh) * 2016-04-26 2016-09-21 浪潮电子信息产业股份有限公司 一种ssr集中管理平台报表的方法
CN106372148B (zh) * 2016-08-30 2020-01-10 成都科来软件有限公司 一种基于统计数据对报表进行配置和展现的方法
CN107818501B (zh) * 2017-03-03 2021-01-08 平安医疗健康管理股份有限公司 精算方法和装置
CN109815281A (zh) * 2019-01-28 2019-05-28 四川爱信诺航天信息有限公司 一种界面展示系统及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003024053A2 (en) * 2001-09-13 2003-03-20 International Business Machines Corporation Method and system for delivering dynamic information in a network
CN1416078A (zh) * 2001-10-30 2003-05-07 艾默生网络能源有限公司 监控系统的数据处理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003024053A2 (en) * 2001-09-13 2003-03-20 International Business Machines Corporation Method and system for delivering dynamic information in a network
CN1416078A (zh) * 2001-10-30 2003-05-07 艾默生网络能源有限公司 监控系统的数据处理方法

Also Published As

Publication number Publication date
CN1652074A (zh) 2005-08-10

Similar Documents

Publication Publication Date Title
US11520978B2 (en) Form customization method and device
US7251776B2 (en) System and method for efficiently and flexibly utilizing spreadsheet information
US7228497B2 (en) System and method for automated generation of XML transforms
US20110283182A1 (en) Graphical creation of a document conversion template
CN109062567A (zh) 基于b/s结构的信息管理系统快速开发平台
KR20080043327A (ko) 스프레드쉬트 문서의 파라미터의 지정, 설정 및 발견
CN102722616B (zh) 一种基于Excel绘制勘探点平面图的方法
US8782508B2 (en) Manipulating labelled data for data entry in management applications
CN107943773B (zh) 一种面向航天产品的交互式电子技术手册开发系统和方法
JP2008234370A (ja) 文書処理装置及び文書処理方法
US20070067341A1 (en) Automated user interface functional requirements tool
JP7209306B2 (ja) テンプレートに基づくエクセル文書のオンライン作業システム
US20040049739A1 (en) Project structure
Renfro Econometric software: The first fifty years in perspective
CN110968294A (zh) 一种业务领域模型建立系统及方法
CN109299074A (zh) 一种基于模板化数据库视图的数据校验方法及系统
CN1318954C (zh) 一种实现报表展示的方法
JP7339628B2 (ja) エクセルツールを用いたオンラインレポート作成システム
WO2007081017A1 (ja) 文書処理装置
CN111401023B (zh) 一种报表生成方法、装置、服务器及存储介质
CN103699746B (zh) 基于数据库的cadds5管系三维设计方法及系统
JPS6186865A (ja) 文書作成装置
CN112115694A (zh) 一种基于多元组数据结构的仿真报告生成方法及装置
Cellary et al. Web-based business-to-business negotiation support
Gruhn et al. A research perspective on computer-assisted office work

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070530

Termination date: 20220207

CF01 Termination of patent right due to non-payment of annual fee