BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Marko oder Shellprogramm für Aktualisierung von Calc-Dokumenten

Alles zur Programmierung im LibreOffice.
Linuxfreund
Beiträge: 8
Registriert: So 5. Nov 2017, 15:04

Re: Marko oder Shellprogramm für Aktualisierung von Calc-Dokumenten

Beitrag von Linuxfreund » Do 9. Nov 2017, 19:36

Hallo,

ich habe anscheinend wieder etwas falsch gemacht.
Bildschirmfoto_2017-11-09_19-02-48.jpg
Bildschirmfoto_2017-11-09_19-02-48.jpg (250.87 KiB) 1961 mal betrachtet
Leider kenne ich mich mit Makroprogrammierung so wenig aus, dass ich auch alle Zeilen nicht nachvollziehen kann.

Ist es eventuell einfacher, wenn ich ein Makro an ein Calc Dokument bei der Aktion "Dokument öffnen" unter "Extras/Anpassen/Ereignisse" einhänge, dass dann nur bei diesem Dokument die Verknüpfungen aktualisiert und dieses dann speichert. Ohne es zu schließen?

Eine weitere Idee wäre zusätzlich, eine Shell zu schreiben, die dann die einzelnen Calc-Dokumente nach einander öffnet und falls möglich diese dann wieder schließt. Aktualisieren und speichern erfolgt ja über das eingebundene Makro.

Gruß
Linuxfan
Zuletzt geändert von Linuxfreund am Do 9. Nov 2017, 19:59, insgesamt 1-mal geändert.

F3K Total
Beiträge: 2409
Registriert: So 10. Apr 2011, 10:10

Re: Marko oder Shellprogramm für Aktualisierung von Calc-Dokumenten

Beitrag von F3K Total » Do 9. Nov 2017, 19:52

Versuch doch mal den richtigen Namen einzugeben, es heißt sicherlich Unbenannt 1.ods, mit einem Leerzeichen zwischen dem Wort Unbenannt und der Zahl.

Ausserdem muss das Makro so aussehen, wie ich es geschrieben und musikai erklärt hat:

Code: Alles auswählen

Sub UpdateAll
    Load_Update_Save("Unbenannt 1.ods")
    Load_Update_Save("Unbenannt 2.ods")
    Load_Update_Save("Unbenannt 3.ods")
    Load_Update_Save("Unbenannt 4.ods")
    Load_Update_Save("Unbenannt 5.ods")
    print "fertig"
end sub

Sub Load_Update_Save(Dateiname)
    Dim sVorlage as String
    sVorlage = ConverttoUrl("/home/DEIN_WEITERER_PFAD_BIS_ZUM_ORDNER_IN_DEM _DIE_DATEIEN_LIEGEN/"+Dateiname)
    Dim Args(1) As New "com.sun.star.beans.PropertyValue"
    Args(0).Name = "UpdateDocMode"
    Args(0).Value = com.sun.star.document.UpdateDocMode.QUIET_UPDATE
    Args(1).Name = "Hidden"
    Args(1).Value = true
    oDoc = StarDesktop.loadComponentFromUrl(sVorlage, "_blank", 0, Args())
    for i = 0 to odoc.AreaLinks.Count - 1
        odoc.AreaLinks(i).refresh
    next i
    oDoc.store
    oDoc.close - 1
End Sub
Ein etwas genervter ...
Linuxfreund hat geschrieben:Eine weitere Idee wäre dann zusätzlich, eine Shell zu schreiben, dass dann die einzelnen Calc-Dokumente nach einander öffnet und falls möglich diese dann wieder schließt. Aktualisieren und speichern erfolgt ja über die eingebundene Makro.
Ganz tolle Idee ... geht auch ganz leicht ... mach einfach, und zeige uns das Ergebnis ... damit du wenigstens etwas wertschöpfendes beiträgst...
Windows 10: AOO, LO Linux Mint: AOO, LO

Linuxfreund
Beiträge: 8
Registriert: So 5. Nov 2017, 15:04

Re: Marko oder Shellprogramm für Aktualisierung von Calc-Dokumenten

Beitrag von Linuxfreund » Do 9. Nov 2017, 20:26

Ein Fehler von mir waren leider die Schreibfehler bei den Dokumentennamen. Sorry.
Das Makro lief dann auch durch und gab mir die Meldung "fertig" aus.
Das Dokument, dass in der zweiten Makro mit Pfad angegeben ist wurde auch unter einem neueren Datum gespeichert. Die Aktualisierung der Verknüpfung ist jedoch leider nicht erfolgt.

Ich möchte mich bei allen bedanken, die versucht haben, mich zu unterstützen. Auch wenn es bisher leider noch nicht den ganzen Erfolg hatte.
Da ich aber auf keinen Fall jemanden nerven möchte, werde ich die Lösung nicht weiter verfolgen, da mir anscheinend zu viel Basiswissen fehlt oder ich Flüchtigkeitsfehler begehe.

Es ist schön, dass meine Idee mit der Shell ganz toll ist und es auch leicht geht. Sollte es mir gelingen, eine Lösung zu finden, werde ich sie auch gerne Teilen. Aber leider habe ich beim Googeln bisher noch keine hilfreichen Ansatz gefunden, um etwas wertschöpfendes beizutragen. Tut mir leid.

Gruß
Linuxfreund

musikai
Beiträge: 262
Registriert: Do 14. Mai 2015, 17:53

Re: Marko oder Shellprogramm für Aktualisierung von Calc-Dokumenten

Beitrag von musikai » Fr 10. Nov 2017, 12:08

Ist doch schonmal gut, dass es bis zum "Fertig" durchgelaufen ist.
Wenn die Verknüpfungen nicht aktualisiert wurden, könnte daran liegen, dass die verknüpften Dateien nicht gefunden werden.
Also wenn Du bestimmte Dateien im Test-Ordner hast, aber die verknüpften nicht z.B.

Ist auch klar, dass man anfangs keinen Blick dafür hat, was man wo im Programmier-Code wie für sich abändern kann (z.B. die Namen und Pfade, die in Anführungszeichen stehen), aber möglichst nicht die Variablen (die nicht in Anführungszeichen stehen), auch wenn sie so verlockende Namen wie DATEINAME haben. :-)
Schau ein bißchen in Anleitungen wie
https://www.uni-due.de/~abi070/ooo.html

Achso, lad doch einfach mal 2 verknüpfte Dateien hier hoch, dann könnte ich mir vorstellen, dass sich noch ne Lösung finden läßt.
Win7 Pro, Sibelius 7.1.3, Lubuntu 15.10, LibO 4.4.7, OO 4.1.3
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten