;
帖子
3919 
精华
积分
11710 
鱼币
0 ¥ 
来自
大连 
在线时间
1858 小时 
注册时间
2007-6-11 
最后登录
2009-10-20 

贴图大师勋章新人进步勋章宣传大使勋章论坛元老勋章

3
发表于 2009-1-5 19:48 | 只看该作者
ASP缃戠珯杩滅▼瀹㈡埛瀹炵幇EXCEL鎵撳嵃鍔熻兘 - 缂栫▼搴 - Powered by SupeSite

浣犵殑浣嶇疆锛缂栫▼搴 >> 璧勮 >> 缃戠珯缂栫▼ >> ASP >> 璇︾粏鍐呭 鍦ㄧ嚎鎶曠ǹ

ASP缃戠珯杩滅▼瀹㈡埛瀹炵幇EXCEL鎵撳嵃鍔熻兘

鍙戝竷: 2008-7-28 09:42 |  浣滆: 缃戠粶杞浇 |   鏉ユ簮: 缃戠粶杞浇 |  鏌ョ湅: 29娆

銆銆鍦ㄨ繘琛孉SP缃戠珯寮鍙戞椂锛屾湁鏃堕渶鍦ㄥ鎴风璋冪敤MSSQL鏁版嵁搴撶殑鏁版嵁杩涜鎵撳嵃锛岃嫢璋冪敤鏁版嵁閲忓皬锛屽彲浠ラ氳繃鍦ㄥ鎴风杩愮敤 FileSystemObject鐢熸垚鏂囦欢瀵硅薄鐨勬柟娉曞疄鐜版墦鍗帮紝杩欓噷涓嶅啀璧樿堪銆傝嫢闇璋冪敤澶ч噺鏁版嵁锛屽彲鍦ㄥ鎴风鑴氭湰涓疄渚嬪寲RDS.DataSpace 锛圧emote Data Service锛夊璞,骞堕噰鐢ㄨ繙绋嬫彁渚涚▼搴忛氳繃ASP缃戠珯璁块棶MSSQL鏁版嵁搴擄紙璁剧疆鎴愬彧鑳介氳繃RDS Default Handler鎴栬嚜瀹氫箟鍟嗕笟瀵硅薄鎵嶈兘璁块棶鏁版嵁搴擄紝鍙繚璇佹暟鎹簱鐨勫畨鍏級锛屽啀鍦ㄥ鎴风瀹炰緥鍖朎XCEL.APPLICATION瀵硅薄锛屾妸鏁版嵁闆嗕腑鐨勬暟鎹啓鍏 EXCEL涓紝鍐嶈繘琛屼繚瀛樻垨鎵撳嵃銆備唬鐮佸涓嬶細

锛渉tml锛

锛渉ead锛

锛淢ETA content="text/html; charset=gb2312" http-equiv=Content-Type锛

锛渢itle锛炲鎴风鐢靛瓙琛ㄦ牸鎵撳嵃锛/title锛

锛/head锛

锛渂ody bgColor=skyblue topMargin=5 leftMargin="20" oncontextmenu="return false" rightMargin=0 bottomMargin="0"锛

锛渄iv align="center"锛烇紲center锛

锛渢able border="1" bgcolor="#ffe4b5" style="HEIGHT: 1px; TOP: 0px" bordercolor="#0000ff"锛

锛渢r锛

锛渢d align="middle" bgcolor="#ffffff" bordercolor="#000080"锛

锛渇ont color="#000080" size="3"锛

瀹㈡埛绔數瀛愯〃鏍兼墦鍗

锛/font锛

锛/td锛

锛/tr锛

锛/table锛

锛/div锛

锛渇orm name="myform"锛

锛淒IV align=left锛

锛渋nput type="button" value="Excel Report" name="report" language="vbscript" onclick="fun_excel锛堬級" style="HEIGHT: 32px; WIDTH: 90px"锛

锛/div锛

锛/form锛

锛/body锛

锛/html锛

锛渟cript language="vbscript"锛

sub fun_excel锛堬級

Dim rds,rs,df

dim strCn,strSQL,StrRs

Dim xlApp, xlBook, xlSheet1

set rds = CreateObject锛"RDS.DataSpace"锛

Set df = rds.CreateObject锛"RDSServer.DataFactory","http://192.168.0.1"锛 '192.168.0.1 涓篧EB鏈嶅姟鍣↖P鍦板潃

strcn="provider=ms remote;remote server=http://192.168.0.1;handler=msdfmap.handler;data source=pubsdatabase;" '192.168.0.1 涓篧EB鏈嶅姟鍣↖P鍦板潃

strsql= "getalljobs"

Set rs = df.Query锛坰trCn, strSQL锛


Set xlApp = CreateObject锛"EXCEL.APPLICATION"锛 '娉ㄦ剰涓嶆槸锛歋erver.CreateObject锛"EXCEL.APPLICATION"锛

Set xlBook = xlApp.Workbooks.Add

Set xlSheet1 = xlBook.Worksheets锛1锛

xlSheet1.cells锛1,1锛.value ="鑱屽姟琛"

xlSheet1.range锛"A1:D1"锛.merge

xlSheet1.cells锛2,1锛.value = "job_id"

xlSheet1.cells锛2,2锛.value = "job_desc"

xlSheet1.cells锛2,3锛.value = "max_lvl"

xlSheet1.cells锛2,4锛.value = "min_lvl"

cnt =3

do while not rs.eof

xlSheet1.cells锛坈nt,1锛.value = rs锛"job_id"锛

xlSheet1.cells锛坈nt,2锛.value = rs锛"job_desc"锛

xlSheet1.cells锛坈nt,3锛.value = rs锛"max_lvl"锛

xlSheet1.cells锛坈nt,4锛.value = rs锛"min_lvl"锛

rs.movenext

cnt = cint锛坈nt锛 + 1

loop

xlSheet1.Application.Visible = True

end sub

锛/script锛

銆銆涔熷彲浠ュ疄渚嬪寲RDS DataControl锛屽彧闇鎶婁互涓婇儴鍒嗕唬鐮佽繘琛屼慨鏀癸細

set rds = CreateObject锛"RDS.DataSpace"锛

Set df = rds.CreateObject锛"RDSServer.DataFactory","http://192.168.0.1"锛 '192.168.0.1 涓篧EB鏈嶅姟鍣↖P鍦板潃

strcn="provider=ms remote;remote server=http://192.168.0.1;handler=msdfmap.handler;data source=pubsdatabase;" '192.168.0.1 涓篧EB鏈嶅姟鍣↖P鍦板潃

strsql= "getalljobs"

Set rs = df.Query锛坰trCn, strSQL锛

銆銆淇敼涓猴細

set DC = createobject锛"RDS.DataControl"锛

dc.ExecuteOptions =1 '璁剧疆鎴愬悓姝ユ墽琛岋紝鍙互绠鍖栦笅姝ヤ唬鐮

dc.FetchOptions = 1

With dc

.Server = "http://192.168.0.1"

.Handler = "MSDFMAP.Handler"

.Connect = "Data Source=pubsdatabase;"

.Sql = "getalljobs"

.Refresh

End With

set rs= dc.Recordset

銆銆淇敼鏂囦欢MSDFMAP.INI锛堣嫢鍦╓IN98锛孋锛歕windows\msdfmap.ini锛涜嫢鍦╓IN2000,D:\winnt\msdfmap.ini锛涜嫢鍦╓IN2000 SERVER锛孌锛歕winnts\msdfmap.ini锛夈

[sql getalljobs]

Sql="SELECT * FROM jobs"


[connect pubsDatabase]

Access=Readonly

Connect="provider=sqloledb;data source=sql server;initial catalog=pubs;UID=userid;PWD=password"

銆銆鎵撳紑娉ㄥ唽琛℉KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\W3SVC\Parameters\ADCLaunch 鑻ユ棤 RDSServer.Datafactory锛岃娣诲姞銆傛湰渚嬩娇鐢≧DS Default Handler璁块棶鏁版嵁搴擄紝鑻ヤ笉閫氳繃RDS Handler璁块棶鏁版嵁搴擄紝淇敼娉ㄥ唽琛℉KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DataFactory\ HandlerInfo 灏咹andlerRequired=1 璁剧疆鎴怘andlerRequired =0銆傝娉ㄦ剰锛岃嫢涓嶉氳繃RDS Handler鎴栬嚜瀹氫箟鍟嗕笟瀵硅薄璁块棶鏁版嵁搴擄紝灏嗗鏁版嵁搴撳甫鏉ュ畨鍏ㄩ殣鎮o紝鎵浠ヤ綔鑰呮瀬鍔涙帹鑽愰噰鐢ㄥ彧鑳介氳繃RDS Handler鎴栬嚜瀹氫箟鍟嗕笟瀵硅薄鎵嶈兘璁块棶鏁版嵁搴撶殑鏂瑰紡銆

銆銆涓嬮潰鐢╒B缂栧啓涓涓嚜瀹氫箟鍟嗕笟瀵硅薄锛屼唬鐮佸涓嬶細

'缂栧啓ActiveX DLL锛屽悕绉帮細rsget.dll,鍖呭惈绫籸sreturn锛屾柟娉時eturnrs

Public Function ReturnRs锛坰trDB 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

Select Case strDB

Case "ydjjspdatabase"

strDB = "ydjjsp"

Case "pubsdatabase"

strDB = "pubs"

End Select


If strSQL = "getallbuy" Then

strSQL = "select * from buyuser"

GoTo nextstep

End If

If Left锛坰trSQL, InStr锛坰trSQL, "锛"锛 - 1锛 = "getpubsbyid" Then

If InStr锛坰trSQL, ","锛 锛= 0 Then

Dim str As String

str = Mid锛坰trSQL, InStr锛坰trSQL, "锛"锛 + 2, InStr锛坰trSQL, "锛"锛 - InStr锛坰trSQL, "锛"锛 - 3锛

strSQL = "select * from jobs where job_id='" & str & "'"

Else

Dim strstart, strend As String

strstart = Mid锛坰trSQL, InStr锛坰trSQL, "锛"锛 + 2, InStr锛坰trSQL, ","锛 - InStr锛坰trSQL, "锛"锛 - 3锛

strend = Mid锛坰trSQL, InStr锛坰trSQL, ","锛 + 2, InStr锛坰trSQL, "锛"锛 - InStr锛坰trSQL, ","锛 - 3锛

strSQL = "select * from jobs where job_id锛='" & strstart & "' and job_id锛='" & strend & "'"

End If

End If

nextstep:

Dim strConnect As String

strConnect = "Provider=SQLOLEDB;Server=ddk;uid=ydj;pwd=ydj; Database=" & strDB & ";"

cn.Open strConnect

rs.CursorLocation = adUseClient

rs.Open strSQL, cn, adOpenStatic, adLockOptimistic, adCmdText

Set ReturnRs = rs

Exit Function

ehGetRecordset:

Err.Raise Err.Number, Err.Source, Err.Description

End Function

銆銆鎶妑sget.dll澶嶅埗鍒癈:\WINDOWS鎴朌:\WINNT,寮濮媆杩愯锛岃緭鍏egsvr32.exe c:\windows\rsget.dll鎴朢egsvr32.exe d:\winnt\rsget.dll锛屾寜纭畾鎸夐挳锛屾敞鍐屾垚WEB鏈嶅姟鍣ㄧ粍浠讹紝骞跺湪娉ㄥ唽琛℉KEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\ Services\W3SVC\Parameters\ADCLaunch銆娣诲姞rsget.rsreturn銆

銆銆鑻ヤ娇鐢ㄨ嚜瀹氫箟鍟嗕笟瀵硅薄锛屼慨鏀逛笂闈㈢殑ASP鏂囦欢浠g爜锛

set rds = CreateObject锛"RDS.DataSpace"锛

Set df = rds.CreateObject锛"RDSServer.DataFactory","http://192.168.0.1"锛 '192.168.0.1 涓篧EB鏈嶅姟鍣↖P鍦板潃

strcn="provider=ms remote;remote server=http://192.168.0.1;handler=msdfmap.handler;data source=pubsdatabase;" '192.168.0.1 涓篧EB鏈嶅姟鍣↖P鍦板潃

strsql= "getalljobs"

Set rs = df.Query锛坰trCn, strSQL锛

銆銆鏀逛负锛

set rds = CreateObject锛"RDS.DataSpace"锛

Set df = rds.CreateObject锛"rsget.rsreturn","http://192.168.0.1"锛

set rs=df.returnrs锛"pubsdatabase","getpubsbyid锛'2','10'锛"锛

銆銆鍙﹀鍦ㄦ祻瑙堝櫒绔渶鍋氬涓嬮厤缃細

銆銆鎵撳紑鎺у埗闈㈡澘-锛濱NTERNET閫夐」-锛炲畨鍏ㄦ-锛炶嚜瀹氫箟绾у埆-锛 瀵规病鏈夋爣璁颁负瀹夊叏鐨凙ctiveX鎺т欢杩涜鍒濆鍖栧拰鑴氭湰杩愯-锛炲紑鍚

 
鎵撳嵃 | 鏀惰棌姝ら〉 |  鎺ㄨ崘缁欏ソ鍙 | 涓炬姤
涓婁竴绡 涓嬩竴绡
 

璇勫垎锛0

鍙戣〃璇勮
鏌ョ湅鍏ㄩ儴鍥炲銆愬凡鏈0浣嶇綉鍙嬪彂琛ㄤ簡鐪嬫硶銆