ich nutze createunoservice("com.sun.star.text.MailMerge") um mit der Serienbrieffunktion mittels Writer Pdfs zu erstellen (Rechnungen, Zertifikate etc.)
Das Makro ist in einer BASIC-Extension gespeichert (IVL.office.Serienbrief_Starten) und wird über die Kommandozeile (aus Python heraus) aufgerufen:
Code: Alles auswählen
libreoffice macro:///IVL.office.Serienbrief_Starten\\("foo", "bar", ...)
So weit so gut, das ganze funktioniert seit Jahren klag- und fehlerlos.
Nun macht mir aber ein Bug bei der Bestimmung der Gesamtseitenzahl ein Problem. Wenn in einer Tabelle eine Zeile sehr hoch wird (weil viel viel Text drin ist), dann wird unter Umständen das Gesamtdokument um 1 Seite länger, dabei wird aber vor dem Ausdrucken/Speichern die Gesamtseitenzahl im Dokument NICHT neu berechnet, und ich habe dann ab Seite 2 falsche Gesamtseitenzahlen: "Seite 2 von 1" ... Sieht auf Rechnungen und sonstigen Schriftstücken, die von der Genauigkeit leben nicht schön aus.
Wenn das Dokument "normal" geöffnet wurde, kann man es ja problemlos aktualisieren, aber mit MailMerge funktioniert das nicht. Auch ein Aktualisieren bei Ereignis "Serienbriefdruck gestartet" (oder "Serienbriefdruck abgeschlossen") hat keinen Effekt.
Lösungen?