|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
只要你想学,就没什么优缺点,上面那位大哥已经把网上的评论说了,但我认为想学哪个都一样,不然它就不可能在当今时代数字艺术方面存活到今天web|报表打印WEB使用中报表打印的完成
跟着天下局限内Internet情况的构成,环球正进进一个以收集为中央的盘算时期。Web模子是在传统的C/S模子的基本上开展起来的一种新的Browser/Server盘算形式。Browser/Server模子简化了C/S中的客户端,客户端只需装上操纵体系、收集协定软件及扫瞄器;而服务器端则会合了一切的使用逻辑,开辟、保护等几近一切事情也都会合在服务器端。这时候的客户机被称为瘦客户机,服务器被称为肥服务器。而WEB使用中的客户真个报表打印则没有C/S模子那末简单完成,怎样在不利用ActiveX控件的情形下,完成打印字体、字体色彩、表格宽度、打印纸型等的设置。上面就以一个小例子来讲明。
1、创立数据库
用ACCESS创立一个名为user.mdb的数据库,然后建一张名为user的表,表布局以下:
字段称号数据范例
username文本
name文本
sex文本
2、在asp中的完成
创立一个名为aspreport.asp的文件,其源代码以下:
<%
比及文本缓冲完才显现
response.buffer=true
dimaccessdb,cn,rs,sql
数据库名
accessdb="user.mdb"
毗连数据库
cn="DRIVER={MicrosoftAccessDriver(*.mdb)};"
cn=cn&"DBQ="&server.mappath(accessdb)
创立纪录集
Setrs=Server.CreateObject("ADODB.Recordset")
查询语句
sql="select*fromuser"
入手下手查询
rs.Opensql,cn
%>
<%
告知扫瞄器用word来显现文档内容
Response.ContentType="application/msword"
文档设定
response.AddHeader"content-disposition","inline;filename=report.doc"
%>
<html>
<head>
<title>报表</title>
</head>
<bodybgcolor="#FFFFFF">
<center><h1>报表</h1></center>
<tableborder=1cellspacing=0cellpadding=0bordercolor=#000000align=center>
<tr>
<td>用户名</td>
<td>实在姓名</td>
<td>性别</td>
</tr>
<%
移到第一个纪录
rs.movefirst
dowhilenotrs.eof
%>
<tr>
<td><%=rs("username")%></td>
<td><%=rs("name")%></td>
<td><%=rs("sex")%></td>
</tr>
<%
移到下一个纪录
rs.movenext
loop%>
<%
封闭纪录集
rs.close
setrs=nothing
response.flush
response.end
%>
</table>
</body>
</html>
把下面的report.asp文件和user.mdb数据库放在统一目次下,再用iis或pws把他们地点的目次公布,翻开扫瞄器,只需客户端机子上有装word,就会主动挪用word之内嵌体例在扫瞄器上显现,此时完整能够像利用word一样来调剂和打印。
3、在jsp中的完成
创立一个名为jspreport.jsp的文件,其源代码以下:
<%@pagecontentType="application/msword;charset=gb2312"%>
<%@pageimport="java.sql.*"%>
<html>
<head>
<title>报表</title>
</head>
<bodybgcolor="#FFFFFF">
<center><h1>报表</h1></center>
<tableborder=1cellspacing=0cellpadding=0bordercolor=#000000align=center>
<tr>
<td>用户名</td>
<td>实在姓名</td>
<td>性别</td>
</tr>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Stringurl="jdbc:odbc:user";
//毗连user数据库
Connectioncon=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement();
ResultSetrs=stmt.executeQuery("select*fromuser");
//查询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体系。
</p>ASP在国内异常流行,因为国内大多使用的是盗版的Windows和盗版的SQLServer,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP+MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护,因此对于不重视知识产权的国家来说也是一种不错的选择。 |
|