Makro nach speichern einer Datei ausführen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Makro nach speichern einer Datei ausführen

Beitrag von clag »

Hallo BasicCoders,

ich möchte per Makro eine Vorlage öffnen funktioniert auch schon im Groben viewtopic.php?f=18&t=40303

nun möchte ich erreichen,
dass wenn ich in diese neue "Unbekannt X" Datei unter einem Namen speichere und schließe,
umgehend wieder das Makro ausgeführt wird welches aus der Vorlage erneut ein "Unbekant X" erstellt
bis ich das durch schließen des "Unbekannt X" beende

ich hoffe ihr versteht was ich meine und mögt mich, mit Konkretem füttern !?

nom.. nom.. nom.. :lol:
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro nach speichern einer Datei ausführen

Beitrag von komma4 »

Bist ja schon ein fauler Hund 8)


Probier' doch selbst aus, ob ein Makro, angehängt an die Vorlage, nach Speichern des neuen Dokuments aus der Vorlage ausgeführt wird... Extras>Anpassen...>Ereignisse>Ereignis: Dokument wurde gesichert
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Makro nach speichern einer Datei ausführen

Beitrag von clag »

Hallo Komma4,

erst einmal Danke für den Tipp

das kannte ich noch nicht, aber wie es scheint fehlt genau das was ich suche "gespeichert unter/schließen" fehlt :(
die beiden Alternativen die je eine Aktion der Kombination erfüllen, führen beide zu unkomfortablen Verhalten ....

1.
wähle ich hier "Makro ausführen bei schließen" führt das zu einer Endlosschleife, wenn ich die Bearbeitung dieser Art beenden möchte
und die letzte leere Vorlage schließen will, die dann immer wieder ein neues leeres Dokument öffnet

2.
wähle ich hier "Makro ausführen bei sichern unter" wird direkt nach dem speichern unter ein neues Dokument geöffnet
und über das vorherige gelegt dann muss man entweder wiederholt Fenster wechseln oder es sammeln sich reichlich
geöffnete Dokumente im Hintergrund an.

kann man das nicht irgend wie kombinieren ?

Vielleicht muss man da doch besser manuell ein Makro aufrufen welches zuerst den "speichern unter Dialog" aufruft
und wenn der abgeschlossen ist, die Datei schließt und eine neue generiert ?
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
AndyK70
*
Beiträge: 15
Registriert: Mi, 24.09.2008 12:00

Re: Makro nach speichern einer Datei ausführen

Beitrag von AndyK70 »

clag hat geschrieben:kann man das nicht irgend wie kombinieren ?

Vielleicht muss man da doch besser manuell ein Makro aufrufen welches zuerst den "speichern unter Dialog" aufruft
und wenn der abgeschlossen ist, die Datei schließt und eine neue generiert ?
Und was ist wenn Dein Makro nach "Speichern unter..." aufgerufen wird und dann zuerst sich das aktuelle gespeicherte Dokument merkt, ein neues Dokument aufmacht und das gemerkte dann schliesst?
Und wenn du es ohne zu speichern schliesst passiert nix...
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro nach speichern einer Datei ausführen

Beitrag von komma4 »

clag hat geschrieben:wähle ich hier "Makro ausführen bei schließen" führt das zu einer Endlosschleife, wenn ich die Bearbeitung dieser Art beenden möchte
und die letzte leere Vorlage schließen will, die dann immer wieder ein neues leeres Dokument öffnet
Ergänze Dein Makro "Neues Dokument aus Vorlage" um die Abfrage, ob das aktuelle Dokument gespeichert wurde oder nicht, dann sollte das mit diesem Ereignis klappen:

Code: Alles auswählen

If ThisComponent.hasLocation() Then
'  Dokument wurde gespeichert
'  nun neues Dokument
End If
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Makro nach speichern einer Datei ausführen

Beitrag von clag »

Hallo,

@ AndyK70
da wären schon wieder erweiterte Basic Kenntnisse nötig, sind zZ bei mir noch nicht vorhanden :(
aber die Spitzentruppe hier, arbeitet hart daran diesen Zustand zu verändern :D

@ Komma4,

deine Zusatzzeilen macht es fast perfekt ;)

es klemmt noch ein klitzekleines bischen wenn ich das neue Dokument mit Daten versehen habe und und nun ganz hastig schließen will,
und in der Eile versäumt habe zu speichern, dann erkennt Writer glücklicherweise, dass das Dokument Daten enthält und haut es nicht gleich in die Tonne,
sondern ruft den Dialog zur Namensvergabe auf, gebe ich hier einen Namen ein und speichere wird "zugemacht" und keine neue Vorlage geöffnet,
wenn man diese Situation auch noch so hinbiegen kann das eine neue Vorlage geöffnet wird, dann

ja dann ist es Narrensicher und somit auch clag-tauglich :lol: :lol:

es müsste irgend wie abgefragt werden ob der Status ungesichert besteht
da fehlt mir leider der Plan was Basic da noch so für Details bietet
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Makro nach speichern einer Datei ausführen

Beitrag von clag »

Hallo BasicCoders,

dass habe ich nun zusammen gebastelt nach vielen Std. lesen und probieren

Code: Alles auswählen

Sub loadagain01

 Dim myProp(0) as new com.sun.star.beans.PropertyValue
 myProp(0).name="MacroExecutionMode"
 myProp(0).value = 6

 aService = CreateUnoService("com.sun.star.util.PathSubstitution")
 sUserPath = aService.substituteVariables("$(user)", true)

	If ThisComponent.isModified() Then
		goto abbruch
	End If

	If ThisComponent.hasLocation() Then
		url = sUserPath & "\template\html-import-1.ott"
		oDocument = StarDesktop.loadComponentFromURL(url, "_blank", 0, myProp() )
	End If

	abbruch:
End Sub
wenn da noch jemand seinen unbedenklichkeits Segen zu gibt wäre ich beruhigt

funktionieren tut es jedenfalls wie gedacht abgelegt habe den Code in der Vorlage
man ruft einmal die Vorlage auf und wenn man ein abgespeichertes Dokument schließt
wird ein neues leeres geöffnet, wir das leere geschlossen beendet das auch dieses Makro

Dank an alle die mir wie auch immer mit was auch immer geholfen haben :D
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Makro nach speichern einer Datei ausführen

Beitrag von Karolus »

Hallo
Du benutzt ...goto abbruch...abbruch... nur zum verlassen der Sub, dafür gibts ...exit sub

Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Makro nach speichern einer Datei ausführen

Beitrag von clag »

Hallo Karo,

Danke !
hab das neue Wissen gleich verwertet und eingebaut, und eine Zeile weniger :)
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Antworten