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. 🤗

[Gelöst] Skript Starten aus einem Writer o. Calc Domument ?

Komponentenübergreifende Themen zu Libreoffice
Antworten
lino
Beiträge: 29
Registriert: Sa 2. Feb 2019, 17:59

[Gelöst] Skript Starten aus einem Writer o. Calc Domument ?

Beitrag von lino » Mo 30. Jan 2023, 13:34

Liebe Alle,
wenn man ein Write- oder Calc Dokument als Katalog für eine Sammlung von Batch-Prozessen anlegelegt hat, wäre es sehr komfortabel, die entsprechenden Skripte direkt aus dem Dokument heraus starten zu können. Ist das möglich und wenn ja wie?
Besten Dank
Lino
Zuletzt geändert von lino am Do 9. Feb 2023, 16:06, insgesamt 1-mal geändert.

craig
Beiträge: 1137
Registriert: Do 21. Apr 2016, 11:42

Re: Skript Starten aus einem Writer o. Calc Domument ?

Beitrag von craig » Mo 30. Jan 2023, 15:55

Hallo lino,

mittels der Starbasic-API kann man externe Scripte und interne Scripte ausführen.
Mit internen Scripten meine ich Scripte, welche im Dokument-Container gespeichert sind.
Dazu muss man wissen, dass jedes Office-Dokument ein ZIP-Archiv ist, und in diesem
ZIP-Archiv/ Dokument-Container die Scripte gespeichert werden können.

Damit die Scripte ausführbar sind, wird zur Laufzeit des Makros das gewünschten Script aus dem Container in z.B. einen temporären Ordner kopiert, ausgeführt und im Anschluß wird das Script aus dem temporären Ordner gelöscht.

Zusätzlich muss eine manuelle Anpassung der Datei manifest.xml vorgenommen werden.

Damit man Scripte aus ausführen kann, muss man im Marko die „MasterScriptProviderFactory“ laden.
Siehe in diesen Diskussionen:
https://de.openoffice.info/viewtopic.ph ... 20#p296420
https://de.openoffice.info/viewtopic.php?t=76048

Hier ein Beispiel zum Thema Dokument-Container von Stephan (welcher leider verstorben ist):
Das OpenDocument-Dateiformat (odt, ods, odp, ...) als 'Container' nutzen


Im obengenannten Link "Das OpenDocument-Dateiformat..." ist die Seite "calc-info.de" nicht mehr direkt erreichbar.
Per Wayback ist sie aufrufbar:
WAYBACK MACHINE
https://web.archive.org/web/20210227122 ... c-info.de/

Hinweis:
Bei der Shell-Anweisung (für Kommandozeile) ist die Anzahl der verwendeten Anführungszeichen von besonderer Bedeutung:
  • Weil die Kommadozeile selbst diverse Anführungszeichen erwartet
  • Weil der Basic-Interpreter diverse Anführungszeichen erwartet
Falsch gesetzte Anfürhungszeichen verursachen entweder einen Laufzeitfehler oder es passiert stillschweigend NICHTS.
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8

lino
Beiträge: 29
Registriert: Sa 2. Feb 2019, 17:59

Re: Skript Starten aus einem Writer o. Calc Domument ?

Beitrag von lino » Mo 30. Jan 2023, 16:36

Hhmm, in Anbetracht der vielen Begriffe, die mir im Zusammenhang mit LO bisher noch nicht begegnet sind, hört sich das recht zeitintensiv an. Mal sehen, ob ich kurzfristig dazu komme da einzutauchen. Zunächst besten Dank, Lino

craig
Beiträge: 1137
Registriert: Do 21. Apr 2016, 11:42

Re: Skript Starten aus einem Writer o. Calc Domument ?

Beitrag von craig » Mo 30. Jan 2023, 16:46

Hallo lino,

mit welchem Betriebssystem arbeitest Du?

Wenn Windows, dann könnte ich Dir ein kleines Beispiel
programmieren und ein paar Erläuterungen dazu schreiben.

Kennst Du Dich ein wenig mit der Makro-Programmierung (Star-Basic) aus?
Beispiele:
https://www.dannenhoefer.de/faqstarbasic/index.html
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8

lino
Beiträge: 29
Registriert: Sa 2. Feb 2019, 17:59

Re: Skript Starten aus einem Writer o. Calc Domument ?

Beitrag von lino » Mo 30. Jan 2023, 19:25

Hallo craig. Danke für das Angebot, aber das ist nicht nötig. Ich hatte gehofft, dass man den cmd-Interpreter genau so einfach(!) als Prozess starten kann wie z.B. den Adobe Reader bei Hyperlinks. Programmtechnisch wäre das kaum ein Unterschied. Vielleicht kommt das ja mal. Gruß Lino

lino
Beiträge: 29
Registriert: Sa 2. Feb 2019, 17:59

Gelöst: Skript Starten aus einem Writer o. Calc Domument ?

Beitrag von lino » Di 31. Jan 2023, 12:54

... war wohl doch recht simpel. Um die Frage, die ich anscheinend nicht löschen kann, nicht so verloren im Raum stehen zu lassen, hier der Workflow von einem befreundeten 'HeyJoe', einschließlich der Handbuchveredelung: Um z.B. den WinExplorer in einem beliebigen Pfad aufpoppen zu lassen:
(1) Makro Schreiben:

Code: Alles auswählen

Sub Explo
Shell("cmd /K ""D:&&cd D:\pfad&&explorer .""",1)
End Sub
(2) Einen Button anlegen (https://help.libreoffice.org/latest/de/ ... ields.html*) und diesem das Makro zuweisen. (* dort ändern/ergänzen: in (1) "aktivieren Sie ....", statt "wählen Sie ..." und (13) Beenden Sie den Entwurfsmodus)
Danke @Konni S. aus K.
Beste Grüße Lino

Wanderer
Beiträge: 895
Registriert: Di 11. Feb 2014, 20:03
Wohnort: Berlin

Re: Skript Starten aus einem Writer o. Calc Domument ?

Beitrag von Wanderer » Do 2. Feb 2023, 09:38

und Du kannst auch batch-Dateien und Programme direkt aufrufen.

Ich nutze das z.B. zum nacharbeiten gespeicherter Exporte, bevor diese als Dateianhang per Thunderbird verschickt werden sollen.

Du musst auch nicht erst cmd starten, obwohl dass von Vorteil sein kann, wenn MS Powershell zum default machen sollte...

J.
LO 6.0.7 (32Bit) Win8.1 Pro 32 Bit/ LO 6.3.2 Win10 64Bit / LO 6.0.7 Win7 Pro 64 Bit

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