Link to home
Start Free TrialLog in
Avatar of mjs082969
mjs082969

asked on

Visual Basic: acOutputReport Results in Error 2302: Microsoft Access can't save the output data to the file you've selected.

I trying to save an Access 2013 report as an Adobe Acrobat document.  When the application is run on my system, I do not receive an error.  When this is run on the system where the application is scheduled to run, the following error is received:

"Error #2302: Microsoft Access can't save the output data to the file you've selected."

This is my statement:

appAccess.DoCmd.OutputTo(Access.AcOutputObjectType.acOutputReport, "My Report", _
  "PDF Format (*.pdf)", "C:\" & gstrDateStamp & " My Report.pdf", True, "", , _
  Access.AcExportQuality.acExportQualityPrint)

Open in new window

I have tried several things, which do not seem to have any impact:
- Creating an empty file and naming it what the Acrobat file will be named, so the file already exists.
- Set the autostart parameter to True or False

Any ideas you might have would be greatly appreciated!

Thanks In Advance,

- Michael
Avatar of Gustav Brock
Gustav Brock
Flag of Denmark image

The application may not have the necessary permission to write to:
"C:\" & gstrDateStamp & " My Report.pdf"

Or try using a path without spaces:

"C:\" & gstrDateStamp & "MyReport.pdf"

Or, if that works, wrap the full path in quoutes, Chr(34).

/gustav
Avatar of mjs082969
mjs082969

ASKER

I'm desperate.  If you tell me that making and wearing a helmet out of Jell-o will fix it, I'm in...

I did try the following statements, and they execute successfully.  

appAccess.DoCmd.OutputTo(Access.AcOutputObjectType.acOutputReport, "MyReport", Access.Constants.acFormatTXT, "C:\" & gstrDateStamp & " MyReport.txt", True, "", , Access.AcExportQuality.acExportQualityPrint)

appAccess.DoCmd.OutputTo(Access.AcOutputObjectType.acOutputReport, "MyReport", Access.Constants.acFormatSNP, "C:\" & gstrDateStamp & " MyReport.snp", True, "", , Access.AcExportQuality.acExportQualityPrint)
 
They aren't what I need, but they are very similar.  And, again, they are executing successfully...

So that probably rules out a problem with permissions.  

I have determined that on the machine where it is successful, I have Adobe Acrobat Pro 9 installed.  On the system where it is failing, I have Adobe Reader XI installed.  Hmmmm...

But I will try removing the spaces from the report name and see if that has any impact...

Thanks Again,

- Michael
ASKER CERTIFIED SOLUTION
Avatar of Gustav Brock
Gustav Brock
Flag of Denmark image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I think the different versions of Adobe ARE causing a nightmare!

I am going to ask the user if they can handle XPS... but they are gone for the weekend.  I will close this off on Monday.  

Have a Great Weekend and thanks for the assistance!
You are welcome!

/gustav
This must be something to do with the system environment.  It will work on some systems, but not others.  On the ones where it continues to fail I receive the following error:

A first chance exception of type 'System.Runtime.InteropServices.COMException' occurred in MyProgram.Exe

Regardless of what format I use.  

Any advice would be greatly appreciated!

Thanks Again,

- Michael
Try this (works for me with the environment you described):

docmd.OutputTo acOutputReport, "myReport", acformatpdf,,true

Open in new window


If it works, try building on it successively to isolate the problem:

1.
Dim strFile as string
strFile = "myreport.PDF"   '<--- uses same folder as the database

docmd.OutputTo acOutputReport, "myReport", acformatpdf, strFile ,true

Open in new window


2.
Dim strFile as string

'****** Check this... the file is being placed at the root level on the C drive.  Should it be under a folder specified by gstrDateStamp?
strFile =  "C:\" & gstrDateStamp & "MyReport.pdf"   '<---- Use full path

docmd.OutputTo acOutputReport, "myReport", acformatpdf, strFile ,true

Open in new window



3.
Dim strFile as string
strFile =  "C:\" & gstrDateStamp & "MyReport.pdf" 


docmd.OutputTo acOutputReport, "myReport", acformatpdf, strFile ,true, "", , Access.AcExportQuality.acExportQualityPrint '<-- add the print quality

Open in new window

Did you try mbizup suggestions?
try replacing "PDF Format (*.pdf)" with Access.acFormatPDF
I will attempt the suggestions...
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
I was not able to resolve the issue with any of the feedback given.  I elected to migrate the reports out of Microsoft Access and into another source.