Wrox Home  
Search P2P Archive for: Go

  Return to Index  

asp_database_setup thread: Provider Error 80004005 Unspecified Error


Message #1 by "molly mchenney" <molly.mchenney@d...> on Wed, 16 May 2001 14:14:39
mmchenney (Visitor) May 16, 2001 

In Dreamweaver, using ASP I have been trying to search for specific 

records in a database and pull them up according to what region they are 

in.  Locally this works fine.  When I try and retrieve the information out 

on the server I get the following error.



Provider error 80004005



Unspecified error



/UCSDEV/PBX/ASPCode/Results.asp, line 22



Here is my code. Please Help!





<%@LANGUAGE="VBSCRIPT"%> 

<!--#include file="Connections/PBX2001.asp" -->

<%

Dim Recordset1__MMColParam

Recordset1__MMColParam = "1"

if (Request.QueryString("Select") <> "") then Recordset1__MMColParam = 

Request.QueryString("Select")

%>

<%

set Recordset1 = Server.CreateObject("ADODB.Recordset")

Recordset1.ActiveConnection = MM_PBX2001_STRING

Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" + Replace

(Recordset1__MMColParam, "'", "''") + "'"

Recordset1.CursorType = 0

Recordset1.CursorLocation = 2

Recordset1.LockType = 3

Recordset1.Open()

Recordset1_numRows = 0

%>

<%





set Recordset2 = Server.CreateObject("ADODB.Recordset")

Recordset2.ActiveConnection = MM_PBX2001_STRING

Recordset2.Source = "SELECT * FROM PBX"

Recordset2.CursorType = 0

Recordset2.CursorLocation = 2

Recordset2.LockType = 3

Recordset2.Open()

Recordset2_numRows = 0

%>

<%



%>

<%

Dim Repeat2__numRows

Repeat2__numRows = -1

Dim Repeat2__index

Repeat2__index = 0

Recordset1_numRows = Recordset1_numRows + Repeat2__numRows

%>

<%

'  *** Recordset Stats, Move To Record, and Go To Record: declare stats 

variables



' set the record count

Recordset1_total = Recordset1.RecordCount



' set the number of rows displayed on this page

If (Recordset1_numRows < 0) Then

  Recordset1_numRows = Recordset1_total

Elseif (Recordset1_numRows = 0) Then

  Recordset1_numRows = 1

End If



' set the first and last displayed record

Recordset1_first = 1

Recordset1_last  = Recordset1_first + Recordset1_numRows - 1



' if we have the correct record count, check the other stats

If (Recordset1_total <> -1) Then

  If (Recordset1_first > Recordset1_total) Then Recordset1_first = 

Recordset1_total

  If (Recordset1_last > Recordset1_total) Then Recordset1_last = 

Recordset1_total

  If (Recordset1_numRows > Recordset1_total) Then Recordset1_numRows = 

Recordset1_total

End If

%>

<%

' *** Recordset Stats: if we don't know the record count, manually count 

them



If (Recordset1_total = -1) Then



  ' count the total records by iterating through the recordset

  Recordset1_total=0

  While (Not Recordset1.EOF)

    Recordset1_total = Recordset1_total + 1

    Recordset1.MoveNext

  Wend



  ' reset the cursor to the beginning

  If (Recordset1.CursorType > 0) Then

    Recordset1.MoveFirst

  Else

    Recordset1.Requery

  End If



  ' set the number of rows displayed on this page

  If (Recordset1_numRows < 0 Or Recordset1_numRows > Recordset1_total) Then

    Recordset1_numRows = Recordset1_total

  End If



  ' set the first and last displayed record

  Recordset1_first = 1

  Recordset1_last = Recordset1_first + Recordset1_numRows - 1

  If (Recordset1_first > Recordset1_total) Then Recordset1_first = 

Recordset1_total

  If (Recordset1_last > Recordset1_total) Then Recordset1_last = 

Recordset1_total



End If

%>

<%

' *** Move To Record and Go To Record: declare variables



Set MM_rs    = Recordset1

MM_rsCount   = Recordset1_total

MM_size      = Recordset1_numRows

MM_uniqueCol = ""

MM_paramName = ""

MM_offset = 0

MM_atTotal = false

MM_paramIsDefined = false

If (MM_paramName <> "") Then

  MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "")

End If

%>

<%

' *** Move To Record: handle 'index' or 'offset' parameter



if (Not MM_paramIsDefined And MM_rsCount <> 0) then



  ' use index parameter if defined, otherwise use offset parameter

  r = Request.QueryString("index")

  If r = "" Then r = Request.QueryString("offset")

  If r <> "" Then MM_offset = Int(r)



  ' if we have a record count, check if we are past the end of the 

recordset

  If (MM_rsCount <> -1) Then

    If (MM_offset >= MM_rsCount Or MM_offset = -1) Then  ' past end or 

move last

      If ((MM_rsCount Mod MM_size) > 0) Then         ' last page not a 

full repeat region

        MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

      Else

        MM_offset = MM_rsCount - MM_size

      End If

    End If

  End If



  ' move the cursor to the selected record

  i = 0

  While ((Not MM_rs.EOF) And (i < MM_offset Or MM_offset = -1))

    MM_rs.MoveNext

    i = i + 1

  Wend

  If (MM_rs.EOF) Then MM_offset = i  ' set MM_offset to the last possible 

record



End If

%>

<%

' *** Move To Record: if we dont know the record count, check the display 

range



If (MM_rsCount = -1) Then



  ' walk to the end of the display range for this page

  i = MM_offset

  While (Not MM_rs.EOF And (MM_size < 0 Or i < MM_offset + MM_size))

    MM_rs.MoveNext

    i = i + 1

  Wend



  ' if we walked off the end of the recordset, set MM_rsCount and MM_size

  If (MM_rs.EOF) Then

    MM_rsCount = i

    If (MM_size < 0 Or MM_size > MM_rsCount) Then MM_size = MM_rsCount

  End If



  ' if we walked off the end, set the offset based on page size

  If (MM_rs.EOF And Not MM_paramIsDefined) Then

    If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then

      If ((MM_rsCount Mod MM_size) > 0) Then

        MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

      Else

        MM_offset = MM_rsCount - MM_size

      End If

    End If

  End If



  ' reset the cursor to the beginning

  If (MM_rs.CursorType > 0) Then

    MM_rs.MoveFirst

  Else

    MM_rs.Requery

  End If



  ' move the cursor to the selected record

  i = 0

  While (Not MM_rs.EOF And i < MM_offset)

    MM_rs.MoveNext

    i = i + 1

  Wend

End If

%>

<%

' *** Move To Record: update recordset stats



' set the first and last displayed record

Recordset1_first = MM_offset + 1

Recordset1_last  = MM_offset + MM_size

If (MM_rsCount <> -1) Then

  If (Recordset1_first > MM_rsCount) Then Recordset1_first = MM_rsCount

  If (Recordset1_last > MM_rsCount) Then Recordset1_last = MM_rsCount

End If



' set the boolean used by hide region to check if we are on the last record

MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount)

%>

<%

' *** Go To Record and Move To Record: create strings for maintaining URL 

and Form parameters



' create the list of parameters which should not be maintained

MM_removeList = "&index="

If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" & 

MM_paramName & "="

MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone=""



' add the URL parameters to the MM_keepURL string

For Each Item In Request.QueryString

  NextItem = "&" & Item & "="

  If (InStr(1,MM_removeList,NextItem,1) = 0) Then

    MM_keepURL = MM_keepURL & NextItem & Server.URLencode

(Request.QueryString(Item))

  End If

Next



' add the Form variables to the MM_keepForm string

For Each Item In Request.Form

  NextItem = "&" & Item & "="

  If (InStr(1,MM_removeList,NextItem,1) = 0) Then

    MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form

(Item))

  End If

Next



' create the Form + URL string and remove the intial '&' from each of the 

strings

MM_keepBoth = MM_keepURL & MM_keepForm

if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len

(MM_keepBoth) - 1)

if (MM_keepURL <> "")  Then MM_keepURL  = Right(MM_keepURL, Len

(MM_keepURL) - 1)

if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len

(MM_keepForm) - 1)



' a utility function used for adding additional parameters to these strings

Function MM_joinChar(firstItem)

  If (firstItem <> "") Then

    MM_joinChar = "&"

  Else

    MM_joinChar = ""

  End If

End Function

%>

<%

' *** Move To Record: set the strings for the first, last, next, and 

previous links



MM_keepMove = MM_keepBoth

MM_moveParam = "index"



' if the page has a repeated region, remove 'offset' from the maintained 

parameters

If (MM_size > 0) Then

  MM_moveParam = "offset"

  If (MM_keepMove <> "") Then

    params = Split(MM_keepMove, "&")

    MM_keepMove = ""

    For i = 0 To UBound(params)

      nextItem = Left(params(i), InStr(params(i),"=") - 1)

      If (StrComp(nextItem,MM_moveParam,1) <> 0) Then

        MM_keepMove = MM_keepMove & "&" & params(i)

      End If

    Next

    If (MM_keepMove <> "") Then

      MM_keepMove = Right(MM_keepMove, Len(MM_keepMove) - 1)

    End If

  End If

End If



' set the strings for the move to links

If (MM_keepMove <> "") Then MM_keepMove = MM_keepMove & "&"

urlStr = Request.ServerVariables("URL") & "?" & MM_keepMove & MM_moveParam 

& "="

MM_moveFirst = urlStr & "0"

MM_moveLast  = urlStr & "-1"

MM_moveNext  = urlStr & Cstr(MM_offset + MM_size)

prev = MM_offset - MM_size

If (prev < 0) Then prev = 0

MM_movePrev  = urlStr & Cstr(prev)

%>

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<table align="center" border="1">

  <tr> 

    <td align="default" width="8%"> ID </td>

    <td align="default" width="8%"> REGION </td>

    <td align="default" width="8%"> CITYADDRESS </td>

    <td align="default" width="8%"> MODEL </td>

    <td align="default" width="8%"> SERIAL NUMBER</td>

    <td align="default" width="8%"> PBX VERSION</td>

    <td align="default" width="8%"> PBX RELEASE</td>

    <td align="default" width="8%"> MM RELEASE</td>

    <td align="default" width="8%"> REQUIREMENT </td>

    <td align="default" width="8%"> ESTIMATED COST</td>

    <td align="default" width="8%"> REGION PRIORITY</td>

    <td align="default" width="8%"> STATE PRIORITY</td>

  </tr>

  <% 

While ((Repeat2__numRows <> 0) AND (NOT Recordset1.EOF)) 

%>

  <tr> 

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("ID").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("Region").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("CityAddress").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("Model").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("SerialNumber").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("PBXVer").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("PBXRelease").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("MMRLS").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("Requirement").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("EstimatedCost").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("RegionPriority").Value)%> </td>

    <td align="default" width="8%"> 

      <%=(Recordset1.Fields.Item("StatePriority").Value)%> </td>

  </tr>

  <% 

  Repeat2__index=Repeat2__index+1

  Repeat2__numRows=Repeat2__numRows-1

  Recordset1.MoveNext()

Wend

%>

</table>

<p> <A HREF="<%=MM_movePrev%>">Previous</A> 

  <A HREF="<%=MM_moveNext%>">Next</A> 

</p>

</body>

</html>

<%

Recordset1.Close()

%>

<%

Recordset2.Close()

%>



 

Message #2 by "Cole, R. MR DOIM" <8r8251@e...> on Wed, 16 May 2001 09:52:31 -0400
See MS KB article Q183060 - INFO: Troubleshooting Guide for 80004005 and

Other Error Messages.  It may help.



Rich Cole

Signal Corporation





Message #3 by "Ken Schaefer" <ken@a...> on Thu, 17 May 2001 18:15:15 +1000
The code below is a god-awful mess. Why don't you:

a) tell us which is line 22?

b) post lines 1-22, and no more (well, maybe up to line 30 if you're not

sure which is line 22) - there's no point us looking at the rest of it - the

code is bombing at 22.



That said, I think you are opening two connections to your DB because you

are using an implicitly created connection, not an explicitly created

connection. If you may be using locktypes that are generated lock

contention - one from each connection.



Create 1 explicit connection:



Set objConn = Server.CreateObject("ADODB.Connection")

objConn.Open strConnect



Then set the active connection for each Recordset to objConn:



objRS.ActiveConnection = objConn



As well, use named constants, not magic numbers, for your cursor and

locktypes:



objRS.CursorType = adOpenForwardOnly

objRS.CursorLocation = adUseServer

objRS.LockType = adLockReadOnly



You might need to read this:

http://www.adOpenStatic.com/faq/800a0bb9step2.asp on defining your ADO

constants.



Cheers

Ken





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

: In Dreamweaver, using ASP I have been trying to search for specific

: records in a database and pull them up according to what region they are

: in.  Locally this works fine.  When I try and retrieve the information out

: on the server I get the following error.

:

: Provider error 80004005

:

: Unspecified error

:

: /UCSDEV/PBX/ASPCode/Results.asp, line 22

:

: Here is my code. Please Help!

:

:

: <%@LANGUAGE="VBSCRIPT"%>

: <!--#include file="Connections/PBX2001.asp" -->

: <%

: Dim Recordset1__MMColParam

: Recordset1__MMColParam = "1"

: if (Request.QueryString("Select") <> "") then Recordset1__MMColParam 

: Request.QueryString("Select")

: %>

: <%

: set Recordset1 = Server.CreateObject("ADODB.Recordset")

: Recordset1.ActiveConnection = MM_PBX2001_STRING

: Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" + Replace

: (Recordset1__MMColParam, "'", "''") + "'"

: Recordset1.CursorType = 0

: Recordset1.CursorLocation = 2

: Recordset1.LockType = 3

: Recordset1.Open()

: Recordset1_numRows = 0

: %>

: <%

:

:

: set Recordset2 = Server.CreateObject("ADODB.Recordset")

: Recordset2.ActiveConnection = MM_PBX2001_STRING

: Recordset2.Source = "SELECT * FROM PBX"

: Recordset2.CursorType = 0

: Recordset2.CursorLocation = 2

: Recordset2.LockType = 3

: Recordset2.Open()

: Recordset2_numRows = 0

: %>

: <%

:

: %>

: <%

: Dim Repeat2__numRows

: Repeat2__numRows = -1

: Dim Repeat2__index

: Repeat2__index = 0

: Recordset1_numRows = Recordset1_numRows + Repeat2__numRows

: %>

: <%

: '  *** Recordset Stats, Move To Record, and Go To Record: declare stats

: variables

:

: ' set the record count

: Recordset1_total = Recordset1.RecordCount

:

: ' set the number of rows displayed on this page

: If (Recordset1_numRows < 0) Then

:   Recordset1_numRows = Recordset1_total

: Elseif (Recordset1_numRows = 0) Then

:   Recordset1_numRows = 1

: End If

:

: ' set the first and last displayed record

: Recordset1_first = 1

: Recordset1_last  = Recordset1_first + Recordset1_numRows - 1

:

: ' if we have the correct record count, check the other stats

: If (Recordset1_total <> -1) Then

:   If (Recordset1_first > Recordset1_total) Then Recordset1_first 

: Recordset1_total

:   If (Recordset1_last > Recordset1_total) Then Recordset1_last 

: Recordset1_total

:   If (Recordset1_numRows > Recordset1_total) Then Recordset1_numRows 

: Recordset1_total

: End If

: %>

: <%

: ' *** Recordset Stats: if we don't know the record count, manually count

: them

:

: If (Recordset1_total = -1) Then

:

:   ' count the total records by iterating through the recordset

:   Recordset1_total=0

:   While (Not Recordset1.EOF)

:     Recordset1_total = Recordset1_total + 1

:     Recordset1.MoveNext

:   Wend

:

:   ' reset the cursor to the beginning

:   If (Recordset1.CursorType > 0) Then

:     Recordset1.MoveFirst

:   Else

:     Recordset1.Requery

:   End If

:

:   ' set the number of rows displayed on this page

:   If (Recordset1_numRows < 0 Or Recordset1_numRows > Recordset1_total)

Then

:     Recordset1_numRows = Recordset1_total

:   End If

:

:   ' set the first and last displayed record

:   Recordset1_first = 1

:   Recordset1_last = Recordset1_first + Recordset1_numRows - 1

:   If (Recordset1_first > Recordset1_total) Then Recordset1_first 

: Recordset1_total

:   If (Recordset1_last > Recordset1_total) Then Recordset1_last 

: Recordset1_total

:

: End If

: %>

: <%

: ' *** Move To Record and Go To Record: declare variables

:

: Set MM_rs    = Recordset1

: MM_rsCount   = Recordset1_total

: MM_size      = Recordset1_numRows

: MM_uniqueCol = ""

: MM_paramName = ""

: MM_offset = 0

: MM_atTotal = false

: MM_paramIsDefined = false

: If (MM_paramName <> "") Then

:   MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "")

: End If

: %>

: <%

: ' *** Move To Record: handle 'index' or 'offset' parameter

:

: if (Not MM_paramIsDefined And MM_rsCount <> 0) then

:

:   ' use index parameter if defined, otherwise use offset parameter

:   r = Request.QueryString("index")

:   If r = "" Then r = Request.QueryString("offset")

:   If r <> "" Then MM_offset = Int(r)

:

:   ' if we have a record count, check if we are past the end of the

: recordset

:   If (MM_rsCount <> -1) Then

:     If (MM_offset >= MM_rsCount Or MM_offset = -1) Then  ' past end or

: move last

:       If ((MM_rsCount Mod MM_size) > 0) Then         ' last page not a

: full repeat region

:         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

:       Else

:         MM_offset = MM_rsCount - MM_size

:       End If

:     End If

:   End If

:

:   ' move the cursor to the selected record

:   i = 0

:   While ((Not MM_rs.EOF) And (i < MM_offset Or MM_offset = -1))

:     MM_rs.MoveNext

:     i = i + 1

:   Wend

:   If (MM_rs.EOF) Then MM_offset = i  ' set MM_offset to the last possible

: record

:

: End If

: %>

: <%

: ' *** Move To Record: if we dont know the record count, check the display

: range

:

: If (MM_rsCount = -1) Then

:

:   ' walk to the end of the display range for this page

:   i = MM_offset

:   While (Not MM_rs.EOF And (MM_size < 0 Or i < MM_offset + MM_size))

:     MM_rs.MoveNext

:     i = i + 1

:   Wend

:

:   ' if we walked off the end of the recordset, set MM_rsCount and MM_size

:   If (MM_rs.EOF) Then

:     MM_rsCount = i

:     If (MM_size < 0 Or MM_size > MM_rsCount) Then MM_size = MM_rsCount

:   End If

:

:   ' if we walked off the end, set the offset based on page size

:   If (MM_rs.EOF And Not MM_paramIsDefined) Then

:     If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then

:       If ((MM_rsCount Mod MM_size) > 0) Then

:         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

:       Else

:         MM_offset = MM_rsCount - MM_size

:       End If

:     End If

:   End If

:

:   ' reset the cursor to the beginning

:   If (MM_rs.CursorType > 0) Then

:     MM_rs.MoveFirst

:   Else

:     MM_rs.Requery

:   End If

:

:   ' move the cursor to the selected record

:   i = 0

:   While (Not MM_rs.EOF And i < MM_offset)

:     MM_rs.MoveNext

:     i = i + 1

:   Wend

: End If

: %>

: <%

: ' *** Move To Record: update recordset stats

:

: ' set the first and last displayed record

: Recordset1_first = MM_offset + 1

: Recordset1_last  = MM_offset + MM_size

: If (MM_rsCount <> -1) Then

:   If (Recordset1_first > MM_rsCount) Then Recordset1_first = MM_rsCount

:   If (Recordset1_last > MM_rsCount) Then Recordset1_last = MM_rsCount

: End If

:

: ' set the boolean used by hide region to check if we are on the last

record

: MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount)

: %>

: <%

: ' *** Go To Record and Move To Record: create strings for maintaining URL

: and Form parameters

:

: ' create the list of parameters which should not be maintained

: MM_removeList = "&index="

: If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" &

: MM_paramName & "="

: MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone=""

:

: ' add the URL parameters to the MM_keepURL string

: For Each Item In Request.QueryString

:   NextItem = "&" & Item & "="

:   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

:     MM_keepURL = MM_keepURL & NextItem & Server.URLencode

: (Request.QueryString(Item))

:   End If

: Next

:

: ' add the Form variables to the MM_keepForm string

: For Each Item In Request.Form

:   NextItem = "&" & Item & "="

:   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

:     MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form

: (Item))

:   End If

: Next

:

: ' create the Form + URL string and remove the intial '&' from each of the

: strings

: MM_keepBoth = MM_keepURL & MM_keepForm

: if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len

: (MM_keepBoth) - 1)

: if (MM_keepURL <> "")  Then MM_keepURL  = Right(MM_keepURL, Len

: (MM_keepURL) - 1)

: if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len

: (MM_keepForm) - 1)

:

: ' a utility function used for adding additional parameters to these

strings

: Function MM_joinChar(firstItem)

:   If (firstItem <> "") Then

:     MM_joinChar = "&"

:   Else

:     MM_joinChar = ""

:   End If

: End Function

: %>

: <%

: ' *** Move To Record: set the strings for the first, last, next, and

: previous links

:

: MM_keepMove = MM_keepBoth

: MM_moveParam = "index"

:

: ' if the page has a repeated region, remove 'offset' from the maintained

: parameters

: If (MM_size > 0) Then

:   MM_moveParam = "offset"

:   If (MM_keepMove <> "") Then

:     params = Split(MM_keepMove, "&")

:     MM_keepMove = ""

:     For i = 0 To UBound(params)

:       nextItem = Left(params(i), InStr(params(i),"=") - 1)

:       If (StrComp(nextItem,MM_moveParam,1) <> 0) Then

:         MM_keepMove = MM_keepMove & "&" & params(i)

:       End If

:     Next

:     If (MM_keepMove <> "") Then

:       MM_keepMove = Right(MM_keepMove, Len(MM_keepMove) - 1)

:     End If

:   End If

: End If

:

: ' set the strings for the move to links

: If (MM_keepMove <> "") Then MM_keepMove = MM_keepMove & "&"

: urlStr = Request.ServerVariables("URL") & "?" & MM_keepMove & MM_moveParam

: & "="

: MM_moveFirst = urlStr & "0"

: MM_moveLast  = urlStr & "-1"

: MM_moveNext  = urlStr & Cstr(MM_offset + MM_size)

: prev = MM_offset - MM_size

: If (prev < 0) Then prev = 0

: MM_movePrev  = urlStr & Cstr(prev)

: %>

: <html>

: <head>

: <title>Untitled Document</title>

: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

: </head>

: <body bgcolor="#FFFFFF" text="#000000">

: <table align="center" border="1">

:   <tr>

:     <td align="default" width="8%"> ID </td>

:     <td align="default" width="8%"> REGION </td>

:     <td align="default" width="8%"> CITYADDRESS </td>

:     <td align="default" width="8%"> MODEL </td>

:     <td align="default" width="8%"> SERIAL NUMBER</td>

:     <td align="default" width="8%"> PBX VERSION</td>

:     <td align="default" width="8%"> PBX RELEASE</td>

:     <td align="default" width="8%"> MM RELEASE</td>

:     <td align="default" width="8%"> REQUIREMENT </td>

:     <td align="default" width="8%"> ESTIMATED COST</td>

:     <td align="default" width="8%"> REGION PRIORITY</td>

:     <td align="default" width="8%"> STATE PRIORITY</td>

:   </tr>

:   <%

: While ((Repeat2__numRows <> 0) AND (NOT Recordset1.EOF))

: %>

:   <tr>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("ID").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("Region").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("CityAddress").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("Model").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("SerialNumber").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("PBXVer").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("PBXRelease").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("MMRLS").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("Requirement").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("EstimatedCost").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("RegionPriority").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("StatePriority").Value)%> </td>

:   </tr>

:   <%

:   Repeat2__index=Repeat2__index+1

:   Repeat2__numRows=Repeat2__numRows-1

:   Recordset1.MoveNext()

: Wend

: %>

: </table>

: <p> <A HREF="<%=MM_movePrev%>">Previous</A>

:   <A HREF="<%=MM_moveNext%>">Next</A>

: </p>

: </body>

: </html>

: <%

: Recordset1.Close()

: %>

: <%

: Recordset2.Close()

: %>





Message #4 by "McHenney,Molly" <molly.mchenney@d...> on Thu, 17 May 2001 08:25:08 -0500
Ken,



I took one of the recordsets out and now it is working part of the time.

The other part of the time I get the same error on on line 11.  Here is part

of my code.  I understood your explanation but wasn't exactly sure what to

do. I am new to coding. Could you show me what I need to do.  Thanks in

advance. Line 11 is:  Recordset1.ActiveConnection = MM_PBX2001_STRING



<%@LANGUAGE="VBSCRIPT"%> 

<!--#include file="Connections/PBX2001.asp" -->

<%

Dim Recordset1__MMColParam

Recordset1__MMColParam = "1"

if (Request.QueryString("Select") <> "") then Recordset1__MMColParam 

Request.QueryString("Select")

%>

<%



set Recordset1 = Server.CreateObject("ADODB.Recordset")

Recordset1.ActiveConnection = MM_PBX2001_STRING

Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" +

Replace(Recordset1__MMColParam, "'", "''") + "'"

Recordset1.CursorType = 0

Recordset1.CursorLocation = 2

Recordset1.LockType = 3

Recordset1.Open()

Recordset1_numRows = 0

%>

<%



%>



-----Original Message-----

From: Ken Schaefer [mailto:ken@a...]

Sent: Thursday, May 17, 2001 3:15 AM

To: ASP Database Setup

Subject: [asp_database_setup] Re: Provider Error 80004005 Unspecified

Error





The code below is a god-awful mess. Why don't you:

a) tell us which is line 22?

b) post lines 1-22, and no more (well, maybe up to line 30 if you're not

sure which is line 22) - there's no point us looking at the rest of it - the

code is bombing at 22.



That said, I think you are opening two connections to your DB because you

are using an implicitly created connection, not an explicitly created

connection. If you may be using locktypes that are generated lock

contention - one from each connection.



Create 1 explicit connection:



Set objConn = Server.CreateObject("ADODB.Connection")

objConn.Open strConnect



Then set the active connection for each Recordset to objConn:



objRS.ActiveConnection = objConn



As well, use named constants, not magic numbers, for your cursor and

locktypes:



objRS.CursorType = adOpenForwardOnly

objRS.CursorLocation = adUseServer

objRS.LockType = adLockReadOnly



You might need to read this:

http://www.adOpenStatic.com/faq/800a0bb9step2.asp on defining your ADO

constants.



Cheers

Ken





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

: In Dreamweaver, using ASP I have been trying to search for specific

: records in a database and pull them up according to what region they are

: in.  Locally this works fine.  When I try and retrieve the information out

: on the server I get the following error.

:

: Provider error 80004005

:

: Unspecified error

:

: /UCSDEV/PBX/ASPCode/Results.asp, line 22

:

: Here is my code. Please Help!

:

:

: <%@LANGUAGE="VBSCRIPT"%>

: <!--#include file="Connections/PBX2001.asp" -->

: <%

: Dim Recordset1__MMColParam

: Recordset1__MMColParam = "1"

: if (Request.QueryString("Select") <> "") then Recordset1__MMColParam 

: Request.QueryString("Select")

: %>

: <%

: set Recordset1 = Server.CreateObject("ADODB.Recordset")

: Recordset1.ActiveConnection = MM_PBX2001_STRING

: Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" + Replace

: (Recordset1__MMColParam, "'", "''") + "'"

: Recordset1.CursorType = 0

: Recordset1.CursorLocation = 2

: Recordset1.LockType = 3

: Recordset1.Open()

: Recordset1_numRows = 0

: %>

: <%

:

:

: set Recordset2 = Server.CreateObject("ADODB.Recordset")

: Recordset2.ActiveConnection = MM_PBX2001_STRING

: Recordset2.Source = "SELECT * FROM PBX"

: Recordset2.CursorType = 0

: Recordset2.CursorLocation = 2

: Recordset2.LockType = 3

: Recordset2.Open()

: Recordset2_numRows = 0

: %>

: <%

:

: %>

: <%

: Dim Repeat2__numRows

: Repeat2__numRows = -1

: Dim Repeat2__index

: Repeat2__index = 0

: Recordset1_numRows = Recordset1_numRows + Repeat2__numRows

: %>

: <%

: '  *** Recordset Stats, Move To Record, and Go To Record: declare stats

: variables

:

: ' set the record count

: Recordset1_total = Recordset1.RecordCount

:

: ' set the number of rows displayed on this page

: If (Recordset1_numRows < 0) Then

:   Recordset1_numRows = Recordset1_total

: Elseif (Recordset1_numRows = 0) Then

:   Recordset1_numRows = 1

: End If

:

: ' set the first and last displayed record

: Recordset1_first = 1

: Recordset1_last  = Recordset1_first + Recordset1_numRows - 1

:

: ' if we have the correct record count, check the other stats

: If (Recordset1_total <> -1) Then

:   If (Recordset1_first > Recordset1_total) Then Recordset1_first 

: Recordset1_total

:   If (Recordset1_last > Recordset1_total) Then Recordset1_last 

: Recordset1_total

:   If (Recordset1_numRows > Recordset1_total) Then Recordset1_numRows 

: Recordset1_total

: End If

: %>

: <%

: ' *** Recordset Stats: if we don't know the record count, manually count

: them

:

: If (Recordset1_total = -1) Then

:

:   ' count the total records by iterating through the recordset

:   Recordset1_total=0

:   While (Not Recordset1.EOF)

:     Recordset1_total = Recordset1_total + 1

:     Recordset1.MoveNext

:   Wend

:

:   ' reset the cursor to the beginning

:   If (Recordset1.CursorType > 0) Then

:     Recordset1.MoveFirst

:   Else

:     Recordset1.Requery

:   End If

:

:   ' set the number of rows displayed on this page

:   If (Recordset1_numRows < 0 Or Recordset1_numRows > Recordset1_total)

Then

:     Recordset1_numRows = Recordset1_total

:   End If

:

:   ' set the first and last displayed record

:   Recordset1_first = 1

:   Recordset1_last = Recordset1_first + Recordset1_numRows - 1

:   If (Recordset1_first > Recordset1_total) Then Recordset1_first 

: Recordset1_total

:   If (Recordset1_last > Recordset1_total) Then Recordset1_last 

: Recordset1_total

:

: End If

: %>

: <%

: ' *** Move To Record and Go To Record: declare variables

:

: Set MM_rs    = Recordset1

: MM_rsCount   = Recordset1_total

: MM_size      = Recordset1_numRows

: MM_uniqueCol = ""

: MM_paramName = ""

: MM_offset = 0

: MM_atTotal = false

: MM_paramIsDefined = false

: If (MM_paramName <> "") Then

:   MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "")

: End If

: %>

: <%

: ' *** Move To Record: handle 'index' or 'offset' parameter

:

: if (Not MM_paramIsDefined And MM_rsCount <> 0) then

:

:   ' use index parameter if defined, otherwise use offset parameter

:   r = Request.QueryString("index")

:   If r = "" Then r = Request.QueryString("offset")

:   If r <> "" Then MM_offset = Int(r)

:

:   ' if we have a record count, check if we are past the end of the

: recordset

:   If (MM_rsCount <> -1) Then

:     If (MM_offset >= MM_rsCount Or MM_offset = -1) Then  ' past end or

: move last

:       If ((MM_rsCount Mod MM_size) > 0) Then         ' last page not a

: full repeat region

:         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

:       Else

:         MM_offset = MM_rsCount - MM_size

:       End If

:     End If

:   End If

:

:   ' move the cursor to the selected record

:   i = 0

:   While ((Not MM_rs.EOF) And (i < MM_offset Or MM_offset = -1))

:     MM_rs.MoveNext

:     i = i + 1

:   Wend

:   If (MM_rs.EOF) Then MM_offset = i  ' set MM_offset to the last possible

: record

:

: End If

: %>

: <%

: ' *** Move To Record: if we dont know the record count, check the display

: range

:

: If (MM_rsCount = -1) Then

:

:   ' walk to the end of the display range for this page

:   i = MM_offset

:   While (Not MM_rs.EOF And (MM_size < 0 Or i < MM_offset + MM_size))

:     MM_rs.MoveNext

:     i = i + 1

:   Wend

:

:   ' if we walked off the end of the recordset, set MM_rsCount and MM_size

:   If (MM_rs.EOF) Then

:     MM_rsCount = i

:     If (MM_size < 0 Or MM_size > MM_rsCount) Then MM_size = MM_rsCount

:   End If

:

:   ' if we walked off the end, set the offset based on page size

:   If (MM_rs.EOF And Not MM_paramIsDefined) Then

:     If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then

:       If ((MM_rsCount Mod MM_size) > 0) Then

:         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

:       Else

:         MM_offset = MM_rsCount - MM_size

:       End If

:     End If

:   End If

:

:   ' reset the cursor to the beginning

:   If (MM_rs.CursorType > 0) Then

:     MM_rs.MoveFirst

:   Else

:     MM_rs.Requery

:   End If

:

:   ' move the cursor to the selected record

:   i = 0

:   While (Not MM_rs.EOF And i < MM_offset)

:     MM_rs.MoveNext

:     i = i + 1

:   Wend

: End If

: %>

: <%

: ' *** Move To Record: update recordset stats

:

: ' set the first and last displayed record

: Recordset1_first = MM_offset + 1

: Recordset1_last  = MM_offset + MM_size

: If (MM_rsCount <> -1) Then

:   If (Recordset1_first > MM_rsCount) Then Recordset1_first = MM_rsCount

:   If (Recordset1_last > MM_rsCount) Then Recordset1_last = MM_rsCount

: End If

:

: ' set the boolean used by hide region to check if we are on the last

record

: MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount)

: %>

: <%

: ' *** Go To Record and Move To Record: create strings for maintaining URL

: and Form parameters

:

: ' create the list of parameters which should not be maintained

: MM_removeList = "&index="

: If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" &

: MM_paramName & "="

: MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone=""

:

: ' add the URL parameters to the MM_keepURL string

: For Each Item In Request.QueryString

:   NextItem = "&" & Item & "="

:   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

:     MM_keepURL = MM_keepURL & NextItem & Server.URLencode

: (Request.QueryString(Item))

:   End If

: Next

:

: ' add the Form variables to the MM_keepForm string

: For Each Item In Request.Form

:   NextItem = "&" & Item & "="

:   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

:     MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form

: (Item))

:   End If

: Next

:

: ' create the Form + URL string and remove the intial '&' from each of the

: strings

: MM_keepBoth = MM_keepURL & MM_keepForm

: if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len

: (MM_keepBoth) - 1)

: if (MM_keepURL <> "")  Then MM_keepURL  = Right(MM_keepURL, Len

: (MM_keepURL) - 1)

: if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len

: (MM_keepForm) - 1)

:

: ' a utility function used for adding additional parameters to these

strings

: Function MM_joinChar(firstItem)

:   If (firstItem <> "") Then

:     MM_joinChar = "&"

:   Else

:     MM_joinChar = ""

:   End If

: End Function

: %>

: <%

: ' *** Move To Record: set the strings for the first, last, next, and

: previous links

:

: MM_keepMove = MM_keepBoth

: MM_moveParam = "index"

:

: ' if the page has a repeated region, remove 'offset' from the maintained

: parameters

: If (MM_size > 0) Then

:   MM_moveParam = "offset"

:   If (MM_keepMove <> "") Then

:     params = Split(MM_keepMove, "&")

:     MM_keepMove = ""

:     For i = 0 To UBound(params)

:       nextItem = Left(params(i), InStr(params(i),"=") - 1)

:       If (StrComp(nextItem,MM_moveParam,1) <> 0) Then

:         MM_keepMove = MM_keepMove & "&" & params(i)

:       End If

:     Next

:     If (MM_keepMove <> "") Then

:       MM_keepMove = Right(MM_keepMove, Len(MM_keepMove) - 1)

:     End If

:   End If

: End If

:

: ' set the strings for the move to links

: If (MM_keepMove <> "") Then MM_keepMove = MM_keepMove & "&"

: urlStr = Request.ServerVariables("URL") & "?" & MM_keepMove & MM_moveParam

: & "="

: MM_moveFirst = urlStr & "0"

: MM_moveLast  = urlStr & "-1"

: MM_moveNext  = urlStr & Cstr(MM_offset + MM_size)

: prev = MM_offset - MM_size

: If (prev < 0) Then prev = 0

: MM_movePrev  = urlStr & Cstr(prev)

: %>

: <html>

: <head>

: <title>Untitled Document</title>

: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

: </head>

: <body bgcolor="#FFFFFF" text="#000000">

: <table align="center" border="1">

:   <tr>

:     <td align="default" width="8%"> ID </td>

:     <td align="default" width="8%"> REGION </td>

:     <td align="default" width="8%"> CITYADDRESS </td>

:     <td align="default" width="8%"> MODEL </td>

:     <td align="default" width="8%"> SERIAL NUMBER</td>

:     <td align="default" width="8%"> PBX VERSION</td>

:     <td align="default" width="8%"> PBX RELEASE</td>

:     <td align="default" width="8%"> MM RELEASE</td>

:     <td align="default" width="8%"> REQUIREMENT </td>

:     <td align="default" width="8%"> ESTIMATED COST</td>

:     <td align="default" width="8%"> REGION PRIORITY</td>

:     <td align="default" width="8%"> STATE PRIORITY</td>

:   </tr>

:   <%

: While ((Repeat2__numRows <> 0) AND (NOT Recordset1.EOF))

: %>

:   <tr>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("ID").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("Region").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("CityAddress").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("Model").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("SerialNumber").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("PBXVer").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("PBXRelease").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("MMRLS").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("Requirement").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("EstimatedCost").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("RegionPriority").Value)%> </td>

:     <td align="default" width="8%">

:       <%=(Recordset1.Fields.Item("StatePriority").Value)%> </td>

:   </tr>

:   <%

:   Repeat2__index=Repeat2__index+1

:   Repeat2__numRows=Repeat2__numRows-1

:   Recordset1.MoveNext()

: Wend

: %>

: </table>

: <p> <A HREF="<%=MM_movePrev%>">Previous</A>

:   <A HREF="<%=MM_moveNext%>">Next</A>

: </p>

: </body>

: </html>

: <%

: Recordset1.Close()

: %>

: <%

: Recordset2.Close()

: %>







Message #5 by "molly mchenney" <molly.mchenney@d...> on Thu, 17 May 2001 14:32:37
> Ken,



I took one of the recordsets out and now it is working part of the time.  

The other part of the time I get the same error on on line 11.  Here is 

part of my code.  I understood your explanation but wasn't exactly sure 

what to do. I am new to coding. Could you show me what I need to do.  

Thanks in advance. Line 11 is:  Recordset1.ActiveConnection = 

MM_PBX2001_STRING



<%@LANGUAGE="VBSCRIPT"%> 

<!--#include file="Connections/PBX2001.asp" -->

<%

Dim Recordset1__MMColParam

Recordset1__MMColParam = "1"

if (Request.QueryString("Select") <> "") then Recordset1__MMColParam = 

Request.QueryString("Select")

%>

<%



set Recordset1 = Server.CreateObject("ADODB.Recordset")

Recordset1.ActiveConnection = MM_PBX2001_STRING

Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" + Replace

(Recordset1__MMColParam, "'", "''") + "'"

Recordset1.CursorType = 0

Recordset1.CursorLocation = 2

Recordset1.LockType = 3

Recordset1.Open()

Recordset1_numRows = 0

%>

<%



%>









mmchenney (Visitor) May 16, 2001 

> In Dreamweaver, using ASP I have been trying to search for specific 

> records in a database and pull them up according to what region they are 

> in.  Locally this works fine.  When I try and retrieve the information 

out 

> on the server I get the following error.

> 

> Provider error 80004005

> 

> Unspecified error

> 

> /UCSDEV/PBX/ASPCode/Results.asp, line 22

> 

> Here is my code. Please Help!

> 

> 

> <%@LANGUAGE="VBSCRIPT"%> 

> <!--#include file="Connections/PBX2001.asp" -->

> <%

> Dim Recordset1__MMColParam

> Recordset1__MMColParam = "1"

> if (Request.QueryString("Select") <> "") then Recordset1__MMColParam = 

> Request.QueryString("Select")

> %>

> <%

> set Recordset1 = Server.CreateObject("ADODB.Recordset")

> Recordset1.ActiveConnection = MM_PBX2001_STRING

> Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" + Replace

> (Recordset1__MMColParam, "'", "''") + "'"

> Recordset1.CursorType = 0

> Recordset1.CursorLocation = 2

> Recordset1.LockType = 3

> Recordset1.Open()

> Recordset1_numRows = 0

> %>

> <%

> 

> 

> set Recordset2 = Server.CreateObject("ADODB.Recordset")

> Recordset2.ActiveConnection = MM_PBX2001_STRING

> Recordset2.Source = "SELECT * FROM PBX"

> Recordset2.CursorType = 0

> Recordset2.CursorLocation = 2

> Recordset2.LockType = 3

> Recordset2.Open()

> Recordset2_numRows = 0

> %>

> <%

> 

> %>

> <%

> Dim Repeat2__numRows

> Repeat2__numRows = -1

> Dim Repeat2__index

> Repeat2__index = 0

> Recordset1_numRows = Recordset1_numRows + Repeat2__numRows

> %>

> <%

> '  *** Recordset Stats, Move To Record, and Go To Record: declare stats 

> variables

> 

> ' set the record count

> Recordset1_total = Recordset1.RecordCount

> 

> ' set the number of rows displayed on this page

> If (Recordset1_numRows < 0) Then

>   Recordset1_numRows = Recordset1_total

> Elseif (Recordset1_numRows = 0) Then

>   Recordset1_numRows = 1

> End If

> 

> ' set the first and last displayed record

> Recordset1_first = 1

> Recordset1_last  = Recordset1_first + Recordset1_numRows - 1

> 

> ' if we have the correct record count, check the other stats

> If (Recordset1_total <> -1) Then

>   If (Recordset1_first > Recordset1_total) Then Recordset1_first = 

> Recordset1_total

>   If (Recordset1_last > Recordset1_total) Then Recordset1_last = 

> Recordset1_total

>   If (Recordset1_numRows > Recordset1_total) Then Recordset1_numRows = 

> Recordset1_total

> End If

> %>

> <%

> ' *** Recordset Stats: if we don't know the record count, manually count 

> them

> 

> If (Recordset1_total = -1) Then

> 

>   ' count the total records by iterating through the recordset

>   Recordset1_total=0

>   While (Not Recordset1.EOF)

>     Recordset1_total = Recordset1_total + 1

>     Recordset1.MoveNext

>   Wend

> 

>   ' reset the cursor to the beginning

>   If (Recordset1.CursorType > 0) Then

>     Recordset1.MoveFirst

>   Else

>     Recordset1.Requery

>   End If

> 

>   ' set the number of rows displayed on this page

>   If (Recordset1_numRows < 0 Or Recordset1_numRows > Recordset1_total) 

Then

>     Recordset1_numRows = Recordset1_total

>   End If

> 

>   ' set the first and last displayed record

>   Recordset1_first = 1

>   Recordset1_last = Recordset1_first + Recordset1_numRows - 1

>   If (Recordset1_first > Recordset1_total) Then Recordset1_first = 

> Recordset1_total

>   If (Recordset1_last > Recordset1_total) Then Recordset1_last = 

> Recordset1_total

> 

> End If

> %>

> <%

> ' *** Move To Record and Go To Record: declare variables

> 

> Set MM_rs    = Recordset1

> MM_rsCount   = Recordset1_total

> MM_size      = Recordset1_numRows

> MM_uniqueCol = ""

> MM_paramName = ""

> MM_offset = 0

> MM_atTotal = false

> MM_paramIsDefined = false

> If (MM_paramName <> "") Then

>   MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "")

> End If

> %>

> <%

> ' *** Move To Record: handle 'index' or 'offset' parameter

> 

> if (Not MM_paramIsDefined And MM_rsCount <> 0) then

> 

>   ' use index parameter if defined, otherwise use offset parameter

>   r = Request.QueryString("index")

>   If r = "" Then r = Request.QueryString("offset")

>   If r <> "" Then MM_offset = Int(r)

> 

>   ' if we have a record count, check if we are past the end of the 

> recordset

>   If (MM_rsCount <> -1) Then

>     If (MM_offset >= MM_rsCount Or MM_offset = -1) Then  ' past end or 

> move last

>       If ((MM_rsCount Mod MM_size) > 0) Then         ' last page not a 

> full repeat region

>         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

>       Else

>         MM_offset = MM_rsCount - MM_size

>       End If

>     End If

>   End If

> 

>   ' move the cursor to the selected record

>   i = 0

>   While ((Not MM_rs.EOF) And (i < MM_offset Or MM_offset = -1))

>     MM_rs.MoveNext

>     i = i + 1

>   Wend

>   If (MM_rs.EOF) Then MM_offset = i  ' set MM_offset to the last 

possible 

> record

> 

> End If

> %>

> <%

> ' *** Move To Record: if we dont know the record count, check the 

display 

> range

> 

> If (MM_rsCount = -1) Then

> 

>   ' walk to the end of the display range for this page

>   i = MM_offset

>   While (Not MM_rs.EOF And (MM_size < 0 Or i < MM_offset + MM_size))

>     MM_rs.MoveNext

>     i = i + 1

>   Wend

> 

>   ' if we walked off the end of the recordset, set MM_rsCount and MM_size

>   If (MM_rs.EOF) Then

>     MM_rsCount = i

>     If (MM_size < 0 Or MM_size > MM_rsCount) Then MM_size = MM_rsCount

>   End If

> 

>   ' if we walked off the end, set the offset based on page size

>   If (MM_rs.EOF And Not MM_paramIsDefined) Then

>     If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then

>       If ((MM_rsCount Mod MM_size) > 0) Then

>         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

>       Else

>         MM_offset = MM_rsCount - MM_size

>       End If

>     End If

>   End If

> 

>   ' reset the cursor to the beginning

>   If (MM_rs.CursorType > 0) Then

>     MM_rs.MoveFirst

>   Else

>     MM_rs.Requery

>   End If

> 

>   ' move the cursor to the selected record

>   i = 0

>   While (Not MM_rs.EOF And i < MM_offset)

>     MM_rs.MoveNext

>     i = i + 1

>   Wend

> End If

> %>

> <%

> ' *** Move To Record: update recordset stats

> 

> ' set the first and last displayed record

> Recordset1_first = MM_offset + 1

> Recordset1_last  = MM_offset + MM_size

> If (MM_rsCount <> -1) Then

>   If (Recordset1_first > MM_rsCount) Then Recordset1_first = MM_rsCount

>   If (Recordset1_last > MM_rsCount) Then Recordset1_last = MM_rsCount

> End If

> 

> ' set the boolean used by hide region to check if we are on the last 

record

> MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount)

> %>

> <%

> ' *** Go To Record and Move To Record: create strings for maintaining 

URL 

> and Form parameters

> 

> ' create the list of parameters which should not be maintained

> MM_removeList = "&index="

> If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" & 

> MM_paramName & "="

> MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone=""

> 

> ' add the URL parameters to the MM_keepURL string

> For Each Item In Request.QueryString

>   NextItem = "&" & Item & "="

>   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

>     MM_keepURL = MM_keepURL & NextItem & Server.URLencode

> (Request.QueryString(Item))

>   End If

> Next

> 

> ' add the Form variables to the MM_keepForm string

> For Each Item In Request.Form

>   NextItem = "&" & Item & "="

>   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

>     MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form

> (Item))

>   End If

> Next

> 

> ' create the Form + URL string and remove the intial '&' from each of 

the 

> strings

> MM_keepBoth = MM_keepURL & MM_keepForm

> if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len

> (MM_keepBoth) - 1)

> if (MM_keepURL <> "")  Then MM_keepURL  = Right(MM_keepURL, Len

> (MM_keepURL) - 1)

> if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len

> (MM_keepForm) - 1)

> 

> ' a utility function used for adding additional parameters to these 

strings

> Function MM_joinChar(firstItem)

>   If (firstItem <> "") Then

>     MM_joinChar = "&"

>   Else

>     MM_joinChar = ""

>   End If

> End Function

> %>

> <%

> ' *** Move To Record: set the strings for the first, last, next, and 

> previous links

> 

> MM_keepMove = MM_keepBoth

> MM_moveParam = "index"

> 

> ' if the page has a repeated region, remove 'offset' from the maintained 

> parameters

> If (MM_size > 0) Then

>   MM_moveParam = "offset"

>   If (MM_keepMove <> "") Then

>     params = Split(MM_keepMove, "&")

>     MM_keepMove = ""

>     For i = 0 To UBound(params)

>       nextItem = Left(params(i), InStr(params(i),"=") - 1)

>       If (StrComp(nextItem,MM_moveParam,1) <> 0) Then

>         MM_keepMove = MM_keepMove & "&" & params(i)

>       End If

>     Next

>     If (MM_keepMove <> "") Then

>       MM_keepMove = Right(MM_keepMove, Len(MM_keepMove) - 1)

>     End If

>   End If

> End If

> 

> ' set the strings for the move to links

> If (MM_keepMove <> "") Then MM_keepMove = MM_keepMove & "&"

> urlStr = Request.ServerVariables("URL") & "?" & MM_keepMove & 

MM_moveParam 

> & "="

> MM_moveFirst = urlStr & "0"

> MM_moveLast  = urlStr & "-1"

> MM_moveNext  = urlStr & Cstr(MM_offset + MM_size)

> prev = MM_offset - MM_size

> If (prev < 0) Then prev = 0

> MM_movePrev  = urlStr & Cstr(prev)

> %>

> <html>

> <head>

> <title>Untitled Document</title>

> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

> </head>

> <body bgcolor="#FFFFFF" text="#000000">

> <table align="center" border="1">

>   <tr> 

>     <td align="default" width="8%"> ID </td>

>     <td align="default" width="8%"> REGION </td>

>     <td align="default" width="8%"> CITYADDRESS </td>

>     <td align="default" width="8%"> MODEL </td>

>     <td align="default" width="8%"> SERIAL NUMBER</td>

>     <td align="default" width="8%"> PBX VERSION</td>

>     <td align="default" width="8%"> PBX RELEASE</td>

>     <td align="default" width="8%"> MM RELEASE</td>

>     <td align="default" width="8%"> REQUIREMENT </td>

>     <td align="default" width="8%"> ESTIMATED COST</td>

>     <td align="default" width="8%"> REGION PRIORITY</td>

>     <td align="default" width="8%"> STATE PRIORITY</td>

>   </tr>

>   <% 

> While ((Repeat2__numRows <> 0) AND (NOT Recordset1.EOF)) 

> %>

>   <tr> 

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("ID").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("Region").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("CityAddress").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("Model").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("SerialNumber").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("PBXVer").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("PBXRelease").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("MMRLS").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("Requirement").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("EstimatedCost").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("RegionPriority").Value)%> </td>

>     <td align="default" width="8%"> 

>       <%=(Recordset1.Fields.Item("StatePriority").Value)%> </td>

>   </tr>

>   <% 

>   Repeat2__index=Repeat2__index+1

>   Repeat2__numRows=Repeat2__numRows-1

>   Recordset1.MoveNext()

> Wend

> %>

> </table>

> <p> <A HREF="<%=MM_movePrev%>">Previous</A> 

>   <A HREF="<%=MM_moveNext%>">Next</A> 

> </p>

> </body>

> </html>

> <%

> Recordset1.Close()

> %>

> <%

> Recordset2.Close()

> %>

> 

>  

Message #6 by "Ken Schaefer" <ken@a...> on Sat, 19 May 2001 17:54:49 +1000
Molly,



My guess is that you are running into a problem with opening multiple

connections to an Access. Connections to Jet databases (eg Access) seem to

serialise themselves, ie you can only have one doing any work at a time.



Everytime you do this:



objRS.ActiveConnection = "some connection string"



you are creating a new connection. You also have no way of getting rid of

it. Eventually it'll time out after 60 seconds (the default).



Instead, create an explicit connection object:



Set objConn = Server.CreateObject("ADODB.Connection")

objConn.Open "some connection string")



Now use this explicit connection object for all the recordsets on the page:



objRS.ActiveConnection = objConn



As soon as you no longer need to connection, get rid of it:



objConn.close

Set objConn = nothing



Cheers

Ken





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

----- Original Message -----

From: "molly mchenney" <molly.mchenney@d...>

To: "ASP Database Setup" <asp_database_setup@p...>

Sent: Thursday, May 17, 2001 2:32 PM

Subject: [asp_database_setup] Re: Provider Error 80004005 Unspecified Error





: > Ken,

:

: I took one of the recordsets out and now it is working part of the time.

: The other part of the time I get the same error on on line 11.  Here is

: part of my code.  I understood your explanation but wasn't exactly sure

: what to do. I am new to coding. Could you show me what I need to do.

: Thanks in advance. Line 11 is:  Recordset1.ActiveConnection 

: MM_PBX2001_STRING

:

: <%@LANGUAGE="VBSCRIPT"%>

: <!--#include file="Connections/PBX2001.asp" -->

: <%

: Dim Recordset1__MMColParam

: Recordset1__MMColParam = "1"

: if (Request.QueryString("Select") <> "") then Recordset1__MMColParam 

: Request.QueryString("Select")

: %>

: <%

:

: set Recordset1 = Server.CreateObject("ADODB.Recordset")

: Recordset1.ActiveConnection = MM_PBX2001_STRING

: Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" + Replace

: (Recordset1__MMColParam, "'", "''") + "'"

: Recordset1.CursorType = 0

: Recordset1.CursorLocation = 2

: Recordset1.LockType = 3

: Recordset1.Open()

: Recordset1_numRows = 0

: %>

: <%

:

: %>

:

:

:

:

: mmchenney (Visitor) May 16, 2001

: > In Dreamweaver, using ASP I have been trying to search for specific

: > records in a database and pull them up according to what region they are

: > in.  Locally this works fine.  When I try and retrieve the information

: out

: > on the server I get the following error.

: >

: > Provider error 80004005

: >

: > Unspecified error

: >

: > /UCSDEV/PBX/ASPCode/Results.asp, line 22

: >

: > Here is my code. Please Help!

: >

: >

: > <%@LANGUAGE="VBSCRIPT"%>

: > <!--#include file="Connections/PBX2001.asp" -->

: > <%

: > Dim Recordset1__MMColParam

: > Recordset1__MMColParam = "1"

: > if (Request.QueryString("Select") <> "") then Recordset1__MMColParam 

: > Request.QueryString("Select")

: > %>

: > <%

: > set Recordset1 = Server.CreateObject("ADODB.Recordset")

: > Recordset1.ActiveConnection = MM_PBX2001_STRING

: > Recordset1.Source = "SELECT * FROM PBX WHERE Region = '" + Replace

: > (Recordset1__MMColParam, "'", "''") + "'"

: > Recordset1.CursorType = 0

: > Recordset1.CursorLocation = 2

: > Recordset1.LockType = 3

: > Recordset1.Open()

: > Recordset1_numRows = 0

: > %>

: > <%

: >

: >

: > set Recordset2 = Server.CreateObject("ADODB.Recordset")

: > Recordset2.ActiveConnection = MM_PBX2001_STRING

: > Recordset2.Source = "SELECT * FROM PBX"

: > Recordset2.CursorType = 0

: > Recordset2.CursorLocation = 2

: > Recordset2.LockType = 3

: > Recordset2.Open()

: > Recordset2_numRows = 0

: > %>

: > <%

: >

: > %>

: > <%

: > Dim Repeat2__numRows

: > Repeat2__numRows = -1

: > Dim Repeat2__index

: > Repeat2__index = 0

: > Recordset1_numRows = Recordset1_numRows + Repeat2__numRows

: > %>

: > <%

: > '  *** Recordset Stats, Move To Record, and Go To Record: declare stats

: > variables

: >

: > ' set the record count

: > Recordset1_total = Recordset1.RecordCount

: >

: > ' set the number of rows displayed on this page

: > If (Recordset1_numRows < 0) Then

: >   Recordset1_numRows = Recordset1_total

: > Elseif (Recordset1_numRows = 0) Then

: >   Recordset1_numRows = 1

: > End If

: >

: > ' set the first and last displayed record

: > Recordset1_first = 1

: > Recordset1_last  = Recordset1_first + Recordset1_numRows - 1

: >

: > ' if we have the correct record count, check the other stats

: > If (Recordset1_total <> -1) Then

: >   If (Recordset1_first > Recordset1_total) Then Recordset1_first 

: > Recordset1_total

: >   If (Recordset1_last > Recordset1_total) Then Recordset1_last 

: > Recordset1_total

: >   If (Recordset1_numRows > Recordset1_total) Then Recordset1_numRows 

: > Recordset1_total

: > End If

: > %>

: > <%

: > ' *** Recordset Stats: if we don't know the record count, manually count

: > them

: >

: > If (Recordset1_total = -1) Then

: >

: >   ' count the total records by iterating through the recordset

: >   Recordset1_total=0

: >   While (Not Recordset1.EOF)

: >     Recordset1_total = Recordset1_total + 1

: >     Recordset1.MoveNext

: >   Wend

: >

: >   ' reset the cursor to the beginning

: >   If (Recordset1.CursorType > 0) Then

: >     Recordset1.MoveFirst

: >   Else

: >     Recordset1.Requery

: >   End If

: >

: >   ' set the number of rows displayed on this page

: >   If (Recordset1_numRows < 0 Or Recordset1_numRows > Recordset1_total)

: Then

: >     Recordset1_numRows = Recordset1_total

: >   End If

: >

: >   ' set the first and last displayed record

: >   Recordset1_first = 1

: >   Recordset1_last = Recordset1_first + Recordset1_numRows - 1

: >   If (Recordset1_first > Recordset1_total) Then Recordset1_first 

: > Recordset1_total

: >   If (Recordset1_last > Recordset1_total) Then Recordset1_last 

: > Recordset1_total

: >

: > End If

: > %>

: > <%

: > ' *** Move To Record and Go To Record: declare variables

: >

: > Set MM_rs    = Recordset1

: > MM_rsCount   = Recordset1_total

: > MM_size      = Recordset1_numRows

: > MM_uniqueCol = ""

: > MM_paramName = ""

: > MM_offset = 0

: > MM_atTotal = false

: > MM_paramIsDefined = false

: > If (MM_paramName <> "") Then

: >   MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "")

: > End If

: > %>

: > <%

: > ' *** Move To Record: handle 'index' or 'offset' parameter

: >

: > if (Not MM_paramIsDefined And MM_rsCount <> 0) then

: >

: >   ' use index parameter if defined, otherwise use offset parameter

: >   r = Request.QueryString("index")

: >   If r = "" Then r = Request.QueryString("offset")

: >   If r <> "" Then MM_offset = Int(r)

: >

: >   ' if we have a record count, check if we are past the end of the

: > recordset

: >   If (MM_rsCount <> -1) Then

: >     If (MM_offset >= MM_rsCount Or MM_offset = -1) Then  ' past end or

: > move last

: >       If ((MM_rsCount Mod MM_size) > 0) Then         ' last page not a

: > full repeat region

: >         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

: >       Else

: >         MM_offset = MM_rsCount - MM_size

: >       End If

: >     End If

: >   End If

: >

: >   ' move the cursor to the selected record

: >   i = 0

: >   While ((Not MM_rs.EOF) And (i < MM_offset Or MM_offset = -1))

: >     MM_rs.MoveNext

: >     i = i + 1

: >   Wend

: >   If (MM_rs.EOF) Then MM_offset = i  ' set MM_offset to the last

: possible

: > record

: >

: > End If

: > %>

: > <%

: > ' *** Move To Record: if we dont know the record count, check the

: display

: > range

: >

: > If (MM_rsCount = -1) Then

: >

: >   ' walk to the end of the display range for this page

: >   i = MM_offset

: >   While (Not MM_rs.EOF And (MM_size < 0 Or i < MM_offset + MM_size))

: >     MM_rs.MoveNext

: >     i = i + 1

: >   Wend

: >

: >   ' if we walked off the end of the recordset, set MM_rsCount and

MM_size

: >   If (MM_rs.EOF) Then

: >     MM_rsCount = i

: >     If (MM_size < 0 Or MM_size > MM_rsCount) Then MM_size = MM_rsCount

: >   End If

: >

: >   ' if we walked off the end, set the offset based on page size

: >   If (MM_rs.EOF And Not MM_paramIsDefined) Then

: >     If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then

: >       If ((MM_rsCount Mod MM_size) > 0) Then

: >         MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)

: >       Else

: >         MM_offset = MM_rsCount - MM_size

: >       End If

: >     End If

: >   End If

: >

: >   ' reset the cursor to the beginning

: >   If (MM_rs.CursorType > 0) Then

: >     MM_rs.MoveFirst

: >   Else

: >     MM_rs.Requery

: >   End If

: >

: >   ' move the cursor to the selected record

: >   i = 0

: >   While (Not MM_rs.EOF And i < MM_offset)

: >     MM_rs.MoveNext

: >     i = i + 1

: >   Wend

: > End If

: > %>

: > <%

: > ' *** Move To Record: update recordset stats

: >

: > ' set the first and last displayed record

: > Recordset1_first = MM_offset + 1

: > Recordset1_last  = MM_offset + MM_size

: > If (MM_rsCount <> -1) Then

: >   If (Recordset1_first > MM_rsCount) Then Recordset1_first = MM_rsCount

: >   If (Recordset1_last > MM_rsCount) Then Recordset1_last = MM_rsCount

: > End If

: >

: > ' set the boolean used by hide region to check if we are on the last

: record

: > MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount)

: > %>

: > <%

: > ' *** Go To Record and Move To Record: create strings for maintaining

: URL

: > and Form parameters

: >

: > ' create the list of parameters which should not be maintained

: > MM_removeList = "&index="

: > If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" &

: > MM_paramName & "="

: > MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone=""

: >

: > ' add the URL parameters to the MM_keepURL string

: > For Each Item In Request.QueryString

: >   NextItem = "&" & Item & "="

: >   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

: >     MM_keepURL = MM_keepURL & NextItem & Server.URLencode

: > (Request.QueryString(Item))

: >   End If

: > Next

: >

: > ' add the Form variables to the MM_keepForm string

: > For Each Item In Request.Form

: >   NextItem = "&" & Item & "="

: >   If (InStr(1,MM_removeList,NextItem,1) = 0) Then

: >     MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form

: > (Item))

: >   End If

: > Next

: >

: > ' create the Form + URL string and remove the intial '&' from each of

: the

: > strings

: > MM_keepBoth = MM_keepURL & MM_keepForm

: > if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len

: > (MM_keepBoth) - 1)

: > if (MM_keepURL <> "")  Then MM_keepURL  = Right(MM_keepURL, Len

: > (MM_keepURL) - 1)

: > if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len

: > (MM_keepForm) - 1)

: >

: > ' a utility function used for adding additional parameters to these

: strings

: > Function MM_joinChar(firstItem)

: >   If (firstItem <> "") Then

: >     MM_joinChar = "&"

: >   Else

: >     MM_joinChar = ""

: >   End If

: > End Function

: > %>

: > <%

: > ' *** Move To Record: set the strings for the first, last, next, and

: > previous links

: >

: > MM_keepMove = MM_keepBoth

: > MM_moveParam = "index"

: >

: > ' if the page has a repeated region, remove 'offset' from the maintained

: > parameters

: > If (MM_size > 0) Then

: >   MM_moveParam = "offset"

: >   If (MM_keepMove <> "") Then

: >     params = Split(MM_keepMove, "&")

: >     MM_keepMove = ""

: >     For i = 0 To UBound(params)

: >       nextItem = Left(params(i), InStr(params(i),"=") - 1)

: >       If (StrComp(nextItem,MM_moveParam,1) <> 0) Then

: >         MM_keepMove = MM_keepMove & "&" & params(i)

: >       End If

: >     Next

: >     If (MM_keepMove <> "") Then

: >       MM_keepMove = Right(MM_keepMove, Len(MM_keepMove) - 1)

: >     End If

: >   End If

: > End If

: >

: > ' set the strings for the move to links

: > If (MM_keepMove <> "") Then MM_keepMove = MM_keepMove & "&"

: > urlStr = Request.ServerVariables("URL") & "?" & MM_keepMove &

: MM_moveParam

: > & "="

: > MM_moveFirst = urlStr & "0"

: > MM_moveLast  = urlStr & "-1"

: > MM_moveNext  = urlStr & Cstr(MM_offset + MM_size)

: > prev = MM_offset - MM_size

: > If (prev < 0) Then prev = 0

: > MM_movePrev  = urlStr & Cstr(prev)

: > %>

: > <html>

: > <head>

: > <title>Untitled Document</title>

: > <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

: > </head>

: > <body bgcolor="#FFFFFF" text="#000000">

: > <table align="center" border="1">

: >   <tr>

: >     <td align="default" width="8%"> ID </td>

: >     <td align="default" width="8%"> REGION </td>

: >     <td align="default" width="8%"> CITYADDRESS </td>

: >     <td align="default" width="8%"> MODEL </td>

: >     <td align="default" width="8%"> SERIAL NUMBER</td>

: >     <td align="default" width="8%"> PBX VERSION</td>

: >     <td align="default" width="8%"> PBX RELEASE</td>

: >     <td align="default" width="8%"> MM RELEASE</td>

: >     <td align="default" width="8%"> REQUIREMENT </td>

: >     <td align="default" width="8%"> ESTIMATED COST</td>

: >     <td align="default" width="8%"> REGION PRIORITY</td>

: >     <td align="default" width="8%"> STATE PRIORITY</td>

: >   </tr>

: >   <%

: > While ((Repeat2__numRows <> 0) AND (NOT Recordset1.EOF))

: > %>

: >   <tr>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("ID").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("Region").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("CityAddress").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("Model").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("SerialNumber").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("PBXVer").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("PBXRelease").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("MMRLS").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("Requirement").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("EstimatedCost").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("RegionPriority").Value)%> </td>

: >     <td align="default" width="8%">

: >       <%=(Recordset1.Fields.Item("StatePriority").Value)%> </td>

: >   </tr>

: >   <%

: >   Repeat2__index=Repeat2__index+1

: >   Repeat2__numRows=Repeat2__numRows-1

: >   Recordset1.MoveNext()

: > Wend

: > %>

: > </table>

: > <p> <A HREF="<%=MM_movePrev%>">Previous</A>

: >   <A HREF="<%=MM_moveNext%>">Next</A>

: > </p>

: > </body>

: > </html>

: > <%

: > Recordset1.Close()

: > %>

: > <%

: > Recordset2.Close()

: > %>

: >

: >

:

: ---

: STAY UP TO DATE ON ASP.NET, C#, VB.NET, SQL and XML

: Developersdex indexes over 100 of the top ASP, SQL, VB

: and XML sites bringing in more than 5,000 new resources

: every day.  They even integrate all the top .NET

: newsgroups so you can search/post/reply across

: multiple newsgroups within their site.  The next time

: you want to find an answer on ASP, C#, SQL, VB or XML

: think of Devdex!  http://www.developersdex.com/



ken@a...


$subst('Email.Unsub')




  Return to Index