CN1591392A - 一种实时修改客户端数据报表的方法 - Google Patents

一种实时修改客户端数据报表的方法 Download PDF

Info

Publication number
CN1591392A
CN1591392A CN 03156197 CN03156197A CN1591392A CN 1591392 A CN1591392 A CN 1591392A CN 03156197 CN03156197 CN 03156197 CN 03156197 A CN03156197 A CN 03156197A CN 1591392 A CN1591392 A CN 1591392A
Authority
CN
China
Prior art keywords
client
server end
report
server
parameter
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.)
Granted
Application number
CN 03156197
Other languages
English (en)
Other versions
CN100403294C (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 Huawei Digital 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 CNB031561977A priority Critical patent/CN100403294C/zh
Publication of CN1591392A publication Critical patent/CN1591392A/zh
Application granted granted Critical
Publication of CN100403294C publication Critical patent/CN100403294C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明有关一种实时修改客户端数据报表的方法,包括步骤:A)在服务器端进行报表配置;B)客户端通过调用服务器端的应用程序接口函数(API函数),取得自身在服务器端有使用权限的数据报表。本发明通过服务器端的数据配置可实时更新客户端的报表统计数据项、显示格式和权限;服务器端进行报表修改后,客户端程序无需进行升级即可实时得到修改后的报表。

Description

一种实时修改客户端数据报表的方法
技术领域
本发明涉及网络数据的处理技术,尤指通过在服务器端(Server)数据的配置而实现的客户端(Client)数据报表自动实时修改的方法。
背景技术
现有的报表实现方法主要有两种:Client端报表固定配置方法和Client端报表自行配置方法。
Client端报表固定配置方法,通过在Client端提供固定的一些配置好的报表模板,Client端程序通过读取这些报表模板,然后根据报表模板的数据项配置,连接到Server端取得数据填充到报表模板中生成最终显示出来的报表。
这种实现方法有以下缺陷:
1、报表的种类依赖于系统开发初期的报表设计,如果Client端开发时没有考虑到该报表,则该报表无法实现。
2、报表数据的显示格式、控制权限都是开发初期就定死的,在系统使用时不能进行修改。
Client端报表自行配置方法,通过在Client端提供一个报表编辑器,编辑器提供了用户可见的报表统计数据项,由用户自行通过报表编辑器编辑生成报表。
这种实现方法有以下缺陷:
1、自行进行报表的编辑对Client端用户的要求过高,Client端用户不可能全部对系统的数据项有很多的了解。
2、报表数据项的正确性无法得到很好的保证,因为统计数据项自行编辑,没有经过验证,且报表的格式无法统一。
3、不能控制Client端报表的权限,Client端用户可自行编辑自己的报表,这些报表的权限均无法控制。
发明内容
本发明提供一种通过服务器端数据配置实时修改客户端数据报表的方法,实现对表报格式及权限的统一管理。
本发明的方法,包括下列步骤:
A)在服务器端进行报表配置;
B)客户端通过调用服务器端的应用程序接口函数(API函数),取得自身在服务器端有使用权限的数据报表。
所述步骤A)包括在服务器端数据库建立报表的配置数据表,该报表的配置数据表包括报表基本信息表和报表参数表。
所述报表基本信息表至少包括有报表ID、报表名称、报表权限和报表类别字段;所述报表参数表至少包括有报表参数ID、报表参数名、报表参数关联的报表ID和参数数据类型字段。
所述步骤B)中客户端调用服务器端API函数是通过其API接口调用控件来实现的。
所述步骤B)更包括如下步骤:
B1)客户端登录服务器端后,向服务器端发出请求报表的类别信息,服务器端返回该客户有权使用的报表类别信息并显示于客户端的显示界面上;
B2)客户端向服务器端发出请求某类别下的报表信息,服务器端返回该客户有权使用的报表信息并显示于客户端的显示界面上;
B3)客户端向服务器端发出请求某报表的输入参数信息,服务器端返回该客户有权使用的输入参数信息并在客户端的显示界面上构建一输入参数的输入界面,以供使用者输入相关参数;
B4)客户端将输入参数传递给服务器端同时向服务器端发出请求报表结果的信息,服务器端根据客户端的输入参数返回该报表的结果信息并显示于客户端的显示界面上。
上述方法中当客户端登录服务器端后,从服务器端得到一唯一ID,客户端每次发出请求信息时,都将该唯一的ID传递给服务器端。
所述客户端有使用权限的数据报表可通过服务器端的报表配置进行设定或动态修改。
本发明方法具有如下优点:
1、通过服务器端的数据配置可实时更新客户端的报表统计数据项、显示格式和权限。
2、服务器端进行报表修改后,客户端程序无需进行升级即可实时得到修改后的报表。
3、报表数据项的获取、显示经过系统管理员的验证,实现报表的有效管理。
附图说明
图1为本发明方法中客户端向服务器端请求显示报表的信号交互过程示意图。
具体实施方式
本发明方法中首先需在服务器(Server)端进行报表配置,因此,在Server端数据库建立报表的配置数据表。
Server端报表的数据配置表详细说明如下:
(1)tblQueryTable
[表含义]
报表基本信息表
[表结构]
[QueryID][int]NOT NULL,
[QueryName][varchar](500)NOT NULL,
[ProcedureName][varchar](50)NOT NULL,
[Role][Varchar](50)NOT NULL,
[Category][varchar](200)NULL
[字段含义]
QueryID:报表ID。
QueryName:报表的名称。
ProcedureName:报表需要调用存储过程名。
Role:报表的权限列表。
Category:报表的类别。
(2)tblQueryParamTable
[表含义]
报表参数表
[表结构]
[ParamID][int]IDENTITY(0,1)NOT NULL,
[ParamName][varchar](200)NOT NULL,
[ParamSerialNo][int]NOT NULL,
[QueryID][int]NOT NULL,
[ParamTyPe][int]NOT NULL,
[InnerIDType][int]NOT NULL,
[IsAppClientID][bit]NOT NULL,
[IsOutIDType][bit]NOT NULL,
[InnerParamType][int]NOT NULL,
[SQL][varchar](512)NULL,
[ValueType][int]NOT NULL,
[ValueLen][int]NOT NULL,
[ValueParamName][varchar](50)NOT NULL
[字段含义]
ParamID:报表参数ID。
ParamName:报表参数名。
ParamSerialNo:报表参数的顺序号。
QueryID:参数关联的报表ID。
ParamType:参数数据类型。
InnerIDType:内部常量ID号。
InnerParamType:内部常量类型。
SQL:参数从数据库取出列表所检索用的SQL语句。
ValueType:对报表对应的存储过程输入参数的类型。
ValueLen:对报表对应的存储过程输入参数的长度。
ValueParamName:对报表对应的存储过程输入参数的参数名。
使用上述这两个报表的配置表,Server端就可以给Client端提供报表。
Server端为Client端提供的应用程序接口函数(API函数)详细说明如下:
(1)GetQueryCategory
[函数含义]
得到有权限的报表的类别
[函数说明]
通过该API函数取得当前用户在Server端有权限的报表的类别,用于Client端的显示,以及进一步获取每个类别下的报表。
[函数格式]
function GetQueryCategory(
var CategoryNum:Integer;
var CategoryArray:OLEVariant;
var ErrorInfo:string):Integer;
[参数说明]
CategoryNum:返回Client端当前用户有权限的报表类别的个数。
CategoryArray:返回Client端当前用户有权限的报表类别的类别名数组。
ErrorInfo:该函数执行失败时的错误信息。
[返回值说明]
整型,返回0表示成功,否则为错误号。
(2)GetQueryUnderCategory
[函数含义]
得到某类别下有权限的报表
[函数说明]
通过该API函数取得当前用户在某类别下有权限的报表,用于Client端的显示,以及进一步获取每个报表的参数信息。
[函数格式]
function GetQueryUnderCategory(
Category:string;
var QueryNum:Integer;
var IDArray,NameArray:OLEVariant;
var ErrorInfo:string):Integer;
[参数说明]
Category:报表类别名。
QueryNum:返回该类别下有权限报表的个数。
IDArray:返回该类别下有权限报表的ID数组。
NameArray:  返回该类别下有权限报表的报表名数组。
ErrorInfo:该函数执行失败时的错误信息。
[返回值说明]
整型,返回0表示成功,否则为错误号。
(3)GetQueryParamByQueryID
[函数含义]
得到某报表的输入参数列表
[函数说明]
通过该API函数取得当前用户在某报表中需要输入的参数列表,用于Client端报表输入参数的显示,以及进一步获取每个报表的查询结果信息。
[函数格式]
function GetQueryParamByQueryID(
QueryID:Integer;
var ParamNum:Integer;
var ParamInfo:array of TParamDesc;
var ErrorInfo:string):Integer;
[参数说明]
QueryID:报表ID。
ParamNum:返回该报表输入参数的个数。
ParamInfo:返回该报表的输入参数信息的数组。
ErrorInfo:该函数执行失败时的错误信息。
[返回值说明]
整型,返回0表示成功,否则为错误号。
(4)GetQueryDataByQueryID
[函数含义]
得到某报表的查询结果
[函数说明]
通过该API函数取得当前用户在某报表中的查询结果,用于Client端报表查询的显示。
[函数格式]
function GetQueryDataByQueryID(
QueryID,
ParamNum:Integer;
ParamNameArray,ParamValueArray:OLEVariant;
var FieldNum,RecordNum:Integer;
var FieldNameArray,RecordDataArray:OLEVatiant;
var ErrorInfo:string):Integer;
[参数说明]
QueryID:报表ID。
ParamNum:该报表输入参数的个数。
ParamNameArray:该报表输入参数的参数名数组。
ParamValueArray:该报表输入参数的参数值数组。
FieldNum:返回该报表查询结果集的字段数。
RecordNum:返回该报表查询结果集的记录条数。
FieldNameArray:返回该报表查询结果集的字段的字段名数组。
RecordDataArray:返回该报表查询结果集的记录的记录数组。
ErrorInfo:该函数执行失败时的错误信息。
[返回值说明]
整型,返回0表示成功,否则为错误号。
Client端通过API接口调用控件进行对Server端的上述API函数调用,得到报表信息,就可以显示出报表。
该接口调用控件可通过微软公司的DCOM协议来完成对Server端远程对象、远程方法的调用。
图1所示是Client端显示报表实现的信号交互过程示意图,其信号交互过程如下:
1、客户端登录服务器端后,向服务器端发出请求报表的类别信息,服务器端返回该客户有权使用的报表类别信息并显示于客户端的显示界面上;
2、客户端向服务器端发出请求某类别下的报表信息,服务器端返回该客户有权使用的报表信息并显示于客户端的显示界面上;
3、客户端向服务器端发出请求某报表的输入参数信息,服务器端返回该客户有权使用的输入参数信息并在客户端的显示界面上构建一输入参数的输入界面,以供使用者输入相关参数;
4、客户端将输入参数传递给服务器端同时向服务器端发出请求报表结果的信息,服务器端根据客户端的输入参数返回该报表的结果信息并显示于客户端的显示界面上。
上述过程中,Client通过输入用户名、密码登录Server后,得到该Client的唯一ID,Client的每个请求调用,都需要将唯一的Client的ID,传递给Server,Server通过数据库中tblQueryTable中Role字段的权限列表,进行用户权限的控制,过滤掉Client无权限的数据。另外,在GetQueryDataByQueryID函数中,Server也可以根据Client不同的权限,返回给Client不同的报表查询结果。这样,通过一种简便的方式,即可实现不同权限的用户,看到不同的报表,不同的报表输入参数,不同的报表查询结果,实现了非常灵活的报表机制。同时,通过在Server的数据库中的tblQueryTable表和tblQueryParamTable表中记录的实时增加、修改,可以方便的实现Client端报表的实时更新。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (7)

1、一种实时修改客户端数据报表的方法,包括下列步骤:
A)在服务器端进行报表配置;
B)客户端通过调用服务器端的应用程序接口函数(API函数),取得自身在服务器端有使用权限的数据报表。
2、如权利要求1所述的实时修改客户端数据报表的方法,其特征在于:所述步骤A)包括在服务器端数据库建立报表的配置数据表,该报表的配置数据表包括报表基本信息表和报表参数表。
3、如权利要求2所述的实时修改客户端数据报表的方法,其特征在于:所述报表基本信息表至少包括有报表ID、报表名称、报表权限和报表类别字段;所述报表参数表至少包括有报表参数ID、报表参数名、报表参数关联的报表ID和参数数据类型字段。
4、如权利要求1所述的实时修改客户端数据报表的方法,其特征在于:所述步骤B)中客户端调用服务器端API函数是通过其API接口调用控件来实现的。
5、如权利要求1所述的实时修改客户端数据报表的方法,其特征在于:所述步骤B)更包括如下步骤:
B1)客户端登录服务器端后,向服务器端发出请求报表的类别信息,服务器端返回该客户有权使用的报表类别信息并显示于客户端的显示界面上;
B2)客户端向服务器端发出请求某类别下的报表信息,服务器端返回该客户有权使用的报表信息并显示于客户端的显示界面上;
B3)客户端向服务器端发出请求某报表的输入参数信息,服务器端返回该客户有权使用的输入参数信息并在客户端的显示界面上构建一输入参数的输入界面,以供使用者输入相关参数;
B4)客户端将输入参数传递给服务器端同时向服务器端发出请求报表结果的信息,服务器端根据客户端的输入参数返回该报表的结果信息并显示于客户端的显示界面上。
6、如权利要求5所述的实时修改客户端数据报表的方法,其特征在于:当客户端登录服务器端后,从服务器端得到一唯一ID,客户端每次发出请求信息时,都将该唯一的ID传递给服务器端。
7、如权利要求1所述的实时修改客户端数据报表的方法,其特征在于:所述客户端有使用权限的数据报表可通过服务器端的报表配置进行设定或动态修改。
CNB031561977A 2003-09-04 2003-09-04 一种实时修改客户端数据报表的方法 Expired - Fee Related CN100403294C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031561977A CN100403294C (zh) 2003-09-04 2003-09-04 一种实时修改客户端数据报表的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031561977A CN100403294C (zh) 2003-09-04 2003-09-04 一种实时修改客户端数据报表的方法

Publications (2)

Publication Number Publication Date
CN1591392A true CN1591392A (zh) 2005-03-09
CN100403294C CN100403294C (zh) 2008-07-16

Family

ID=34598341

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031561977A Expired - Fee Related CN100403294C (zh) 2003-09-04 2003-09-04 一种实时修改客户端数据报表的方法

Country Status (1)

Country Link
CN (1) CN100403294C (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102024121A (zh) * 2009-09-16 2011-04-20 株式会社泛泰 平台安全设备及其方法
CN101166118B (zh) * 2007-09-30 2011-06-08 华为技术有限公司 一种用户配置信息处理方法以及业务报表系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1395193A (zh) * 2001-07-05 2003-02-05 英业达股份有限公司 在网页上生成动态可编辑表格的方法
CN1200382C (zh) * 2001-07-19 2005-05-04 英业达股份有限公司 数据更新方法以及系统
CN1189835C (zh) * 2002-02-10 2005-02-16 华为技术有限公司 报表的实现方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101166118B (zh) * 2007-09-30 2011-06-08 华为技术有限公司 一种用户配置信息处理方法以及业务报表系统
CN102024121A (zh) * 2009-09-16 2011-04-20 株式会社泛泰 平台安全设备及其方法
US8601599B2 (en) 2009-09-16 2013-12-03 Pantech Co., Ltd. Platform security apparatus and method thereof

Also Published As

Publication number Publication date
CN100403294C (zh) 2008-07-16

Similar Documents

Publication Publication Date Title
CN1304968C (zh) 服务处理装置、服务处理方法
CN1532753A (zh) 服务处理装置及服务处理方法
CN1556482A (zh) 一种用于实现数据库多表查询的数据处理方法
CN1786955A (zh) 用于管理相互相关的数据对象的方法和系统
CN1881978A (zh) 应用管理系统、应用管理方法、服务器以及通信系统
CN1192310A (zh) 为通信使用记帐
CN1913522A (zh) 基于xml文件的rss信息交互处理方法
CN1787459A (zh) 一种下发命令的方法和系统
CN101061688A (zh) 基于简单网络管理协议的网络管理设备和方法
CN101051937A (zh) 一种基于xml的用户权限管理方法及系统
CN1627311A (zh) 服务提供商个性化对于客户的事件通知的方法和系统
CN1960507A (zh) 手机用户间的信息共享与搜索方法
CN1858742A (zh) 一种在实时数据库中实现更新数据的方法和系统
CN100347682C (zh) 自动化测试构建方法
CN1839388A (zh) 数据库中xml模式的原地演进
CN1790957A (zh) 设备测试方法
CN1659847A (zh) 用于支持并行应用互操作性的系统和方法
CN101043368A (zh) 一种统一Web页面的方法及系统
CN1851700A (zh) 一种查询方法和系统以及一种查询转换装置
CN1791027A (zh) 网格信息模型系统及模型化处理网格信息的方法
CN1591392A (zh) 一种实时修改客户端数据报表的方法
CN1874532A (zh) 媒体网关控制器控制媒体网关进行放音的方法
CN1790307A (zh) 服务器装置及信息处理方法
CN1869982A (zh) 一种报表数据采集系统和方法
CN1276604C (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
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: HUAWEI DIGITAL TECHNOLOGY CO.

Free format text: FORMER OWNER: HUAWEI TECHNOLOGY CO., LTD.

Effective date: 20081010

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20081010

Address after: No. 3, information road, Haidian District, Beijing

Patentee after: Huawei Digit Technology Co., Ltd.

Address before: HUAWEI Service Center building, 1 FA FA Road, Nanshan District science and Technology Park, Shenzhen, Guangdong

Patentee before: Huawei Technologies Co., Ltd.

CP01 Change in the name or title of a patent holder

Address after: 100085 Beijing, Haidian District on the road, No. 3

Patentee after: Beijing Huawei Digital Technology Co.,Ltd.

Address before: 100085 Beijing, Haidian District on the road, No. 3

Patentee before: Huawei Digit Technology Co., Ltd.

CP01 Change in the name or title of a patent holder
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080716

Termination date: 20180904

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