设为首页
加入收藏
帮助中心
首页 | 红盾通告 | 信息中心 | ASP技术 | 数据库 | 网页设计 | 网管专栏 | OICQ攻略 | 墨客频道 | 网站运营 |
当前位置:首页 >> ASP技术 >> 打印相关 >> 正文
最新信息
·关于网页中实现套打得解决…
·VC、IE、ASP环境下打印、预…
·弹出打印窗口,去掉网址显…
·ASP环境下轻松实现报表的打…
·在WEB环境下打印报表的cry…
·IE6.0打印机制解析
·巧用FileSystem组件实现WE…
·调用Word打印...
·ASP中实现网络打印功能
·关于在页面中解决打印的几…
资料搜索
热点信息
·关于网页中实现套打得解决…
·如何在ASP程序中打印Acces…
·弹出打印窗口,去掉网址显…
·VC、IE、ASP环境下打印、预…
·打印网页时怎么去掉页眉页…
·打印Web的完全技术版
·调用Word打印...
·WEB应用中报表打印的实现
·关于在页面中解决打印的几…
·以前收集的一些资料---如何…
推荐信息
·如何在ASP程序中打印Acces…
·弹出打印窗口,去掉网址显…
·打印Web的完全技术版
·在ASP程序中打印Excel报表…
·关于客户端用ASP参生报表(…
·WEB打印大全
·打印网页时怎么去掉页眉页…


Google
 
WEB应用中报表打印的实现
〖编辑:Cloudy | 浏览:人次〗

WEB应用中报表打印的实现

  随着世界范围内Internet环境的形成,全球正进入一个以网络为中心的计算时代。Web模型是在传统的C/S模型的基础上发展起来的一种新的Browser/Server计算模式。Browser/Server模型简化了C/S中的客户端,客户端只需装上操作系统、网络协议软件及浏览器;而服务器端则集中了所有的应用逻辑,开发、维护等几乎所有工作也都集中在服务器端。这时的客户机被称为瘦客户机,服务器被称为肥服务器。而WEB应用中的客户端的报表打印则没有C/S模型那么容易实现,如何在不使用ActiveX控件的情况下,实现打印字体、字体颜色、表格宽度、打印纸型等的设置。下面就以一个小例子来说明。

  一、 创建数据库

  用 ACCESS创建一个名为user.mdb的数据库,然后建一张名为user的表,表结构如下:

字段名称 数据类型

username 文本

name 文本

sex 文本

  二、 在asp中的实现

  创建一个名为aspreport.asp的文件,其源代码如下:

<%

'等到文本缓冲完才显示

response.buffer = true

dim accessdb, cn, rs, sql

'数据库名

accessdb="user.mdb"

'连接数据库

cn="DRIVER={Microsoft Access Driver (*.mdb)};"

cn=cn & "DBQ=" & server.mappath(accessdb)

'创建记录集

Set rs = Server.CreateObject("ADODB.Recordset")

'查询语句

sql = "select * from user "

'开始查询

rs.Open sql, cn

%>

<%

'告诉浏览器用word来显示文档内容

Response.ContentType = "application/msword"

'文档设定

response.AddHeader "content-disposition", "inline; filename=report.doc"

%>

<html>

<head>

<title>报表</title>

</head>

<body bgcolor="#FFFFFF">

<center><h1>报表</h1></center>

<table border=1 cellspacing=0 cellpadding=0 bordercolor=#000000 align=center>

<tr>

<td>用户名</td>

<td>真实姓名</td>

<td>性别</td>

</tr>

<%

'移到第一个记录

rs.movefirst

do while not rs.eof

%>

<tr>

<td><%= rs("username") %></td>

<td><%= rs("name") %></td>

<td><%= rs("sex") %></td>

</tr>

<%

'移到下一个记录

rs.movenext

loop %>

<%

'关闭记录集

rs.close

set rs=nothing

response.flush

response.end

%>

</table>

</body>

</html>

  把上面的report.asp文件和user.mdb数据库放在同一目录下,再用iis或pws把他们所在的目录发布,打开浏览器,只要客户端机子上有装word,就会自动调用word以内嵌方式在浏览器上显示,此时完全可以像使用word一样来调整和打印。

  三、 在jsp中的实现

  创建一个名为jspreport.jsp的文件,其源代码如下:

<%@ page contentType="application/msword;charset=gb2312" %>

<%@ page import="java.sql.*" %>

<html>

<head>

<title>报表</title>

</head>

<body bgcolor="#FFFFFF">

<center><h1>报表</h1></center>

<table border=1 cellspacing=0 cellpadding=0 bordercolor=#000000 align=center>

<tr>

<td>用户名</td>

<td>真实姓名</td>

<td>性别</td>

</tr>

<%

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url="jdbc:odbc:user";

//连接user数据库

Connection con=DriverManager.getConnection (url, "", "");

Statement stmt=con.createStatement();

ResultSet rs=stmt.executeQuery("select * from user ");

//查询user表

while(rs.next()){

%>

<tr>

<td><%= rs.getString("username") %></td>

<td><%= rs.getString("name") %></td>

<td><%= rs.getString("sex") %></td>

</tr>

<%

}

%>

<%

rs.close();

stmt.close();

con.close();

%>

</table>

  jsp的服务器以TOMCAT为例,把上面的jspreport.jsp和user.mdb放在TOMCAT的root目录下。在控制面板的ODBC中建立相应的DSN,类型mdb数据库,数据源名为user。启动TOMCAT,输入相应的url,就可以看到和以上面asp一样的效果。

  以上只是一个简单的例子,在作报表时,可以先用word设计好,然后另存为网页,再利用此网页改编成相应的脚本,就可以达到较好的效果。此方法有一个限制就是客户端要有word软件,但是会比使用ActiveX控件安全和方便,而且服务器端使用的平台与WebServer是可以比较灵活的,特别适用于基于web的OA系统。


录入时间:2006-07-25 21:33:50 [打印本页] [关闭窗口] [返回顶部]
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

Copyright © 2006-2014 0733168.Com Inc All Rights Reserved
关于我们 | 广告合作 | 联系我们 | 法律声明 | 友情链接 | 意见反馈
本站所收录信息、社区话题、及本站所做之广告均属其个人行为,与本站立场无关
湘ICP备06008436号