亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > ASP > 正文

用ASP創建(生成)PDF文件的代碼

2024-05-04 11:07:00
字體:
來源:轉載
供稿:網友

下面即是用ASP創建(生成)PDF文件的代碼

<%
Option Explicit

Sub CheckXlDriver()
On Error Resume Next

Dim vConnString
Dim oConn, oErr

' try to connect to file NUL:
vConnString = "DRIVER={Microsoft Excel Driver (*.xls)};DBQ=NUL:"

Set oConn = CreateObject("ADODB.Connection")
oConn.Open vConnString

For Each oErr in oConn.Errors
' when the Excel driver reports "Failure creating file",
' then it must be installed and working ;-))
If oErr.NativeError = -5036 Then
Exit Sub
End If
Next

Response.Write "Provider or Driver not available. (Re-)Install MDAC.

"

Response.Write hex(Err.Number) & " " & Err.Description & "
"
For Each oErr in oConn.Errors
Response.Write hex(oErr.Number) & " " & oErr.NativeError & " " & oErr.Description & "
"
Next
Response.End

End Sub

Function GetConnection(vConnString)
On Error Resume Next

Set GetConnection = Server.CreateObject("ADODB.Connection")
GetConnection.Open vConnString

If Err.Number <> 0 Then
Set GetConnection = Nothing
End If

End Function

Function OptionTag(vChoice,vTrue)
Dim vSelected

If vTrue Then
vSelected = "selected"
End If

OptionTag = "<option " & vSelected & ">" & _
Server.HtmlEncode(vChoice) & "</option>" & vbCrLf

End Function

Function IsChecked(vTrue)
If vTrue Then
IsChecked = "checked"
End If
End Function

Function BookOptions(vXlFile)
Dim vServerFolder
Dim oFs, oFolder, oFile

Dim vSelected

vServerFolder = Server.MapPath(".")

Set oFs = Server.CreateObject("Scripting.FileSystemObject")
Set oFolder = oFs.GetFolder(vServerFolder)

For Each oFile in oFolder.Files
If oFile.Type = "Microsoft Excel Worksheet" Then
vSelected = (oFile.Name = vXlFile)

BookOptions = BookOptions & _
OptionTag(oFile.Name, vSelected)
End If
Next

Set oFolder = Nothing
Set oFs = Nothing

End Function

Function NamedRangeOptions(oConn, vXlRange, vTableType)
Dim oSchemaRs
Dim vSelected

NamedRangeOptions = OptionTag(Empty, Empty)

If TypeName(oConn) = "Connection" Then
Set oSchemaRs = oConn.OpenSchema(adSchemaTables)

Do While Not oSchemaRs.EOF
If oSchemaRs("TABLE_TYPE") = vTableType Then
vSelected = (oSchemaRs("TABLE_NAME") = vXlRange)
NamedRangeOptions = NamedRangeOptions & _
OptionTag(oSchemaRs("TABLE_NAME"), vSelected)

End If

oSchemaRs.MoveNext
Loop

End If
End Function

Function DataTable(oConn, vXlRange, vXlHasHeadings)
On Error Resume Next

' from OleDbVbc.inc
Const DB_E_ERRORSINCOMMAND = &H80040E14

Dim oRs, oField
Dim vThTag, vThEndTag

If vXlHasHeadings Then
vThTag = "<th>"
vThEndTag = "</th>"
Else
vThTag = "<td>"
vThEndTag = "</td>"
End If

DataTable = "<table border=1>"

If TypeName(oConn) = "Connection" Then
Set oRs = oConn.Execute("[" & vXlRange & "]")

If oConn.Errors.Count > 0 Then
For Each oConnErr in oConn.Errors
If oConnErr.Number = DB_E_ERRORSINCOMMAND Then
DataTable = DataTable & _
"<tr><td>No such range :</td><th>" & vXlRange & "</th></tr>"
Else
DataTable = DataTable & _
"<tr><td>" & oConnErr.Description & "</td></tr>"
End If
Next
Else
DataTable = DataTable & "<tr>"

For Each oField in oRs.Fields
DataTable = DataTable & vThTag & oField.Name & vThEndTag
Next

DataTable = DataTable & "</tr>"

Do While Not oRs.Eof
DataTable = DataTable & "<tr>"

For Each oField in oRs.Fields
DataTable = DataTable & "<td>" & oField.Value & "</td>"
Next

DataTable = DataTable & "</tr>"
oRs.MoveNext
Loop

End If

Set oRs = Nothing
Else

DataTable = DataTable & "<tr><td>File locked by another application or otherwise not accessible. Cannot continue.</td></tr>"
End If

DataTable = DataTable & "</table>"
End Function


' --main--
%>
<html>
<head>
<title>Read Excel</title>
<SCRIPT LANGUAGE=javascript>
<!--
function XlBook_onchange(theForm) {
with (theForm) {
XlSheet.selectedIndex = 0;
XlSheet.disabled = true;
XlNamedRange.selectedIndex = 0;
XlNamedRange.disabled = true;
XlTypedRange.value = "A:IV";
}
}

function XlSheet_onchange(theForm) {
with (theForm) {
XlNamedRange.selectedIndex = 0;
XlTypedRange.value = XlSheet.options[XlSheet.selectedIndex].text;
}
}

function XlNamedRange_onchange(theForm) {
with (theForm) {
XlSheet.selectedIndex = 0;
XlTypedRange.value = XlNamedRange.options[XlNamedRange.selectedIndex].text;
}
}

function XlTypedRange_onchange(theForm) {
with (theForm) {
XlSheet.selectedIndex = 0;
XlNamedRange.selectedIndex = 0;
}
}

//-->
</SCRIPT>
</head>
<body>
<%
Dim vXlFile, vXlFilePath
Dim vXlRange, vXlHasHeadings
Dim vDisabled

Dim vConnString
Dim oConn, oConnErr

Const adSchemaTables = 20 ' from adovbs.inc

CheckXlDriver ' make sure it is working

vXlFile = Request("XlBook")

If vXlFile <> Empty Then

vXlRange = Request("XlTypedRange")

If vXlRange = Empty Then
vXlRange = "A:IV"
Else
vXlRange = Replace(vXlRange, "!", "$")
End If

vXlHasHeadings = Request("XlHasHeadings")

' establish connection
vXlFilePath = Server.MapPath(vXlFile)
vConnString = "DRIVER={Microsoft Excel Driver (*.xls)};ReadOnly=1;DBQ=" & _ vXlFilePath

Set oConn = GetConnection(vConnString)

Else
vDisabled = "disabled"
End If

%>
<form name=MyForm method="POST" action="<%=Request.ServerVariables("SCRIPT_NAME")%>">
 <table border="1" width="100%">
  <tr>
   <th>Workbook :</th>
   <td>
   <select name="XlBook" LANGUAGE=javascript onchange="return XlBook_onchange(MyForm)">
    <%= BookOptions(vXlFile) %>
    </select></td>
   <td align="center">Worksheet :</td>
   <td><select <%=vDisabled%> name="XlSheet" LANGUAGE=javascript onchange="return XlSheet_onchange(MyForm)">
    <%= NamedRangeOptions(oConn, vXlRange, "SYSTEM TABLE") %>
    </select></td>
  </tr>
<tr>
   <th>Range :</th>
   <td><input type="text" name="XlTypedRange" LANGUAGE=javascript onchange="return XlTypedRange_onchange(MyForm)"
    value ="<%= vXlRange %>"></td>
   <td align="center">Named Range :</td>
   <td><select <%=vDisabled%> name="XlNamedRange" LANGUAGE=javascript onchange="return XlNamedRange_onchange(MyForm)">
    <%= NamedRangeOptions(oConn, vXlRange, "TABLE") %>
    </select></td>
  </tr>
  <tr>
   <th>
    <p> </th>
   <td colspan="3">
    <input type="checkbox" name="XlHasHeadings"
    <%= IsChecked(vXlHasHeadings) %>
    value="True"> Show first row as column headings</td>
  </tr>
  <tr>
   <th>
    <p> </th>
   <td colspan=3>
    <a href=<%= vXlFile %>><%= vXlFile %></a>
   </td>
  </tr>
 </table>
 <input type="submit" value="Submit" name="cmdSubmit"> 
 <input type="reset" value="Reset" name="cmdReset">
</form><hr>
<%
If vXlRange <> Empty Then
Response.Write DataTable(oConn, vXlRange, vXlHasHeadings)
End If
%>
</body>
</html>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91在线观看欧美日韩| 国产日产欧美精品| 欧美大片大片在线播放| 懂色av影视一区二区三区| 777午夜精品福利在线观看| 一本大道亚洲视频| 日韩av影片在线观看| 国产日韩中文字幕在线| 亚洲新声在线观看| 国产精品美女呻吟| 国产精品欧美日韩久久| 亚洲国产成人久久| 97视频在线观看网址| 成人久久久久爱| 欧美激情视频一区| 欧美在线亚洲一区| www.日韩av.com| 日本成人黄色片| 国产精品久久久久av| 伊人男人综合视频网| 国产日韩欧美夫妻视频在线观看| 亚洲加勒比久久88色综合| 精品国产一区二区三区久久| 国产欧洲精品视频| 成人福利在线观看| 亚洲自拍欧美另类| 欧美性xxxx极品高清hd直播| 色悠久久久久综合先锋影音下载| 国产精品草莓在线免费观看| 日韩精品中文字幕久久臀| 亚洲wwwav| 亚洲成色777777女色窝| 欧美一级大胆视频| 欧美成人sm免费视频| 国产成人一区二区三区电影| 亚洲视频999| 中文字幕精品av| 97成人超碰免| 亚洲国语精品自产拍在线观看| 最近2019年手机中文字幕| 91av国产在线| 日韩精品中文字幕久久臀| 国产成人一区三区| 日韩中文在线视频| 国产69精品久久久久99| 久久黄色av网站| 欧美日韩国产丝袜另类| 日韩精品免费综合视频在线播放| 永久免费看mv网站入口亚洲| 欧美午夜宅男影院在线观看| 欧美黑人视频一区| 久久男人av资源网站| 91av视频在线免费观看| 亚洲国产精品一区二区三区| 欧美极品第一页| 国产亚洲免费的视频看| 性视频1819p久久| 欧美精品福利视频| 亚洲免费电影在线观看| 久久影院资源网| 人人澡人人澡人人看欧美| 日韩电影中文字幕在线观看| 国产欧美在线视频| 久久久精品视频成人| 精品国产一区二区三区四区在线观看| 国产97在线|日韩| 国产精品99免视看9| 91成品人片a无限观看| 欧美激情网友自拍| 日韩av在线一区| 色悠久久久久综合先锋影音下载| 国产精品一区二区三区在线播放| 国产精品普通话| 欧美在线亚洲在线| 正在播放国产一区| 国产成人啪精品视频免费网| 亚洲视频网站在线观看| 欧美国产第一页| 亚洲国产成人精品女人久久久| 久久久伊人日本| 992tv成人免费视频| 亚洲欧美一区二区激情| 九色精品美女在线| 精品日韩中文字幕| 在线看欧美日韩| 亚洲精品98久久久久久中文字幕| 久久久久中文字幕2018| 久久久久国色av免费观看性色| 国产精品美女www爽爽爽视频| 亚洲一区二区免费| 成人免费在线网址| 亚洲国产成人久久综合| 亚洲娇小xxxx欧美娇小| 97碰碰碰免费色视频| 国产精品久久久久久久久久东京| 日韩欧美国产中文字幕| 国产日产亚洲精品| 欧美视频精品一区| 66m—66摸成人免费视频| 国产成人精品a视频一区www| 欧美性猛交xxxx乱大交极品| 久久成人18免费网站| 91色在线观看| 国产亚洲成av人片在线观看桃| 不卡av电影院| 2019中文在线观看| 在线视频亚洲欧美| 亚洲福利影片在线| 91精品国产成人| 亚洲a∨日韩av高清在线观看| 成人精品视频99在线观看免费| 精品久久久久久久久久久久| 亚洲精品电影在线| 国产精品18久久久久久首页狼| 欧美性xxxx在线播放| 日韩一区二区三区xxxx| 91sao在线观看国产| 久久久久久久久久婷婷| 欧美极度另类性三渗透| 中文字幕在线观看日韩| 国产精品一区二区女厕厕| 国自在线精品视频| 91天堂在线观看| 欧美电影院免费观看| 亚洲精品mp4| 国产精品视频成人| 国精产品一区一区三区有限在线| 亚洲天堂av图片| 国产精品中文字幕久久久| 成人日韩av在线| 国产午夜精品免费一区二区三区| 日韩一区av在线| 久久久999精品视频| 亚洲mm色国产网站| www.日韩av.com| 日韩福利视频在线观看| 2019中文字幕在线观看| 久久久在线视频| 日韩高清av一区二区三区| 尤物精品国产第一福利三区| 国产成+人+综合+亚洲欧美丁香花| 国产成人黄色av| 久久国产精品视频| 一区二区三区在线播放欧美| 久久精品最新地址| 亚洲精品美女在线观看播放| 成人天堂噜噜噜| 日韩欧美黄色动漫| 日韩av在线影院| 97碰在线观看| 色偷偷偷综合中文字幕;dd| 国内精品久久久久影院 日本资源| 色婷婷久久一区二区| 亚洲人成在线观看| 成人免费观看49www在线观看| 日韩一区二区在线视频| 成人av在线亚洲| xvideos亚洲| 亚洲男人的天堂网站| 亚洲精品久久久久久久久久久久| 欧美大人香蕉在线| 一区二区三区日韩在线| 久久精品国产一区二区电影| 国产欧美一区二区|