Snapshot creation fails if too many field borders added

M

Michael M

Hi,
I have a problem that I have been unable to solve.

I am unable to create a snapshot (*.snp) report when I add
borders to all of the report fields. If I remove borders
one at a time, I find a fulcrum point where it all works,
but if I add one more field border (black instead of
transparent) it again fails to create.

The report previews and prints successfully, but the
report is unable to be successfully converted to a
snapshot file if too many fields have borders. No error
message is displayed or returned, and the popup
window "Now printing Page x of ." gets to page 1 then
stops (when it is successful, I can see it go from pages 1
through 4).

The report has 33 fields in the detail section, and 26
calculated fields in the report footer.

Workaround:
By adding borders one at a time, I was able to get 18
fields in the detail section on the report with borders
and still create a snapshot. If one more field is given a
border, the snapshot will not create. I am unable to find
anywhere on the Microsoft site or the rest of the internet
a list of known limitations for snapshot files. Are there
any?

Attempted Resolutions:
- I have compacted the database.
- I have repaired the database.
- I have created a table as a recordsource for the report
instead of queries (to improve speed).
- I have made all tables local to the database and removed
all non-essential components.
- I have created a brand new database and copied
components over one at a time.
- I have cut and pasted all code in the modules and done a
Debug -> Compile and save all modules.
- I have tried making the snapshot in code (called via a
command button) as well as File -> Save As/Export.
- I have closed my Lotus Notes mail and all other open
applications, restarted the pc, then started the database
as the only open application.
- I have created by creating a new blank report and
copyied over all the fields at a section at a time, then
copying the module code behind the form and setting the
form recordsource to match the original report to
effectively be an identical copy of the original report.

After attempting all the above, I am still unable to
create a snapshot report.
I don't really want to be limited to only showing borders
on about half of my fields, and if I create a simpler
report, I can get more fields with borders. Whether I have
just started my pc, or whether I load up my system by
starting Lotus Notes, Excel 97 and another instance of
Access 97 first to load up the system, I still can't show
any more than 18 borders (in this report at least) and
successfully create a snapshot file.

During my troubleshooting, I occasionally got an error
message about "The OutputTo action was canceled" (from a
DoCMD) error messages, but at a later stage got a strange
error message ("Method 'OutputTo' of object 'IDoCmd'
failed") and later did not get any error messages at all,
but the snapshots did still not create.
I am getting error messages again now after making a new
report and copying across all the fields.

How to see the problem:
I have created a 1.6MB (unzipped) / 400K (zipped) file
containing the bare bones of the database that I can email
to anyone interested in my problem.

The code that I am using to create the snapshot is:
=================================
Dim stDocName As String

stDocName = "rpt_Data_Borders_Rebuilt"
DoCmd.OutputTo acReport, stDocName, "SnapshotFormat
(*.snp)", ""
=================================

My system setup:
IBM PC 300
Pentium III 667 MHz cpu
Windows NT V4.0 (Build 1381: Service Pack 6). Revised
Service Pack 6a
Total physical memory: 114,036 KB.
Available physical memory: 22284 KB
USER memory available: 90%
Swap file setting: Dynamic
Swap file usage: 60%
Swap file size: 254972KB
Available space on drive C: 4151403 KB
Microsoft Access 97 SR2
 
S

Stephen Lebans

If you look at the Enhanced Metafiles contained within the exported
Snapshot file you will see why the use of borders/lines can be a
problem. In particular lines rendered via the Line control and any lines
that use patterns of any type will result in hundreds of individual
metafile records.
Render your control's borders(solid only- not paterns) using either:the
Line method of the Report object or the Rectangle tool.

--

HTH
Stephen Lebans
http://www.lebans.com
Access Code, Tips and Tricks
Please respond only to the newsgroups so everyone can benefit.
 
M

Michael M

Thanks Stephen,
I was already using solid control borders, and I don't
know what the line method of the Report object is, and I
had thought that the Rectangle tool would be just as
resource-intensive.

However, I persevered with the rectangle tool, and found
that it didn't seem to help any more, but since all my
fields are side-to-side, I put a large rectangle around
the whole lot, then put single lines between the fields so
it looked like a big row of boxes and voila! It worked!

You're a legend - thanks for the tip and the background
behind why I was having troubles (I like to understand the
problems). You said that I should look at the enhanced
metafiles contained within the exported file that worked
to better understand. What should I open the file with?
I've tried Word, Access and Excel. There's no option in
the viewer to "deconstruct" the snp file.

Cheers and many thanks,
Michael
 
S

Stephen Lebans

Snapshot file are basically windows printer spool files that are
compressed. You can try Winzip but I use one of the WIndows system
compression API's in my ReportUtilities to decompress and parse out the
individual EMF's contained within a Snapshot file.
http://www.lebans.com/ReportUtilities.htm

To view the Metafiles there are several free Metafile viewers on the
Web. I use Feng Yuan's free ListEMF tool which you can search and find
on the Web.

--

HTH
Stephen Lebans
http://www.lebans.com
Access Code, Tips and Tricks
Please respond only to the newsgroups so everyone can benefit.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top