Solved

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

Posted on 2010-09-21
5
1,057 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

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

It took me quite some time to sort out all the different properties of combo and list boxes available from Visual Basic at run-time. Not that the documentation is lacking: the help pages are quite thorough and well written. The problem was rather wh…
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…
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
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 …

706 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