Solved

Need an expert's analysis of object type problem

Posted on 2001-06-22
3
185 Views
Last Modified: 2013-12-03
I have a problem with data/object types.  Here's a function that is being called:
'******************************************************
Function getData(object, method, criteriaValue, criteriaValue2, orderBy, pageSize, pageNumber)

     On Error Resume Next    
     
     Dim cmd, rs, retryCount, retryFlag, numPerPage
     retryCount = 1
     retryFlag = 1
     
     Set cmd = Server.CreateObject("ADODB.Command")
     With cmd
     .ActiveConnection = cnn
     .CommandTimeout = 240
     .CommandType = adCmdStoredProc
     .CommandText =  object & "_" & method
     .Parameters.Refresh
     .Parameters("@SessionID")= sessionID
     End With
     
    writeParameters cmd

    Set rs = cmd.Execute()
         If Err.Number <> 0 Then
            logError Request.ServerVariables("URL"), Err.Number, Err.Description
         End If
         retryCount = retryCount + 1
         
          If (rs.State = 0)  Then
               retryFlag = 1
          ElseIf (rs.EOF) Then
               retryFlag = 1
          Else
           retryFlag = 0
          End If
     
     Wend

     If ((rs.State > 0) And Not(rs.EOF)) Then
        rs.MoveFirst
    End If

     If Not(IsNull(pageSize)) AND (rs.State > 0) And Not(rs.EOF) Then
        rs.CacheSize = pageSize
        rs.PageSize = pageSize
        rs.AbsolutePage = pageNumber
     End If

     On Error GoTo 0              
     
     closeCommand cmd ' Close command object
     Set getData = rs    
End Function
********************************************************

Here's the calling Sub:
********************************************************
Sub displayError
Dim rsError
rsError = getData("Error", "Get","","","","","")
%>
<FONT COLOR="RED"><B><%=rsError("ErrorMessage")%></B></FONT>
</FONT><BR><HR>
<%End Sub%>
*********************************************************
the problem is this...the rsERROR object being returned is an ADO recordset, but after the "rsError=getdata(etc.)" call, the rsError variable is not a proper ADO Recordset object (I am purposefully aware of the absence of the SET keyword).  What type of object is it?  I can still retrieve data from it using rsError("FieldName") but not with rsError.Fields("FieldName").  Weird to me.  I thought for sure it would fail without the SET keyword but it doesn't.  Any experts out there know what's going on?  implicit conversion to object type <????>?
0
Comment
Question by:svfafel
  • 2
3 Comments
 
LVL 2

Accepted Solution

by:
preinsko earned 200 total points
ID: 6222477
To obtain underlying type use TypeName function

MyType = TypeName("VBScript") 'Returns a string
MyType = TypeName(4) 'Returns Integer
and so forth.

To determine if something is an object use IsObject function.

Dim myInt, myObj, bObj
Set myObj = Me
bObj=IsObject(myObj)  'Returns true
bObj=IsObject(myInt)  'Returns false
and so forth.

Hope this helps.  I use them a lot because when you deal with Variants everything is an unknown.

Cheers.
0
 
LVL 2

Expert Comment

by:preinsko
ID: 6222480
Sorry I didn't mean to propose this as an answer just a troubleshooting tip.
0
 

Author Comment

by:svfafel
ID: 6229267
Thanks...you helped me out tons...thanks!!!
0

Featured Post

Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

Join & Write a Comment

I recently decide that I needed a way to make my pages scream on the net.   While searching around how I can accomplish this I stumbled across a great article that stated "minimize the server requests." I got to thinking, hey, I use more than one…
I have helped a lot of people on EE with their coding sources and have enjoyed near about every minute of it. Sometimes it can get a little tedious but it is always a challenge and the one thing that I always say is:  The Exchange of information …
Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now