Solved

Asp Error: Server object error 'ASP 0177 : 80080005'

Posted on 2002-06-21
11
674 Views
Last Modified: 2008-02-20
I get the following error when I try to view a microsoft access application report across our Intranet;

Server object error 'ASP 0177 : 80080005'
Server.CreateObject Failed
/mongoose/comShowRptDetail.asp, line 202
Server execution failed


...can anyone tell me what this is and how I get round it?

Thanks
0
Comment
Question by:arghh
  • 3
  • 3
  • 2
  • +3
11 Comments
 
LVL 6

Expert Comment

by:Nitin Sontakke
ID: 7098811
Please also post the Server.CreateObject() call which is generating this error. Are you sure you all the required dlls on the server?

Some objects cannot be created independently. They must be created in the context of another object.

0
 
LVL 4

Expert Comment

by:jkunal
ID: 7098833
check if the Component exists and is registered.

To check open "regedit"
and search for the progid.

Also post your code.
0
 
LVL 20

Expert Comment

by:Silvers5
ID: 7100390
How are you fetching the report?.. simply open a connection string to the access database and select the records from the report like:

Set conn = Server.createObject("Adodb.connection")
conn.open"PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=db1.mdb;"
set rs = conn.execute("Select * from ReportName")
if rs.bof and rs.eof then
'no records
else
rs.movefirst
do while not rs.eof
response.write rs(0) & "<br>"
rs.movenext
loop
end if
0
 

Author Comment

by:arghh
ID: 7103165
Here's all the code!...

I've checked all the permissions, they all seem ok.

*****************************

<% Response.Buffer = True %>

<!--#include file="Connections/cnnMongoose.asp" -->
<!--#include virtual="/mongoose/incDateAndHS.asp"-->
<!--#include file="incValidate.asp" -->

<%

' *** Empty temp table
      Set comDelete = Server.CreateObject("ADODB.Command")
      comDelete.ActiveConnection = strCNN
      comDelete.CommandText = "DELETE * FROM ztblReports;"
      comDelete.Execute
      comDelete.ActiveConnection.Close
      
' *** Determine projects
      
      strProjRef = Request.QueryString("strProjRef")
      
      Set recProject = Server.CreateObject("ADODB.Recordset")
      recProject.ActiveConnection = strCNN
      recProject.Source = "SELECT fldProjRef, fldProjName, fldProjMgr " _
                                & "FROM tblProjectMain " _
                                & "WHERE fldProjRef ='" & strProjRef & "';"
      recProject.CursorType = 0
      recProject.CursorLocation = 2
      recProject.LockType = 3
      recProject.Open()
      recProject_numRows = 0
      
      'Set string variables determining data.
      strProjName = recProject.Fields.Item("fldProjName").Value
      strProjMgr  = recProject.Fields.Item("fldProjMgr").Value
      recProject.Close
      recProject.ActiveConnection.Close
      
      'Loop through project updates
      Set recUpdates = Server.CreateObject("ADODB.Recordset")
      recUpdates.ActiveConnection = strCNN
      recUpdates.Source = "SELECT fldUpdateRef, fldDTMStamp, fldStatus, fldSummary, fldIssues, fldProjCompletion " _
                                & "FROM tblUpdate " _
                                & "WHERE fldProjRef = '" & strProjRef & "' " _
                                & "ORDER BY fldDTMStamp DESC;"
      recUpdates.CursorType = 0
      recUpdates.CursorLocation = 2
      recUpdates.LockType = 3
      recUpdates.Open()
      recUpdates_numRows = 0
      
      'Set the count variable; Loop through the projects determining data.
      intCount = 0
      If (Not recUpdates.BOF) And (Not recUpdates.EOF) Then recUpdates.MoveFirst
      While (Not recUpdates.EOF)
            intCount = intCount + 1
            
            'List Update Ref'
            If intCount <> 1 Then strUpdateRefs = strUpdateRefs & "|"
            strUpdateRefs = strUpdateRefs & recUpdates.Fields.Item("fldUpdateRef").Value
            
            'List Update Ref'
            If intCount <> 1 Then strUpdateDTMs = strUpdateDTMs & "|"
            strUpdateDTMs = strUpdateDTMs & "#" & recUpdates.Fields.Item("fldDTMStamp").Value & "#"
            
            'List Update Status'
            If intCount <> 1 Then strStatus = strStatus & "|"
            strStatus = strStatus & "'" & recUpdates.Fields.Item("fldStatus").Value & "'"
            
            'List Update Summaries
            If intCount <> 1 Then strSummary = strSummary & "|"
            strSummary = strSummary & "'" & recUpdates.Fields.Item("fldSummary").Value & "'"

            'List Update Issues
            If intCount <> 1 Then strIssues = strIssues & "|"
            strIssues = strIssues & "'" & recUpdates.Fields.Item("fldIssues").Value & "'"
            
            'List Update Projected Completion dates
            If intCount <> 1 Then strDates = strDates & "|"
            strDates = strDates & recUpdates.Fields.Item("fldIssues").Value
            If recUpdates.Fields.Item("fldProjCompletion").Value <> Null Then
                  strDates = strDates & "#" & (recUpdates.Fields.Item("fldProjCompletion").Value) & "#"
            Else
                  strDates = strDates & "Null"
            End If
            
            recUpdates.MoveNext
      Wend
      intTotal = intCount
      recUpdates.Close
      recUpdates.ActiveConnection.Close
      
      'Populate the arrays
      arrUpdates = Split(strUpdateRefs, "|")
      arrDTMs    = Split(strUpdateDTMs, "|")
      arrStatus  = Split(strStatus, "|")
      arrSummary = Split(strSummary, "|")
      arrIssues  = Split(strIssues, "|")
      arrDates   = Split(strDates, "|")      
      
      'Set count again; loop through project ref array
      intCount = 0
      For intCount = 0 to intTotal-1
                        
            'Set string variable for values
            strValues = "'" & strProjRef & "'," _
                          & arrUpdates(intCount) & "," _
                          & arrDTMs(intCount) & "," _
                          & "'" & strProjName & "'," _
                          & arrStatus(intCount) & "," _
                          & arrSummary(intCount) & "," _
                          & arrIssues(intCount) & "," _
                          & arrDates(intCount) & "," _
                          & "'" & strProjMgr & "'"
            
            'Create INSERT statement
            strSQLInsert = "INSERT INTO ztblReports(fldProjRef, fldUpdateRef, fldUpdateDTM, fldProjName, fldStatus, fldSummary, fldIssues, fldProjCompletion, fldProjMgr) " _
                               & "VALUES(" & strValues & ");"
            
            'Execute the insert
            Set comInsert = Server.CreateObject("ADODB.Command")
            comInsert.ActiveConnection = strCNN
            comInsert.CommandText = strSQLInsert
            comInsert.Execute
            comInsert.ActiveConnection.Close
                  
      Next

%>

*****************************
0
 
LVL 4

Expert Comment

by:jkunal
ID: 7103189
which create object fails?
0
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

 

Author Comment

by:arghh
ID: 7103197
Helps if I post the right bit of code!

It fails on the Set objAccess = Server.CreateObject("Access.Application")....bit.


<%

Dim strNum, systime                                                         'used to get the unique file name
Dim strDbName, strRptName, strWhere, strSnapFile, strFilter          'used with the Access objects
Dim objAccess                                                                  'MSAccess object
     
     'Get a unique file name
     
     
     'Get the reqd data from submitted Form
     strDbName = "mongoose_ds.mdb"
     strRptName =  "rptDetail"
     strSnapFile = strRptName & ".snp"
     
     'Create instance of access. Visible is set to false b/c running as process, not desktop app'n.
     Set objAccess = Server.CreateObject("Access.Application")
     objAccess.Visible = False
     
     'Open the database, then the Report, and output it in Snapshot format
     objAccess.OpenCurrentDatabase strDbName
     
     With objAccess.DoCmd
         
          'Open in preview mode so that where clause can be used (if neccesary)
          .OpenReport strRptName, acViewPreview
         
          'Save the report to snapshot format; Server.MapPath gets the current directory.
          .OutputTo acOutputReport, , "Snapshot Format", Server.MapPath(".") & "\mongoose\snapfiles\" & strSnapFile
          .Close
     End With
     
     objAccess.Quit acQuitSaveNone 'acQuitSaveNone
     Set objAccess = Nothing
     
     'HTML with the ActiveX plugin
     If strSnapFile <> "" Then%>
          <OBJECT id="SnapshotViewer1" width=622 height=500 codebase="file:///C|/WINNT/Profiles/7645/Desktop/ASP%20info/SCRIPT/Snapview.ocx"
           classid="CLSID:F0E42D60-368C-11D0-AD81-00A0C90DC8D9" VIEWASTEXT>
               <PARAM name="_Version" value="65536">
               <PARAM name="SnapshotPath" value="snapfiles/<%=strSnapFile%>">
               <PARAM name="Zoom" value="0">
               <PARAM name="AllowContextMenu" value="-1">
               <PARAM name="ShowNavigationButtons" value="-1">
          </OBJECT>
<%    

     Else
          Response.Write("<P><B>An error occured while attempting to produce your report.</B></P>")
     End If


%>

....cheers
0
 
LVL 22

Expert Comment

by:CJ_S
ID: 7103205
Is Access installed on the machine??

CJ
0
 
LVL 4

Expert Comment

by:jkunal
ID: 7103216
problems with access, not there or not installed properly
0
 

Author Comment

by:arghh
ID: 7103235
Access is there. And Access is running properly because we're using it for several other ASP pages (all of which work fine).

Any other idea's?
0
 

Expert Comment

by:modulo
ID: 7886004
Dear expert(s),

A request has been made to close this Q in CS:
http://www.experts-exchange.com/Community_Support/Q_20497467.html

Without a response in 72 hrs, a moderator will finalize this question by:

 - Saving this Q as a PAQ and refunding the points to the questionner

When you agree or disagree, please add a comment here.

Thank you.

modulo

Community Support Moderator
Experts Exchange
0
 

Accepted Solution

by:
modulo earned 0 total points
ID: 7908404
Saving this Q as a PAQ and refunding the points to the questionner

modulo

Community Support Moderator
Experts Exchange
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

I would like to start this tip/trick by saying Thank You, to all who said that this could not be done, as it forced me to make sure that it could be accomplished. :) To start, I want to make sure everyone understands the importance of utilizing p…
I was asked about the differences between classic ASP and ASP.NET, so let me put them down here, for reference: Let's make the introductions... Classic ASP was launched by Microsoft in 1998 and dynamically generate web pages upon user interact…
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…
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…

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

12 Experts available now in Live!

Get 1:1 Help Now