PDA

Vollständige Version anzeigen : Sporadische Abstürze nach "DoCmd.OutputTo acOutputReport..."


Gast
17.06.2004, 08:10
Hallo zusammen,

habe schon ziemlich viel im Forum gesucht aber leider nichts zu meinem Problem gefunden:

Also ich benutze Access 2003 und darin in einem Report den Code "DoCmd.OutputTo acOutputReport...", wo ich eben diesen Bericht automatisiert alle x-Minuten in eine HTML-Datei mit Vorlage schreibe und den Bericht dann wieder schließe.

Programmabschnitt:

Private Sub Report_Page()
Dim Chrt As Graph.Chart
Dim grApp As Graph.Application
Set grApp = Me.OnlineDiagramm.Object.Application
Set Chrt = grApp.Chart
Chrt.Export "c:\Diagramm.gif"
grApp.Quit 'MS-Graph muss wieder geschlossen werden !!
DoCmd.OutputTo acOutputReport, "xyz", acFormatHTML, "C:\xxx.html", , "C:\xxxvorlage.html"
DoCmd.Close
End Sub

Eigentlich klappt alles auch hervorragend. Nur bekomme ich immer wieder von Access bei der automatisierten Ausgabe eben dieses Berichts die Fehlermeldung, daß Microsoft Access ein Problem erkannt hat und nicht mehr weitermachen kann (oder will!!!) und die Datenbank komprimieren und reparieren möchte. Als Anhalt kann man ungefähr sagen, daß das Problem bereits nach dem 10. Aufruf auftreten kann, manchmal aber auch erst nach 100. Könnte es sein, daß es sich hierbei um ein ähnliches Problem handelt wie bei Microsoft bekannt ist bei "SendenObjekt", wo ein Bericht als email versendet werden kann?

Kann mir da evtl. jemand einen Tipp geben?

Vieße Grüße
Martin

Manuela Kulpa
17.06.2004, 10:01
Hi Martin,

ein Test ist es wert :)! Setze einfach deine Objektvariablen auf Nothing, z.B.

If Not Chrt Is Nothing Then Set Chrt = Nothing
If Not grApp Is Nothing Then grApp.Close: Set grApp = Nothing

Eventuell hilft auch hier und da ein DoEvents (siehe OL-Hilfe DoEvents-Funktion)

Gruß

martini69
17.06.2004, 13:26
Vielen Dank für die Antwort. Da werde ich auf jeden Fall noch probieren.
Hab mal jetzt ne Testschleife geschrieben und vorher die ganze MDB in eine neue importiert. Momentan steht mein Zähler bei ca 2500 und kein Problem. Scheint so, als könnte es das tatsächlich gewesen sein. Habe vorher auch die mdb ein bischen hin- und herkonvertiert von 2002 auf 2000 und zurück. Vielleicht sollte man sowas auch lassen!

Viele Grüße
Martin