Extern Speichern per Makro

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Stancer
***
Beiträge: 67
Registriert: Do, 21.06.2007 14:05

Extern Speichern per Makro

Beitrag von Stancer »

Hallo zusammen,
Ich möchte gerne einen baseinternen Bericht extern speichern, also praktisch eine Sicherheitskopie anlegen.
Dies soll per Makro realisiert werden. Hat jemand ne Idee wie ich das hinbekommen kann.

Vielen Dank für alle Antworten.
MfG Stancer
OpenOffice portable 2.1, Win XP
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Extern Speichern per Makro

Beitrag von komma4 »

..wahrscheinlich mit der storeToURL-Methode.
untested:
Erzeuge Deinen Bericht - und starte dann ein Marko mit

Code: Alles auswählen

 xray ThisComponent
Siehst Du was?
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)
Stancer
***
Beiträge: 67
Registriert: Do, 21.06.2007 14:05

Re: Extern Speichern per Makro

Beitrag von Stancer »

Hi Winfried,
Danke für deine Hilfe, hab das Problem inzwischen anders gelöst. Da der bericht innerhalb meines Ablaufs geöffnet wird konnte ich einfach das aktive dokument speichern. Hab dazu dieses Makro mit dem Makrorekorder aufgezeichnet.

Code: Alles auswählen

sub Berichtspeichern

rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(3) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
args1(0).Value = "file:///C:/Dokumente%20und%20Einstellungen/Gast/Desktop/bericht.odt"
args1(1).Name = "FilterName"
args1(1).Value = "writer8"
args1(2).Name = "SaveTo"
args1(2).Value = true
args1(3).Name = "SelectionOnly"
args1(3).Value = true

dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())


end sub
Trotzdem danke für deine Hilfe.
MfG Stancer
OpenOffice portable 2.1, Win XP
Antworten