Solved

"No Current Record" error - Exporting report from macro called from batch file

Posted on 2010-09-21
5
1,069 Views
Last Modified: 2012-08-13
Hello all,

I have a batch file which calls a macro in Access 2007. The macro is simple; it exports a report to a PDF. It works fine when running from within Access, but throws a "No Current Record" error when running the batch file.

My exact problem is also documented here: http://www.pcreview.co.uk/forums/thread-3990774.php, sans a solution.

The macro has just two actions:

OuputTo: (Report, testreport, PDF Format (*.pdf), C:\TestReport.pdf, No, , 0, Print
Quit: (SaveAll)

I have also tried removing the Quit action but it makes no difference. I also read that it has to do with grouping so I created a non-grouped, non-sorted report and it still fails.

I also converted the macro to VBA and then created a simple RunCode macro calling that function. This time it ran without error (when called from the batch file), however it only exports page 1 of the report; beginning at the top of page 2 it displays #error for each field. This seems to have something to do with the way Access 2007 is reading the records when it prints, I just can't figure out how to get around it.

Thanks in advance,

g8tor
0
Comment
Question by:g8tor23
  • 2
  • 2
5 Comments
 
LVL 3

Accepted Solution

by:
fcfang earned 500 total points
ID: 33730413
Three possible solutions:

- I'm sure you've already tried compacting/repairing the database. If not, try it, if so, does creating a new accdb file and then importing all the objects from the old accdb to the new change anything?

- Secondly, you mentioned that you were able to run the macro just fine manually. Is the scheduled job user you? Maybe a permissions issue?

- Finally, if all else fails, what happens if you rename the macro to autoexec and run the accdb from the scheduled job without the /X email parameter?

Hope any of these help...
0
 
LVL 75
ID: 33730708
""No Current Record" error "
That is a very unusual record to be associated with a Report.

Are you positive there is no other code running here ?

mx
0
 
LVL 2

Author Closing Comment

by:g8tor23
ID: 33738362
Thanks for the comments. Apparently "all else" has failed, because making it an autoexec works. That is completely bizarre. I hate autoexec macros, but it is the lesser of evils in this case. Thanks for the help.
0
 
LVL 75
ID: 33738575
"I hate autoexec macros, "
Why?
0
 
LVL 2

Author Comment

by:g8tor23
ID: 33739103
Because it means I am obligated to do that autoexec operation when the database is opened. If i have a macro that cleans some data and one that spits out a couple of reports, I can call them independently using the approach I use (command line /x switch). I like that flexibility. If there is an autoexec, then whatever that thing does must be done every time. I'm not saying there isn't significant utility to autoexec macros in many cases, but not for what I am doing. I also don't like having to remember to hold down shift key for this db but not for that one.

Unless there is a way to supress an autoexec macro when calling another macro from a command line switch??? basically a command line version of holding down the shift key???
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction The Visual Basic for Applications (VBA) language is at the heart of every application that you write. It is your key to taking Access beyond the world of wizards into a world where anything is possible. This article introduces you to…
A simple tool to export all objects of two Access files as text and compare it with Meld, a free diff tool.
In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

776 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