- #1
G
GreenFM
Mitglied
Themenersteller
- Dabei seit
- 10.04.2007
- Beiträge
- 5
- Reaktionspunkte
- 0
- Ort
- Nähe Stuttgart
Guten Tag!
Ich habe in OpenOffice Calc ein Druckproblem, das ich alleine nicht lösen kann. Vielleicht kann mir hier jemand helfen.
Es geht um ein aus mehreren Tabellen bestehendes Dokument. Die zweite Tabelle ist eine Dateneingabemaske, die von etwa 20 Benutzern eines heterogenen Netzwerkes verwendet wird, um ein bestimmtes Formular zu erstellen. Die Clients sind entweder schlanke Terminals, auf denen Fedora Core und OpenOffice 2.1 laufen, oder Windows-Rechner mit verschiedenen Betriebssystemen (vorwiegend XP und 98) und OpenOffice-Versionen (2.1 bis 3.0.1).
Die erste Tabelle des Dokuments enthält das eigentliche Formular. Es soll mit Hilfe eines Makros aus der zweiten Tabelle heraus gespeichert und als PDF-Dokument gedruckt werden können. Um jedem Client individuell einen Drucker zuordnen zu können, sind alle Makros unter Meine Makros & Dialoge abgelegt und wurden hinsichtlich des Druckernamens an den jeweiligen Client angepasst. Die Makros sind prinzipiell auf allen Clients identisch, unterscheiden sich nur in Kleinigkeiten wie eben dem Druckernamen und einigen Pfadangaben, die auf Windows- und Linuxclients etwas abweichen.
Dies funktioniert soweit gut, allerdings wird das Formular auf zwei Clients nicht gedruckt (wohl aber als PDF gespeichert). Es handelt sich um einen Windows-98-SE-Rechner mit OpenOffice 2.4 und einen Windows-XP-Rechner mit OpenOffice 3.0.1 (erstaunlicherweise die beiden Clients mit den neuesten OpenOffice-Versionen). Auf anderen Windows-Maschinen geht es hingegen mit OpenOffice 2.1 einwandfrei.
Hier das betreffende Makro:
Nun meine Fragen dazu:
Ich habe in OpenOffice Calc ein Druckproblem, das ich alleine nicht lösen kann. Vielleicht kann mir hier jemand helfen.
Es geht um ein aus mehreren Tabellen bestehendes Dokument. Die zweite Tabelle ist eine Dateneingabemaske, die von etwa 20 Benutzern eines heterogenen Netzwerkes verwendet wird, um ein bestimmtes Formular zu erstellen. Die Clients sind entweder schlanke Terminals, auf denen Fedora Core und OpenOffice 2.1 laufen, oder Windows-Rechner mit verschiedenen Betriebssystemen (vorwiegend XP und 98) und OpenOffice-Versionen (2.1 bis 3.0.1).
Die erste Tabelle des Dokuments enthält das eigentliche Formular. Es soll mit Hilfe eines Makros aus der zweiten Tabelle heraus gespeichert und als PDF-Dokument gedruckt werden können. Um jedem Client individuell einen Drucker zuordnen zu können, sind alle Makros unter Meine Makros & Dialoge abgelegt und wurden hinsichtlich des Druckernamens an den jeweiligen Client angepasst. Die Makros sind prinzipiell auf allen Clients identisch, unterscheiden sich nur in Kleinigkeiten wie eben dem Druckernamen und einigen Pfadangaben, die auf Windows- und Linuxclients etwas abweichen.
Dies funktioniert soweit gut, allerdings wird das Formular auf zwei Clients nicht gedruckt (wohl aber als PDF gespeichert). Es handelt sich um einen Windows-98-SE-Rechner mit OpenOffice 2.4 und einen Windows-XP-Rechner mit OpenOffice 3.0.1 (erstaunlicherweise die beiden Clients mit den neuesten OpenOffice-Versionen). Auf anderen Windows-Maschinen geht es hingegen mit OpenOffice 2.1 einwandfrei.
Hier das betreffende Makro:
Code:
sub PrintSave
dim Dummy()
dim mydoc as object
dim mycell as object
dim mysheet as object
dim myProps(0) as new com.sun.star.beans.PropertyValue
dim PrinterProperties(0) as new com.sun.star.beans.PropertyValue
dim URL as string
dim PatName as string
dim PatVorname as string
dim Tagesdatum as date
dim Speicherstunde as integer
dim Labornr as string
mydoc=ThisComponent
mysheet=mydoc.sheets(1)
mycell=mysheet.getCellRangeByName($B$13)
PatName=mycell.string
mycell=mysheet.getCellRangeByName($B$14)
PatVorname=mycell.string
mycell=mysheet.getCellRangeByName($F$4)
Tagesdatum=mycell.value
Speicherstunde=HOUR(mycell.value)
mycell=mysheet.getCellRangeByName($B$12)
Labornr=mycell.string
URL=file:///T:/Meldungen/Archiv/&Str(PatName)&_&Str(PatVorname)&_&YEAR(Tagesdatum)&_&MONTH(Tagesdatum)&_&DAY(Tagesdatum)&_&Str(Speicherstunde)&h&MINUTE(Tagesdatum)&_&Str(Labornr)&.pdf
myProps(0).Name=FilterName
myProps(0).Value=calc_pdf_Export
PrinterProperties(0).Name=Name
PrinterProperties(0).Value=HP Deskjet 6940
mydoc.printer = PrinterProperties()
mydoc.print(Dummy())
mydoc.storetoURL(URL, myProps())
end sub
Nun meine Fragen dazu:
[li]Sieht jemand auf Anhieb den Fehler, der zu diesem Problem führt?[/li]
[li]Gibt es noch irgendwo OpenOffice 2.1 für Windows zum Download, so dass ich testen kann, ob der Fehler mit dieser Version auf den betreffenden Clients auch auftritt?[/li]