Open office calc basic 'event handler' möglich?

Hi allseits,

ich komme von VBA und arbeite mich gerade in die Tiefen der Open Office Programmierung ein.

Frage: ist es möglich, in dokumenttypische Vorgänge, z.B. „Dokument speichern“ = „Document.OnSave“ Code einzuklinken?

Anwendung: ich möchte gerne unmittelbar vor dem Speichern eines Dokuments noch Makros ausgeführt haben, die z.B. den Dokumenteninhalt auf Plausibilität prüfen, und ggf. das Speichern sogar abbrechen können.

Gibt das Programmiermodell von OO basic solche Eventhandler her?

Thx

Armin.

Hallo Nimral,

Anwendung: ich möchte gerne unmittelbar vor dem Speichern
eines Dokuments noch Makros ausgeführt haben, die z.B. den
Dokumenteninhalt auf Plausibilität prüfen, und ggf. das
Speichern sogar abbrechen können.

Hallo Armin,

es geht schon im Event des Dokumentspeicherns ein Makro ausführen zu
lassen mit Extras—Anpassen—Ereignisse—Dokument sichern.
Dem Ereignis ein Makro zuweisen wie hier auf dem Bild schon geschehen:
http://www.pic-upload.de/view-19535041/kwSpeichern.j…

Aber das ist ja ein völlig normales Makro wo man nicht wie
in Vba Workbook_BeforeSave(…) mit Cancel das Speichern abbrechen
lassen kann.
Man könnte probieren eine Msgbox einzubauen oder stop oder End wenn
Starbasic das bietet aber ob man dann damit das Speichern verhindern
kann glaube ich nicht aber ungetestet.

Alternativ könntest du deine Plausibilitätsprüfung in einem
Makro durchführen und je nach Ergebnis speicherst du das Dokument oder nicht. Nachfolgend ein Codebeispiel dafür.

PS: Code habe ich grad frisch aus dem Netz geholt, weiß zum Code
also soviel wie du :smile:

Gruß
Reinhard

Sub Speichern
dim dummy()
datei="K:\kwtest2.xls"
dateiurl=converttourl(datei)
odoc=thisComponent
odoc.storeasurl(dateiurl,dummy())
'odoc.storetourl(dateiurl,dummy())
End Sub

Hallo Nimral,

Anwendung: ich möchte gerne unmittelbar vor dem Speichern
eines Dokuments noch Makros ausgeführt haben, die z.B. den
Dokumenteninhalt auf Plausibilität prüfen, und ggf. das
Speichern sogar abbrechen können.

Hallo Armin,

es geht schon im Event des Dokumentspeicherns ein Makro
ausführen zu
lassen mit Extras—Anpassen—Ereignisse—Dokument sichern.
Dem Ereignis ein Makro zuweisen wie hier auf dem Bild schon
geschehen:
http://www.pic-upload.de/view-19535041/kwSpeichern.j…

Vielen Dank für den hinweis, ich denke damit bekomme ich das was ich machen möchte gebacken. Nicht ganz so wie gewünscht von der guten Fee, aber ausreichend.

Armin.

OT F5 im (Star-) Basic-Editor in Open Office Calc

Vielen Dank für den hinweis, ich denke damit bekomme ich das
was ich machen möchte gebacken. Nicht ganz so wie gewünscht
von der guten Fee, aber ausreichend.

Hallo Armin,

ich experimitiere auch mit Starbasic von OO-Calc.
Weißt du einen Weg um im Editor Prozeduren testen zu können?
Bei einer Prozedur im Modul geht das ja mit F5.

Aber sind mehrere Prozeduren im Modul bewirkt F5 daß die
oberste Prozedur ausgeführt wird. Das will ich aber nicht,
ich möchte wie in Excel daß nur die Prozedur ausgeführt wird in
die ich grad deshalb meinen Cursor reingestellt habe.

Danke für jeden Hinweis.

Gruß
Reinhard

Hallo Reinhard,

starte doch diese ausgewählte Makro mit F8 (Einzelschritt) und drücke danach erst die F5-Taste. Dann läuft nur dieses eine Modul!

Gruß Marko