[AccessD] Access Has Stopped Working! (Working Solution)

Dan Waters df.waters at outlook.com
Wed Nov 2 15:28:34 CDT 2016


Hi Rocky,

Hi Rocky,

I think Jim is correct.

First, save this as a Public Sub.
'---------------------
Public Sub Pause(Optional sngNumberOfSeconds As Single = 0.1)
    On Error GoTo EH

    '-- Purpose:  This will 'pause' running code so that Access can get other things done

    Dim sngPauseTime As Single
    Dim sngStart As Single

    If sngNumberOfSeconds = 0 Then Exit Sub

    sngPauseTime = sngNumberOfSeconds
    sngStart = Timer
    Do While Timer < sngStart + sngPauseTime
        DoEvents
    Loop

EH:
    Exit Sub

End Sub
'--------------------------

Next, replace the 2nd DoEvents with Call Pause.  I do this in my code but I didn't think you would need it.

By default, Pause will run a loop of DoEvents for 1/10 of a second.

Again, Good Luck!
Dan

-----Original Message-----
From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Wednesday, November 02, 2016 1:49 PM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Access Has Stopped Working! (Working Solution)

Dan, Et Al:

Here's a clue, maybe.  That code didn't work - got the "Access has stopped working" message.  BUT!

When I put a breakpoint into the code before the open query and single stepped through it (F8), it worked!

So it would seem to be some kind of timing issue?

I did put the DoEvents in like you said:

DoCmd.OpenQuery "qryActiveUser"
DoEvents
DoCmd.OpenReport "rptRentalAgreement", acPreview, , , acHidden DoEvents DoCmd.OutputTo acOutputReport, "rptRentalAgreement", acFormatPDF, strRAPDFName, False  ', "", acExportQualityPrint DoEvents 'DoCmd.OutputTo acOutputReport, "rptRentalAgreement", "PDFFormat(*.pdf)", strRAPDFName, False ', "", acExportQualityPrint DoCmd.Close acReport, "rptRentalAgreement", acSaveNo DoCmd.Close acQuery, "qryActiveUser"

Any clue here?

TIA

Rocky


-----Original Message-----
From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters
Sent: Wednesday, November 02, 2016 9:44 AM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] Access Has Stopped Working! (Working Solution)

Hi Rocky,

This is indeed a bug which has been around for years.  This is how I handle it in my system.

'----------------------------

            '-- To resolve a 2046 bug in Access (see KB 244695) a software object must be opened before the 'OutputTo' method is called.

            '-- Open any read-only query (this opens a database window referred to in KB 244695)
            DoCmd.OpenQuery "qryGlobalErrors"

            '-- Output report from the file it's in
            If varObjectType = acReport Then

                DoEvents
                DoCmd.OpenReport stgObjectName, acViewPreview, , , acHidden

                DoEvents
                DoCmd.OutputTo acOutputReport, stgObjectName, acFormatPDF, stgAccessObjectPath

                DoEvents
                DoCmd.Close acReport, stgObjectName, acSaveNo

            Else

                DoEvents
                DoCmd.OutputTo varObjectType, stgObjectName, varOutputFormat, stgAccessObjectPath

            End If

            '-- Close the read-only query
            DoCmd.Close acQuery, "qryGlobalErrors"

'----------------------------

Good Luck!
Dan

-----Original Message-----
From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Dettman
Sent: Wednesday, November 02, 2016 5:11 AM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Access Has Stopped Working!


 Would be good to get the fault from the event log and then see if it is the same in each case.

  If it is, then your probably tripping over a bug.

Jim. 

-----Original Message-----
From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Wednesday, November 02, 2016 01:37 AM
To: 'Access Developers discussion and problem solving'
Subject: Re: [AccessD] Access Has Stopped Working!

I'll try that tomorrow. Un-commenting the last two parameters of the OutputTo didn't change the result.  Still barfed.  

I assume then after the output to you close the hidden report?

Thx

R

-----Original Message-----
From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David Emerson
Sent: Tuesday, November 01, 2016 10:10 PM
To: 'Access Developers discussion and problem solving'; 'List'; 'Off Topic'
Subject: Re: [AccessD] Access Has Stopped Working!

Hi Rocky,

I had a similar situation.  I read somewhere that opening the report hidden first solves the problem

DoCmd.OpenReport " rptRentalAgreement ", acPreview, , , acHidden DoCmd.OutputTo acOutputReport, "rptRentalAgreement", "PDFFormat(*.pdf)", strRAPDFName, False ', "", acExportQualityPrint


I also noticed in the second line above (copied from your code) you have a '
after False - this may cause a problem as well.

Regards

David Emerson
Dalyn Software Ltd
Wellington, New Zealand



-----Original Message-----
From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin
Sent: Wednesday, 2 November 2016 5:05 p.m.
To: 'Access Developers discussion and problem solving'; List; 'Off Topic'
Subject: [AccessD] Access Has Stopped Working!

Dear List(s):

 

I am running an accdb in A2010.  I want to convert a report to a pdf and attach it to an email.  This works perfectly on my machine.  

 

At the client site it does not. I spent two hours there today trying everything I could think of -  checking Microsoft update for patches fixes, updates, etc., decompiling, compact and repair, lacing the code with DoEvents, running as administrator - nothing worked.  I did track the problematic line of code.  It is the line with 

 

DoCmd.OutputTo acOutputReport

 

And Access Stopped Working on this line of code almost every time.  I say almost because a couple of times it ran - generated both pdfs and popped up the email with the two report pdfs attached!  Which is why I tried the DoEvents.  But it barfed pretty consistently on that first DoCmd.OutputTo acOutputReport,

 

Here's the code:

 

strFrontEndPath = db.Name

Do While Right(strFrontEndPath, 1) <> "\"

    strFrontEndPath = Left(strFrontEndPath, Len(strFrontEndPath) - 1)

Loop

strRAPDFName = strFrontEndPath & "RentalAgreement-" _

    & Me.cboNameAndAddress.Column(1) & "-" _

    & Me.fldRAHOrderNumber & ".pdf"

strRAPDFName = Replace(strRAPDFName, "*", "")

 

DoCmd.OutputTo acOutputReport, "rptRentalAgreement", "PDFFormat(*.pdf)", strRAPDFName, False ', "", acExportQualityPrint

'Call ConvertReportToPDF("rptRentalAgreement", , strRAPDFName, , False)

 

strCCPPDFName = strFrontEndPath & "CreditCardPermission-" _

    & Me.cboNameAndAddress.Column(1) & "-" _

    & Me.fldRAHOrderNumber & ".pdf"

strCCPPDFName = Replace(strCCPPDFName, "*", "")

 

DoCmd.OutputTo acOutputReport, "rptCreditCardPermissionForEmail",
"PDFFormat(*.pdf)", strCCPPDFName, False ', "", acExportQualityPrint

'Call ConvertReportToPDF("rptCreditCardPermissionForEmail", , strCCPPDFName, , False)

 

 

You can see the previous legacy code which worked for a long time in A2003 - the calls to ConvertToPDF - which I have commented out.  That doesn't work anymore.  

 

So I'm really stumped.  Has anyone had this problem and found a solution?
Two martinis to the genius who can post an effective fix.

 

MTIA

 

 

Rocky Smolin

Beach Access Software

760-683-5777

 <http://www.bchacc.com> www.bchacc.com

 <http://www.e-z-mrp.com> www.e-z-mrp.com

Skype: rocky.smolin

 

 

--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com


--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com

--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com

--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com

--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com

--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com



More information about the AccessD mailing list