狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频

當前位置:系統之家 > 技術開發教程 > 詳細頁面

運用OWC服務器端組件動態生成圖表

運用OWC服務器端組件動態生成圖表

更新時間:2019-10-06 文章作者:未知 信息來源:網絡 閱讀次數:

以前在這里也曾經有一些文章談到了在ASP中生成動態圖表的問題,但那些文章中所談到的一些方法都有某些方面的限制,如需要在客戶端安裝office2000或安裝OWC,有些則可能在Intranet中使用時沒什么問題,但在通過Internet訪問的時候,就可能出現無法正常工作的現象(這主要和SQL Server的安全設置有關)。那么,我們如何來避免這些問題呢?有一個很好的方法,就是將在ASP中生成的圖表轉換成圖片文件保存在服務器上,這樣用戶最終看到的是GIF圖片格式的圖表,我想現在的任何一種瀏覽器在觀看GIF圖片的時候都沒什么問題吧。:)也許唯一可能的問題就是如何對這些生成的臨時圖片文件的處理問題,關于這個問題在最后我們會討論。
下面我們會用一個具體的實例來說明這種方法。程序的測試環境為:
NT4.0(SP5)+IIS4.0+SQL Server7.0+IE5.0,要運行下面的ASP程序,請將下面的代碼Copy,保存到你的一個虛擬目錄中,在這個虛擬目錄中建立一個子目錄tmp(你可能修改代碼中的路徑以符合自己的路徑),在IIS中設置read權限即可,注意了,在NT上你必須設置此tmp目錄對IUSR_servername用戶至少有Change的權限。建立一個pubs的DSN指向SQL Server的pubs數據庫。
以下是代碼:
chart.asp
<%
Function ExportChartToGIF(cspace)
    Dim fso            
    Dim sFilePath       
    Dim sFileName     

    '生成臨時文件的文件名
    set fso = CreateObject("Scripting.FileSystemObject")
    sFilePath = Request.ServerVariables("PATH_TRANSLATED")
    sFilePath = left(sFilePath, InStrRev(sFilePath, "\"))
    sFilePath = sFilePath & "tmp\"
    sFileName = fso.GetTempName()
    sFileName = sFileName & ".gif"
    set fso=nothing
    '將chart轉換成GIF文件保存在臨時目錄
    m_cspace.ExportPicture sFilePath & sFileName, "gif", 200, 150
    
    '將生成的臨時圖片報存在session中以便于刪除
    Session("TC:" & sFilePath & sFileName) = sFilePath & sFileName
    ExportChartToGIF = sFileName
End Function

Sub BindChartToDSC(cspace, dsc, sRSName, sCategories, sValues)
    Dim cht   
    Dim ser    
        
    set c = cspace.Constants
        
    cspace.Clear

    ' 綁定數據源
    set cspace.DataSource = dsc
        
    cspace.DataMember = sRSName
        
    set cht = cspace.Charts.Add()
    cht.HasLegend = True
    cht.Type = c.chChartTypePie
        
    set ser = cht.SeriesCollection.Add()
    ser.SetData c.chDimCategories, 0, sCategories
    ser.SetData c.chDimValues, 0, sValues
        
    set dls = ser.DataLabelsCollection.Add()
    dls.HasPercentage = True
    dls.HasValue = False

End Sub
%>
<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>利用OWC動態生成圖表</title>
</head>

<body>
<%
set m_cspace = server.CreateObject("OWC.Chart")
set DSC = server.CreateObject("OWC.DataSourceControl")
DSC.ConnectionString = "DSN=pubs;uid=sa"
DSC.RecordsetDefs.AddNew "select distinct state,num=COUNT(*) FROM authors GROUP BY state",DSC.Constants.dscCommandText,"ChartData"
BindChartToDSC m_cspace, DSC, "ChartData", "state", "num"
m_sFilePath = ExportChartToGIF(m_cspace)
set m_cspace=nothing
set m_cht=nothing
%>

<br><br>
<img src="tmp/<%= m_sFilePath %>">
</BODY>
</HTML>
其中我們會發現兩個有用的函數:ExportChartToGIF和BindChartToDSC
ExportChartToGIF(cspace)是一個用來將chart轉換成GIF文件的函數
cspace:一個OWC.Chart的實例
BindChartToDSC(cspace, dsc, sRSName, sCategories, sValues)用來將一個Chart綁定到數據源
cspace:OWC.Chart的實例
dsc:數據源
sRSName:記錄集名稱
sCategories,sValues:Chart中每個系列的名稱字段和相應的值的字段名(說的好象不是很清楚,不過看看代碼你就明白了)
在使用服務器端的OWC時,實際上和使用其它的組件沒什么區別,都是用server.createobject來創建一個實例,再調用組件的方法和屬性。
OWC包括四個組件,他們的ProgID分別為:
OWC.Chart:圖表組件
OWC.SpreadSheet:電子表格組件
OWC.DataSourceControl:數據源組件
OWC.PivotTable:動態報表組件

最后說一下如何處理臨時的圖片文件
在ExportChartToGIF漢書中你可以看到如下的代碼:
Session("TC:" & sFilePath & sFileName) = sFilePath & sFileName
我們將產生的圖片文件路徑保存在session中,然后在Session_OnEnd中添加如下的代碼:
Set fsoTemp = CreateObject("Scripting.FileSystemObject")
for each imagefile in Session.Contents
    if left(imagefile,3) = "TC:" then
        fsoTemp.DeleteFile mid(imagefile,4), True
    end if
next
set fsoTemp=nothing

好了。終于寫完了,其中關于臨時文件的處理的方法也許不是很好,如果你有更好的方法的話,請告訴我。希望這篇文章對大家都所幫助:)

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频
日韩午夜av| 欧美日本一区二区三区四区 | 欧美午夜理伦三级在线观看| 日韩你懂的电影在线观看| 中文字幕亚洲一区二区av在线| 午夜精品aaa| eeuss影院一区二区三区| 一区二区精品在线| 欧美日韩高清一区二区三区| 日本一区二区视频在线观看| 奇米一区二区三区| 欧美韩国一区| 欧美亚洲日本一区| 国产精品人妖ts系列视频| 日本网站在线观看一区二区三区| 99精品在线观看视频| 久久精品人人| 久久婷婷国产综合精品青草| 五月婷婷久久丁香| www.日韩av| 色综合久久久久久久久| 国产亚洲精品精华液| 日本欧美在线观看| 欧美日韩在线高清| 欧美精品国产精品| 亚洲精品乱码久久久久| 国产·精品毛片| 亚洲一区二区三区欧美| 久久美女艺术照精彩视频福利播放| 午夜精品免费在线观看| 欧美一区激情| 欧美日韩国产中文| 亚洲性色视频| 91精品国产色综合久久不卡电影 | 日韩三级视频中文字幕| 亚洲在线观看免费视频| 99精品视频一区二区三区| 91久久免费观看| 1区2区3区欧美| 波波电影院一区二区三区| 色哟哟一区二区| 亚洲欧洲精品一区二区精品久久久| 国产精品羞羞答答xxdd| 国产嫩草一区二区三区在线观看| 久久久久国产精品麻豆ai换脸| 乱一区二区av| 国产一区二区高清不卡| 2014亚洲片线观看视频免费| 蜜桃视频一区二区三区在线观看| 一区在线视频| 久久综合视频网| 激情综合色综合久久| 亚洲免费一区二区| 国产精品久久综合| 不卡视频在线看| 欧美日韩一区二区在线观看视频| 亚洲最快最全在线视频| 欧美阿v一级看视频| 日韩一区二区三免费高清| 日韩电影在线一区二区三区| 亚洲精品中文字幕在线| 国产女同性恋一区二区| 成人爱爱电影网址| 欧美日本国产一区| 视频一区二区三区在线| 99视频精品| 国产精品传媒视频| 91免费看`日韩一区二区| 欧美一卡二卡三卡| 精品综合免费视频观看| 老牛影视一区二区三区| 亚洲一区二区在线播放相泽| 狠狠干成人综合网| 国产日韩亚洲欧美综合| 成人午夜av影视| 91精品蜜臀在线一区尤物| 裸体健美xxxx欧美裸体表演| 久久精品国产清高在天天线 | 国产精品911| 欧美人与z0zoxxxx视频| 男女男精品视频| 一本一道波多野结衣一区二区| 一区二区三区在线播| 1024亚洲| 中文字幕一区免费在线观看| 欧美激情日韩| 国产午夜精品福利| 99国产精品久| 2017欧美狠狠色| 久久精品在线免费观看| 成人精品免费视频| 91精品欧美一区二区三区综合在 | 国产精品综合av一区二区国产馆| 欧美亚洲一区二区三区四区| 蜜芽一区二区三区| 91久久国产综合久久| 肉丝袜脚交视频一区二区| 久久不射网站| 日日夜夜精品视频天天综合网| 先锋影音一区二区三区| 亚洲mv大片欧洲mv大片精品| 亚洲免费在线| 视频一区二区国产| 在线精品视频一区二区| 美女国产一区二区三区| 精品视频在线免费观看| 激情久久五月天| 91精品国产欧美一区二区18 | 国产伦精一区二区三区| 4438成人网| 成人免费毛片a| 久久九九99视频| 欧美久久一级| 亚洲视频一二三| 夜久久久久久| 亚洲丰满少妇videoshd| 色综合久久久久网| 麻豆91在线看| 日韩网站在线看片你懂的| 成人免费黄色大片| 久久久久久电影| 狠狠色丁香久久综合频道| 亚洲精品视频在线| 久久另类ts人妖一区二区| 美日韩一区二区| 91精品国产一区二区三区香蕉| 粉嫩av一区二区三区| 国产欧美精品在线观看| 亚洲一级高清| 亚洲成人动漫精品| 欧美视频完全免费看| 国产成人鲁色资源国产91色综| 久久影院电视剧免费观看| 国产综合自拍| 亚洲成人av福利| 欧美日韩日本视频| 波多野结衣在线一区| 国产精品视频一区二区三区不卡| 在线视频免费在线观看一区二区| 图片区小说区国产精品视频| 欧美久久免费观看| 91一区二区在线| 亚洲精品国产a| 91电影在线观看| 成人永久aaa| 国产精品国产精品国产专区不蜜 | 国产一区二区三区四区hd| 亚洲曰韩产成在线| 欧美日韩亚洲综合| 成人app在线观看| 日韩理论片在线| 久久综合影视| 国产成人av影院| 国产精品久久久久久久久果冻传媒| 国产精品欧美日韩一区| 激情小说欧美图片| 国产网站一区二区| 久久国产成人| 久久精品在这里| 亚洲高清在线观看一区| 免费人成在线不卡| 精品久久五月天| 国产人成精品一区二区三| 久久精品国产99久久6| 久久久久国产精品厨房| 久久av一区二区| 成人精品小蝌蚪| 亚洲综合在线视频| 6080国产精品一区二区| 精品不卡一区| 精品一区二区在线播放| 中文成人综合网| 在线观看欧美精品| 91蜜桃免费观看视频| 午夜欧美在线一二页| 精品久久国产字幕高潮| 宅男噜噜噜66一区二区| 国产一区999| 亚洲日本欧美天堂| 7777精品伊人久久久大香线蕉超级流畅| 欧美日韩一区二区三区在线视频| 日韩精品色哟哟| 国产无一区二区| 欧美亚洲综合久久| 欧美精品系列| 精品在线视频一区| 中文字幕一区二区在线观看| 欧美日韩高清在线播放| 亚洲国产日韩欧美一区二区三区| 国产一区在线观看视频| 亚洲伦在线观看| 日韩一区二区在线看| 国产精品久久久一区二区| 成人动漫一区二区在线| 婷婷夜色潮精品综合在线| 久久女同性恋中文字幕| 91久久线看在观草草青青| 国产精品99免费看| 国产在线不卡一区| 一区二区三区美女视频|