Seite 1 von 1
Datei (Bericht) nach drucken schließen
Verfasst: Mi, 13.05.2009 00:59
von chairman
Hi an alle,
ich hab mal wieder ein Problem.
Diesmal geht es darum, dass eine geöffnete Datei (Bericht) nachdem automatischen Drucken (welches ich mit dem unten stehenden Makro gelöst habe es wid aus geführt beim öffnen der Datei) geschlossen wird.
Vielleicht kann mir jemand helfen.
Ich danke schon mal im vorraus.
chairman
sub AutoDruck
Dim printProp(4) as New com.sun.star.beans.PropertyValue
printProp(0).Name = "Pages"
printProp(0).Value = "1-2"
printProp(1).Name = "CopyCount"
printProp(1).Value = 1
printProp(2).Name = "PaperOrientation"
printProp(2).Value = PORTAIT
printProp(3).Name = "PaperFormat"
printProp(3).Value = A5
myDoc=ThisComponent
myDoc.Print(printProp())
end sub
Re: Datei (Bericht) nach drucken schließen
Verfasst: Mi, 13.05.2009 12:15
von eBayer
Guten Morgen,
habe Dein Makro mal bei mir ausprobiert.
Danke, darauf war ich vorher nicht gekommen.
allerdings habe ich es um eine Kleinigkeit erweitert...... das automatische schließen des Dokuments nach dem Druck.
Habe lediglich 2 Zeilen am Ende eingefügt.
1. wait
2. close(false)
Siehe Codefragment unten:
myDoc.Print(printProp())
wait 2500 ' warten, bis das Dokument abgearbeitet ist.... 2,5 Sekunden sollten reichen
myDoc.close(false)
Gruß eBayer
Re: Datei (Bericht) nach drucken schließen
Verfasst: Mi, 13.05.2009 14:25
von chairman
Hi,
es könnte ja alles so einfach sein, aber ist es wohl nicht.
Bei dem close kommt immer wieder ein Laufzeitfehler
Es ist eine Exception aufgetreten
Typ: com.sun.star.util.close.Veto.Eception
Message: .
wo dran kann es liegen unten ist daer aktuelle code.
chairman
sub AutoDruck
Dim printProp(4) as New com.sun.star.beans.PropertyValue
printProp(0).Name = "Pages"
printProp(0).Value = "1-2"
printProp(1).Name = "CopyCount"
printProp(1).Value = 1
printProp(2).Name = "PaperOrientation"
printProp(2).Value = PORTAIT
printProp(3).Name = "PaperFormat"
printProp(3).Value = A5
myDoc=ThisComponent
myDoc.Print(printProp())
wait 2500
myDoc.close(false)
end sub
Re: Datei (Bericht) nach drucken schließen
Verfasst: Mi, 13.05.2009 14:29
von eBayer
ich habe den wait dafür eingebaut, daß der close nicht durchgeführt wird, bevor der druck abgeschlossen ist.
habe das makro erweitert.... es wartet nun maximal 9 Sekunden mit dem schließen des dokuments, was wohl reichen sollte.
die begrenzung auf 9 Sekunden habe ich gewählt, um keine endlosschleife zu provozieren.
Gruss eBayer
Global Sub AutoDruck
Dim nCnt As Integer
Dim myDoc As Object
Dim printProp(4) as New com.sun.star.beans.PropertyValue
printProp(0).Name = "Pages"
printProp(0).Value = "1-2"
printProp(1).Name = "CopyCount"
printProp(1).Value = 1
printProp(2).Name = "PaperOrientation"
printProp(2).Value = PORTAIT
printProp(3).Name = "PaperFormat"
printProp(3).Value = A4
myDoc=ThisComponent
myDoc.Print(printProp())
for nCnt = 0 to 9
On Error Goto Weiter
wait 1000
myDoc.close(false)
exit for
Weiter:
next
end sub