Seite 1 von 1

Fehlermeldung beim Konvertieren

Verfasst: Di 26. Jun 2018, 13:05
von MegaV0lt
Ich verwende LO unter Linux Mint Cinnamon 18.3

Für eine Calc-Tabelle habe ich ein kleines Skript, das diese in ein PDF umwandelt:

Code: Alles auswählen

darkwing@darkwing-pc ~/.local/bin $ cat ./PV-Statistik_PDF.sh 
#!/bin/bash

# Konvertiert .odt nach .pdf
# VERSION=180130

### Variablen ###
SOFFICE='/usr/bin/soffice'  # Pfad zu LibreOffice
ODT_DOC='PV-Statistik.ods'  # Datei zum konvertieren
SRC='/home/darkwing/Dokumente'  # Fester User, da als root ausgeführt
DEST='/media/Daten/Dropbox/Public'

### Start ###
if [[ $EUID -ne 0 ]] ; then  # Nur als "root" ausführen
  echo 'Dieses Skript muss mit root-Rechten ausgeführt werden' >&2
  exit 1
fi

if [[ "${SRC}/${ODT_DOC}" -nt "${DEST}/${ODT_DOC%.*}.pdf" ]] ; then
  "$SOFFICE" --headless --convert-to pdf:calc_pdf_Export \
    --outdir "$DEST" "${SRC}/${ODT_DOC}" > /var/log/PV-Statistik_PDF.log
fi

# Ende
Seit dem letzten Update kommt jedoch folgender Fehler beim ausführen:

Code: Alles auswählen

darkwing@darkwing-pc ~/.local/bin $ sudo ./PV-Statistik_PDF.sh 
func=xmlSecCheckVersionExt:file=xmlsec.c:line=188:obj=unknown:subj=unknown:error=19:invalid version:mode=abi compatible;expected minor version=2;real minor version=2;expected subminor version=25;real subminor version=26
terminate called after throwing an instance of 'com::sun::star::lang::WrappedTargetRuntimeException'
Application Error
Mit der Meldung kann ich leider nichts anfangen. Da das Skript aber immer funktioniert hat, muss es an dem letzten Update von LO liegen...

Die installierte Version:

Code: Alles auswählen

darkwing@darkwing-pc ~/.local/bin $ libreoffice --version
LibreOffice 6.0.5.2 00m0(Build:2)
Ich hoffe es kann mir hier jemand helfen

Re: Fehlermeldung beim Konvertieren

Verfasst: Di 26. Jun 2018, 14:33
von Helmut_S
Hi MegaVolt, direkt helfen kann ich dir nicht, sondern nur auf zwei kleine Ungereimtheiten in deinem Skript hinweisen:
darkwing@darkwing-pc ~/.local/bin $ cat ./PV-Statistik_PDF.sh
#!/bin/bash

# Konvertiert .odt nach .pdf

und

if [[ "${SRC}/${ODT_DOC}" -nt "${DEST}/${ODT_DOC%.*}.pdf" ]] ; then
"$SOFFICE" --headless --convert-to pdf:calc_pdf_Export \
--outdir "$DEST" "${SRC}/${ODT_DOC}" > /var/log/PV-Statistik_PDF.log
"odt" ist bekanntlich die Endung von LO-Writer-Dateien und nicht von LO-Calc-Dateien?
ob das der Grund für das Scheitern deines Skripts ist, weiß ich nicht, aber ich frage mich warum du zum Konvertieren nicht die in LO eingebaute Funktion verwendest?
Menue /Datei/ Als pdf exportieren.

Gruß Helmut

Re: Fehlermeldung beim Konvertieren

Verfasst: Di 26. Jun 2018, 16:57
von MegaV0lt
Das eine ist im Kommentar. Und das andere der Name der Variable. Macht beides nichts. Habe es trotzdem geändert.
Das das von Hand auch geht ist mir schon klar. Das sollaber automatisch geschehen wenn die Datei geändert wurde. Darum das Skript.

Hier nun die aktuelle Fassung:

Code: Alles auswählen

#!/bin/bash

# Konvertiert .ods/.odt nach .pdf
# VERSION=180626

### Variablen ###
SOFFICE='/usr/bin/soffice'  # Pfad zu LibreOffice
DOC='PV-Statistik.ods'      # Datei zum konvertieren
SRC='/home/darkwing/Dokumente'  # Fester User, da als root ausgeführt
DEST='/media/Daten/Dropbox/Public'

### Start ###
if [[ $EUID -ne 0 ]] ; then  # Nur als "root" ausführen
  echo 'Dieses Skript muss mit root-Rechten ausgeführt werden' >&2
  exit 1
fi

if [[ "${SRC}/${DOC}" -nt "${DEST}/${DOC%.*}.pdf" ]] ; then
  #"$SOFFICE" --headless --convert-to pdf:calc_pdf_Export \  # Filter funktioniert nicht mehr (:calc_pdf_Export)
  "$SOFFICE" --headless --convert-to pdf \
    --outdir "$DEST" "${SRC}/${DOC}" > /var/log/PV-Statistik_PDF.log
fi

# Ende
Und diese Zeile hab ich geändert.

Code: Alles auswählen

  #"$SOFFICE" --headless --convert-to pdf:calc_pdf_Export \  # Filter funktioniert nicht mehr (:calc_pdf_Export)
So funktioniert es erst mal

Edit: Damit verliere ich aber die Einstellungen aus dem Dialog ""Exportiern... :?