admin 管理员组

文章数量: 1184232


2024年4月24日发(作者:enable例句)

维普资讯

开发案例 

毕 俊 

(三峡大学电气信息学院,宜昌443o02) 

摘要:报表作为一种重要的信息载体。在企业的信息管理过程中的作用不容忽视.企业需要制作和 

管理一定数量、格式的报表在Intemet/Intranet环境下,报表的生成和管理.常用的方法是使 

用特定的信息管理工具生成特定格式的报表文档或转换成流行的电子表格文档格式,例如 

Excel文件格式,然后,对特定的文档进行传输,解释;报表的生成和管理存在较大的局限性, 

由此可见.研究一种Intemet/Intranet环境下的报表生成、管理模型具有重要的理论和实际 

意义。XML技术的出现.为网上数据的传输、处理、信息的共享等方面带来了新的方案,同 

时.也为开发基于Web的应用提供了新的思路。 

关键词:XML;PHP:通用报表 

1 PH P通用数据库接口模块 

PHP内置了对很多数据库的支持.而不再需要重 

新扩充,部分数据库不需安装任何客户端就可以Web 

服务器端直接用connect函数连接(如mysql,pgsq1), 

部分数据库需要在Web服务器端安装客户端才能正 

常连接(如oracle等)。编写一个通用的数据库接口程 

序,为安全及避免自定义函数名字冲突,使用类封装, 

结合用户提交的配置文件一起使PHP能够在异构数 

据库之间访问。 

图l设计实现流程图 

1 过程与方法 

(1)用户配置信息 

首先由“XML生成器”将数据(来自数据库或用 

该信息中应该包含以下内容:数据库服务器的地 

户输入等)放到一个符合事先定义好的DTD的XML 

址,数据库用户名、LI令.用户可以在提交这部分信息 

文档中,此文档对其中的数据内容进行描述,不包含 

后看到所选择的数据中的表名.以及表中对应字段的 

任何格式信息。然后由“XML转换器”将这个XML文 

字段名,有了这些信息后.用户可以开始设计报表,可 

档转换成包含显示样式信息的另一个XML文档。 

现 

以通过向导设计,也可以通过SQL语句设计。 

代 

最后可以由用户指定的常用报表软件输出、打印,如 

(2)XML Writer模块和XML TransforlTler模块 

计 

Excel、Acrobat Reader等读取这个文档.根据其中的 

用户提交了报表设计的向导设计步骤或SQL语 

算 

内容和显示样式生成用户想看到的界面。在这一个过 

句后,PHP脚本程序执行相应的查询任务,查询完成 

机 

^ 

程中,需要再次运用PHP的面向对象特性,构建出可 

后,不是简单的直接以HTML格式显示,还需要用 

总 

重用的类:XMLWriter(生成XML文件)、XMLParser 

PHP对查询结果做进一步的处理,通过PHP编写的 

第 

(解析XML文件)以及XMLTransforiner(对XSLT函 

XML Writer模块生成原始的XML数据文档,该XML 

二 

数的封装)。基本设计流程图如图1所示。 

文档包含原始的查询结果数据信息,然后,通过XML 

五 

三 

期 

v 

MO D ERN COM PUTE R 2叭2 囝 

维普资讯

开发案钠。 

Transformer模块,这些数据被定义到指定的报表编辑 

软件所能识别的XML定义格式。这两个模块对用户 

查询结果及用户输入信息的处理过程为:XMLWriter 

模块其实一个对用户查询结果及用户输入信息生成 

?¥XSLT=NEW XMLTransformer f’’sample.xsl” ”sam— 

pie.xml”); 

DrrD的xML文档的一个类,在这里,将以MySQL数 

据库为例,介绍该类的调用方法。 

其中,sample.xsl包含有该XML在报表编辑软件 

while(San=mysql_fetch_array(Sque)) 

{ 

中显示的具体样式的定义,用户通过报表编辑软件打 

开sample.xml的同时也打开了该XML文档链接的 

¥xml=new XmlWriter(); 

Sarray Sam 

xsl文档,从而能搞很好地显示出报表数据的样式。 

¥xml一>push(’¥tilte’)://表头信息 

¥xml一>push(‘¥define

namel’,¥array[OD); 

结 语 

该通用报表技术的思路非常明确,对大多数应用 

来说,都较为实用,不足之处在于,对于不同类别的报 

//¥define_name1 ¥deifne_name2,¥define—name3…为用户 

定义的显示查询结果字段的字段名,如果需要添加其它信 

息,可以在此堆栈中增加元素 

Sxml一>element(’Sdefine_name2’,¥array[1 1); 

¥xml一>element(’¥define—name3’,¥array[2]); 

¥xml->pop(); 

} 

¥xml一>pop(); 

表格式,如单据、报表、库存等需要逐个单独定义 

XML标记,这个问题的解决办法在于将这些报表格 

式分别制作成模板,让用户在初始的配置信息中选择 

对应的模板,从而选择相应的XML标记定义。 

参考文献 

【l】阮家栋,施美雅.Web数据库技术.北京:科学出版社, 

2002 

print¥xml一>getXml(); 

[2]AtkinsonL.PHP核心编程.陈虹译.北京:清华大学出版 

社.2o0O 

通过XMLWriter模块.可以得到一个包含报表所 

[31oe国万维网联盟.http://w3china.org/ 

(收稿日期:2007-01-04) 

需要信息的XML文档,用特定的XSL样式单为其加 

上格式信息。XML Transformer执行转换的代码如下: 

Generic Report FOrm with PH P 

BI Jun 

(Electrical Engineering and Information Technology College,Three Gorges University,Yichan 443000 China) 

现 

代 

计 

算 

机 

^ 

Abstract:Report form is a kind of important media for information,it plays important role in the process of 

ifornmation management of enterprise.Each enterprise needs to make and control a certain quantity of 

repoft forms in a certain given format.Under t}le environment of Internet/Intranet,the usual method to 

create and con ̄ol report forms iS to use special information controlling tool to create report forms file 

in a special format and t}len transfom it into popul ̄electronic form file format.such as Exce1.And 

then transmit and explain/describe the special file.For such way.£}1e creation and control of the report 

orms does exifst much limitation.ThUS.an important theory and real signiifcance to study on creation 

总 

第 

二 

and control model of report forms under t}le envionmentr of Internet/Intranet.Wit}l XML technology.it 

brings new solution for network data’S transmission,processing nd iaformatnion’S share.Simultaneously, 

it offers a new idea to develop W.eb application. 

Key words:XML:PHP:General Report Forms 

五 

三 

期 

l田》MODERN COM PUTER舢.2 


本文标签: 报表 用户 信息 数据库