Die Fernsteuerung läuft, es entsteht die gewünshcte Gesamtdatei, aber ich muss das Inhaltsverzeichnis in OO einmal per Rechtsklick aktualisieren, damit es sich mit Inhalt füllt. Da mir keine Funktion bekannt ist, dass sich das Inhaltsverzeichnis automatisch akualisiert und ich auch über den verwendeten Wrapper keinen direkten Zugriff darauf habe, hab ich ein Makro gebaut, das das Inhaltsverzeichnis aktualisiert. Rufe ich das Makro in OO auf, tut es seinen Dienst, aber es ist mir nicht gelungen, es von der anderen Anwendung aus zu starten.
Hier der Stand nach dem Erstellen des Gesamtdokuments, Inhaltsverzeichnis auf der 2. Siete ist leer, rechts die beiden Tabellen mit Überschriften wurden importiert.
Mit folgendem Code steuere ich OO fern. Hab auch diverse Varianten beim Makronamen probiert, aber keine Reaktion. Hat jemand eine Idee?
Code: Alles auswählen
OOWriter:=TOOWriter.Create;
OOWriter.Connect:=true;
if OOWriter.Connect then
begin
OOWriter.OpenDocument('D:\...\uebungen.odt', [], ommAlwaysNoWarn);
OOWriter.InsertDocument('D:\...\Fahrt1.odt', oipEnd);
OOWriter.InsertDocument('D:\...\Fahrt2.odt', oipEnd);
OOWriter.ExecMacro('Standard.Module1.Main?language=Basic&location=document');
OOWriter.SaveDocument('D:\...\uebungen_neu.odt', '');
end;
OOWriter.Free;
Code: Alles auswählen
REM ***** BASIC *****
sub Main
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 ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:UpdateAllIndexes", "", 0, Array())
end sub
Carsten