关于客户端用ASP参生报表(高级篇)

2016-01-29 17:33 5 1 收藏

关于客户端用ASP参生报表(高级篇),关于客户端用ASP参生报表(高级篇)

【 tulaoshi.com - ASP 】

  上回曾贴一篇较简单的用ASP+RDS客户端参生报表
此回贴一篇较复杂的用ASP+RDS+组件客户端参生报表
错误说明:(若提示ActiveX 元件无法参生 RDS.DataSpace)
IE需设置安全选项
操作:菜单工具-INTERNET选项-安全性-自定义
设置:起始但ActiveX不标示为安全-开启
原理说明:
客户端直接用RDS产生RecordSet安全性不够,使用了
middle-tier Automation components 后可大大增加安全性!
请看下文:
编写注册元件:
ActiveX Dll project:iacrdsobj.vbp
Class Module name:RsOp

Public Function ReturnRs(strDB As Variant, strSQL As Variant) As ADODB.Recordset
'Returns an ADODB recordset.
On Error GoTo ehGetRecordset
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strConnect As String
strConnect = "Provider=SQLOLEDB;Server=server name ;uid=sa;pwd=; Database=" & strDB & ";"
cn.Open strConnect
'These are not listed in the typelib.
rs.CursorLocation = adUseClient
'Using the Unspecified parameters, an ADO/R recordset is returned.
rs.Open strSQL, cn, adOpenUnspecified, adLockUnspecified, adCmdUnspecified
Set ReturnRs = rs
Exit Function
ehGetRecordset:
Err.Raise Err.Number, Err.Source, Err.Description
End Function
然后 MAKE iacrdsobj.dll
若有错,请设置VB菜单PROJECT-REFREENCE
增加 MicroSoft ActiveX Data Object 2.6 Library(当然数字要高一点)

然后 注册iacrdsobj.dll到数据库server(为安全,最好更改数据库uid最好不为sa)!
好,接下来看asp
long1.asp
<html
<head
<META content="text/html; charset=gb2312" http-equiv=Content-Type
<titleclient use rds produce excel report</title
</head
<body bgColor=skyblue topMargin=5 leftMargin="20" oncontextmenu="return false" rightMargin=0 bottomMargin="0"

<div align="center"<center
<table border="1" bgcolor="#ffe4b5" style="HEIGHT: 1px; TOP: 0px" bordercolor="#0000ff"
<tr
<td align="middle" bgcolor="#ffffff" bordercolor="#000080"
<font color="#000080" size="3"
client use rds produce excel report
</font
</td
</tr
</table
</div
<form action="long1.asp" method="post" name="myform"
<DIV align=left
<input type="button" value="Query Data" name="query" language="vbscript" onclick="fun_excel(1)" style="HEIGHT: 32px; WIDTH: 90px"
<input type="button" value="Clear Data" name="Clear" language="vbscript" onclick="fun_excel(2)" style="HEIGHT: 32px; WIDTH: 90px"
<input type="button" value="Excel Report" name="report" language="vbscript" onclick="fun_excel(3)" style="HEIGHT: 32px; WIDTH: 90px"
</div
<DIV id="adddata"</div
</form
</body
</html
<script language="vbscript"
sub fun_excel(t)
Dim rds,rs,df,ServerStr
dim strSQL,StrRs
Dim xlApp, xlBook, xlSheet1
ServerStr="http://Sql Server Name" 'the sql server name of register iacRDSObj.dll
'use rds to produce client recordset
set rds = CreateObject("RDS.DataSpace",ServerStr)
'eg:set rds = CreateObject("RDS.DataSpace","http://iac_fa") 'iac_fa is the LAN sql server name
'eg:set rds = CreateObject("RDS.DataSpace","http://10.150.254.102") '10.150.254.102 is the LAN sql server IP Address
'the register com
Set df = rds.CreateObject("iacRDSObj.rsop", ServerStr)
'the query string of sql
strSQL = "Select top 8 * from jobs order by job_id"
'the recordset
Set rs = df.ReturnRs("pubs",strSQL)
if t=1 then
if not rs.eof then
StrRs="<

来源:https://www.tulaoshi.com/n/20160129/1501914.html

延伸阅读
中纪委手机客户端怎么用   中央纪委监察部官方门户网站对外界推出了中纪委手机客户端,帮助老百姓可以随时进行举报,那么中纪委手机客户端怎么用呢?下文小乐哥给大家带来中纪委手机客户端使用教程,一起来了解下吧! 中纪委手机客户端是中央纪委监察部官方门户网站适应形势任务需要推出的新媒体平台,中纪委手机客户端采取多种方...
标签: Web开发
要想透过代理服务器取得客户端的真实IP地址,就要使用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取。不过要注意的事,并不是每个代理服务器都能用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取客户端的真实 IP,有些用此方法读取到的仍然是代理服务器的IP。还有一点需要注意的是:如果客户端没有...
手机天翼WiFi客户端怎么用?   天翼WiFi客户端是一款专门为用户提供WiFi热点接入的免费应用软件,以帮助智能终端更便捷地接入WiFi无线网络,最大化的使用互联网移动服务。快速、稳定、便捷、经济,让您随时随地尽情畅享无线上网的乐趣。 我们的优势 1.支持多平台的终端,无运营商限制: 天翼WiFi客户端主要安装在支持...
百度推广客户端怎么用?   第一步、打开百度推广客户端先登录,或者添加用户帐号添加账户完成并下载后,您就可以添加推广物料了。 强烈推荐快速新建计划功能,可以智能地帮助您快速的搭建账户物料,在主操作区中推广计划标签下点击添加按钮,并填写名称、预算等信息,也可以鼠标右键点击左侧账户目录推广计划标签选择添加推广...
招行手机客户端朝朝盈怎么用   登陆招行手机,点开账户查询,将看到朝朝盈选项,点击开通,按提示操作即可。点开帐号总览就可以看到朝朝盈。 前朝朝应年化收益为5.4%,在同类产品中算中上选择。

经验教程

251

收藏

68
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部