게시판 본문 ASP, ASP.NET, IIS & Script - Read Only

레코드셋 문제때문에 질문 올립니다. ^^;;
작성자: 장윤태
작성일시: 2007-05-15 18:40,  조회수: 37,391
아래거는 디버깅용 RS 출력 함수인데요
byVal 로 전달하는데도 이게 자꾸 원본 Rs 를 닫아 버립니다.

원본을 유지하면서 찍을려고 다른거에 복사도 해보고 했는데;;
안되내요;;

#상황
sql = sql & "ORDER BY IDX DESC "

Function rs_open(sql)
Set rs = Server.CreateObject("Adodb.Recordset")
rs.open sql, db, 1
End Function

Call rs_open(sql)

'print dbs.rs_fieldName(rs,true)

rs.pagesize = pSize
IntArecord = rs.recordcount <----- 이부분
IntApage = rs.pagecount

ADODB.Recordset error '800a0e78'
개체가 닫혀있으면 작업이 허용되지 않습니다.
IntArecord = rs.recordcount

◆질문1
objRecordSet 만 직접넣으면 무조건 objRecordSet 가 nothing 처리되더군요
그런데 byval 이면 값전달이니깐 원본에는 영향이 없어야 하는거 아닌가요?
그런데 자꾸 원본이 nothing 처리되더군요;;

그래서 차선책으로 복사해서 전달해 보았조

◆질문2
Set objRecordSet_temp = objRecordSet 하니까
Set objRecordSet_temp = objRecordSet_temp.NextRecordset 을 하고나서
두개의 레코드셋의 상태가
처음에는 둘다 open 이었다가
objRecordSet_temp = nothing , objRecordSet = closed 가 되더군요;;

그래서 위와 같은 오류가 나고요

분명 byval 인데;; 왜그럴까요? ^^; 고견 주시면 감사 하겠습니다. ( ^.^)


◆소스
Function Rs_fieldName(ByVal objRecordSet , maxLength)
	Dim Field , tempStr , i , j , k
	If maxLength = false Then
		Exit function
	End if
	tempStr = ""

	Dim objRecordSet_temp
	Set objRecordSet_temp = objRecordSet

	Do Until objRecordSet_temp Is nothing
		i = 0 : j = 0 : k = 0
		tempStr = tempStr &"<table border=1><tr>"
		For Each Field in objRecordSet_temp.Fields
			tempStr = tempStr &"<td><b>"& Field.name &" <br><font color=red>"& i &"열</font></b></td>"
			i = i + 1
		Next
		tempStr = tempStr &"</tr>"

		If objState(objRecordSet_temp.State) = "adStateClosed" Then
			tempStr = tempStr &"</table>"
			Rs_fieldName = tempStr
			Exit function
		End if

		If objRecordSet_temp.Eof OR objRecordSet_temp.Bof Then
			tempStr = tempStr &"<tr><td colspan="& i &"><b>결과없음</b></td></tr>"
		Else
			Do Until objRecordSet_temp.Eof
				tempStr = tempStr &"<tr>"
				For Each Field in objRecordSet_temp.Fields
					tempStr = tempStr &"<td valign=top><font color=orange>"& j &"행 "& k &"열</font><br><br>"& Field &"</td>"
					k = k + 1
				next
				tempStr = tempStr &"</tr>"
				objRecordSet_temp.MoveNext
				j = j + 1
				k = 0
				If isNumeric(maxLength) Then
					If Cint(j) = Cint(maxLength) Then Exit do
				End if
			Loop
			objRecordSet_temp.MoveFirst
		End if
		tempStr = tempStr &"</table><br><br>"

		Set objRecordSet_temp = objRecordSet_temp.NextRecordset
	Loop
	Rs_fieldName = tempStr
End function
IP 주소: 211.234.44.234
전체 2,095 건의 게시물, 84 페이지로 구성된 ASP, ASP.NET, IIS & Script 게시판의 1 페이지입니다.
게시물
2,208

win2008 iis에 관한 문의가 좀 있습니다.

이재성

2011-05-25 11,782
2,207

re: win2008 iis에 관한 문의가 좀 있습니다.

송원석

2011-05-27 5,539
2,206

전체선택관련

이석환

2011-05-20 124
2,205

re: 전체선택관련

송원석

2011-05-23 5,386
2,204

엑셀파일명 깨짐에 대해

이석환

2011-05-17 130
2,203

re: 엑셀파일명 깨짐에 대해

송원석

2011-05-17 5,195
2,202

동영상 탑재 사이트 구축 [1]

정보문

2011-05-12 5,064
2,201

re: 동영상 탑재 사이트 구축 [1]

송원석

2011-05-12 5,002
2,200

동시접속자가 많을 경우 XMLDOM 검색 처리 방법 문의

Tanhi

2011-04-24 5,315
2,199

re: 동시접속자가 많을 경우 XMLDOM 검색 처리 방법 문의

송원석

2011-04-25 4,904
2,197

framest 질문이요..

김종식

2011-03-30 228
2,196

re: framest 질문이요..

송원석

2011-03-31 5,006
2,195

자바스크립으로 된 장바구니 기능..

gosuzzang

2011-03-23 290
2,194

re: 자바스크립으로 된 장바구니 기능..

송원석

2011-03-24 5,441
2,193

Server.GetLastError 관련

이석환

2011-03-23 253
2,192

re: Server.GetLastError 관련 [2]

송원석

2011-03-24 5,363
2,191

파일 다운로드시

이석환

2011-03-18 345
2,190

re: 파일 다운로드시

송원석

2011-03-19 5,708
2,189

re: 파일 다운로드시

송원석

2011-03-21 5,018
2,188

re: 파일 다운로드시

이석환

2011-03-21 258
2,187

re: 파일 다운로드시

송원석

2011-03-21 5,458
2,186

iis 요청 필터링관련

질문

2011-03-18 311
2,185

re: iis 요청 필터링관련

송원석

2011-03-18 7,398
2,184

오류메시지 깨짐현상

이석환

2011-03-11 345
2,183

re: 오류메시지 깨짐현상

송원석

2011-03-14 8,433