当前位置: 首页 > 图文教程 > 网络编程 > ASP > 利用ASP制作EXECL报表方法(二)

ASP
如何善用Response.Buffer增进浏览速度?
利用 Meta Tag 来增加文件属性
要如何使用 ASP Error 组件?
Server.Execute和#include相异之处
ASP中文本文件与数据库文件的数据交换
如何用ASP建立图表
如何在ASP中通过ODBC调用Excel中的数据
不刷新页面改变下拉菜单内容
使用ASP重启服务器
用模板建立动态ASP页
如何用ASP将一大段文字中的HTML的标识去掉
让使用者可以看到你的ASP的原代码
用ASP实现在特定的时段或对特定访问者开放
在ASP中判断SQL语句是否执行成功
直接显示Monday等星期的ASP语句
LINE 的计数器源程序(附源代码)
使用asp+中的若干问题及解决方案
ASP实现多语言支持
Session对象在各浏览器中的有效范围
SQL Server如何解决加密问题?

利用ASP制作EXECL报表方法(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 217 ::
收藏到网摘: n/a

  废话少说,请看代码:
runquery.asp

<%@ LANGUAGE="VBSCRIPT" %>
<%
'DSNless connection to Access Database
strDSNPath = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("testDB.mdb")
%>
<!--#include file="adovbs.inc" -->  请自己COPY这个文件
<%      
        server.scripttimeout=1000
    Response.Buffer    = True
    
    if(Request.Form("ReturnAS") = "Content") then
        Response.ContentType = "application/msexcel"
    end if
    Response.Expires = 0
    
    dim oConn
    dim oRS
    dim strSQL
    dim strFile
        
    Set oConn = Server.CreateObject("ADODB.Connection")
    Set oRS = Server.CreateObject("ADODB.Recordset")
    strSQL = BuildSQL()
        
    oRS.Open strSQL, strDSNPath, adOpenForwardOnly, adLockReadOnly, adCmdText
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <title>Excel Export Demo</title>
</head>
<body>
<%
    if(Request.Form("ReturnAS") = "CSV") then
        CreateCSVFile()
    else if(Request.Form("ReturnAS") = "Excel") then
        CreateXlsFile()        
    else if(Request.Form("ReturnAS") = "HTML") then
        GenHTML()
    else if(Request.Form("ReturnAS") = "Content") then
        GenHTML()        
    end if
    end if
    end if
    end if
   
    Set oRS = Nothing
    Set oConn = Nothing        
    Response.Flush
%>
</body>
</html>
<SCRIPT LANGUAGE=vbscript RUNAT=Server>
Function BuildSQL()
    dim strSQL
    dim strTemp
    
    strTemp = ""
    strSQL = "select year, region, sales_amt from sales"
    
    if(Request.Form("Year") <> "ALL") then
        strTemp = " where Year = "
        strTemp = strTemp & Request.Form("Year")
    end if
    
    if(Request.Form("Region") <> "ALL") then
        if(Len(strTemp) > 0) then
            strTemp = strTemp & " and Region = "
        else
            strTemp = strSTL & " where Region = "
        end if
   &nb