有关OWC,前天还好好的,今天出错

mailguoyy 2003-04-02 03:27:17

前天还好好的,今天出错
=========================
Microsoft VBScript 运行时错误 错误 '800a01b6'

对象不支持此属性或方法: 'Charts'

/tte.asp,行45

===============================================
<%@ Language=VBScript %>
<%
Option Explicit
'Response.Expires = -1
'Response.ContentType = "image/gif"

'页面级对象
'--------------------
Dim m_cn '链接对象
Dim m_rs '记录集对象
Dim m_cspace 'OWC.ChartSpace object
Dim m_fso '文件系统对象
Dim m_objBinaryFile '二进值文件流对象

Dim m_sYear '需要查询的年份

Dim sSQL '执行的SQL 语句
Dim c 'OWC 常量对象
Dim cht '图表临时参考变量
Dim ax '数轴的临时参考变量
Dim fnt 'OWCFont字体的临时参考变量
Dim sFullFileName '输出GIF文件的临时参考路径

'获得查询年份,缺省为2002
m_sYear = Request.QueryString("year")
if len(m_sYear) = 0 then m_sYear = "2002"

'创建一个ADO链接和记录集对象
set m_cn = Server.CreateObject("ADODB.Connection")
set m_rs = Server.CreateObject("ADODB.Recordset")

'链接到Access数据库,使用客户端的游标引擎打开记录集
m_cn.Open "provider=microsoft.jet.oledb.4.0;data source=" & Server.MapPath(".") & "\data.mdb"
sSQL = "SELECT Month([OrderDate]) AS [Month], Invoices.Salesperson, " & _
"Sum(Invoices.ExtendedPrice) AS Sales FROM Invoices " & _
"WHERE Invoices.OrderDate between #1/1/" & m_sYear & "# and #12/31/" & m_sYear & "# " & _
"GROUP BY Month([OrderDate]), Invoices.Salesperson"
m_rs.CursorLocation = 3 'adUseClient
m_rs.Open sSQL, m_cn, 3 'adOpenStatic

'增加一个带有图例的簇列图表
set m_cspace = server.CreateObject("OWC.Chart")
set cht = m_cspace.Charts.Add()
set c = m_cspace.Constants

set m_cspace.DataSource = m_rs

cht.Type = 1
cht.HasLegend = True

'设置图表的数据源,把销售人添加到序列名称,销售月份添加到分类组,销售金额作为图表中各项取值


cht.SetData c.chDimSeriesNames, 0, "Salesperson"
cht.SetData c.chDimCategories, 0, "Month"
cht.SetData c.chDimValues, 0, "Sales"
c.HasPercentage = True
c.HasValue = False

'增加一个图表标题,并格式化标题
cht.HasTitle = True
cht.Title.Caption = m_sYear & "的销售金额 "
set fnt = cht.Title.Font
fnt.Name = "宋体"
fnt.Size = 10
fnt.Bold = True

'对分类轴添加标题,并格式化标题
set ax = cht.Axes(c.chAxisPositionBottom)
ax.HasTitle = True
ax.Title.Caption = "月份"
set fnt = ax.Title.Font
fnt.Name = "宋体"
fnt.Size = 8
fnt.Bold = True

'对数值轴添加标题,并格式化标题
set ax = cht.Axes(c.chAxisPositionleft)
'ax.NumberFormat = "Currency"
ax.HasTitle = True
ax.Title.Caption = "元"
set fnt = ax.Title.Font
fnt.Name = "宋体"
fnt.Size = 8
fnt.Bold = True
fnt.color="red"

'用一个临时变量名保存当前文件,这个文件名是唯一的
set m_fso = CreateObject("Scripting.FileSystemObject")
sFullFileName = Server.MapPath(".") & "\" & m_fso.GetTempName()
m_cspace.ExportPicture sFullFileName, "GIF", 800, 400

'使用 On Error Resume Next语句是为了确保我们删除了临时文件,即使一些函数调用失败
on error resume next

'GIF文件已经输出,我们可以通过COM组件把它的内容发送到客户端
set m_objBinaryFile = server.CreateObject("BinFileWrite.GetFileStream")

m_objBinaryFile.SendBinFile CStr(sFullFileName),"image/GIF",TRUE,FALSE,TRUE,TRUE,TRUE
'GIF文件已经不需要了可以删除了
m_objBinaryFile.DeleteFile CStr(sFullFileName)

%>
...全文
90 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
mailguoyy 2003-04-02
  • 打赏
  • 举报
回复
服务器对象 错误 'ASP 0196 : 80040154'

不能运行进程外组件

/tte2.asp,行14

只可使用 InProc 服务器组件。如果您想使用 LocalServer 组件,您必须修改 AspAllowOutOfProcComponents metabase设置。请参照帮助文件。

set m_cspace = server.CreateObject("OWC.Chart")
set DSC = server.CreateObject("OWC.DataSourceControl")

=====================================================
Microsoft VBScript 运行时错误 错误 '800a01b6'

对象不支持此属性或方法: 'HasPercentage'

/tte.asp,行59
c.HasPercentage = True
c.HasValue = False

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧