9.7 Wie kann man die Datenbank in Writer austauschen?
Man kann auf Datenfelder über die Enumeration der Textfelder eines Dokumentes erreichen. Innerhalb der Numeration muss man nur auf den Service prüfen.
Bei diesem kann dann mit den Textfieldmasters der Datenbankname geändert werden.


Sub databasechange

  Doc = ThisComponent

  TextFelderEnumration = Doc.getTextFields.createEnumeration

    While TextFelderEnumration.hasMoreElements()

      TextField = TextFelderEnumration.nextElement()

      If TextField.supportsService("com.sun.star.text.TextField.Database") Then  

           textfield.textfieldmaster.databasename="Neuer Name"

      end if

  Wend

end sub



Man darf sich aber nicht verwirren lassen. Nach dem Makro wird beim Überfahren mit der Maus noch die alte Datenbank angezeigt. Geht man aber mit Doppelklick auf das Feld oder noch mal in "Datenbank austauschen" sieht man die Verknüpfung zu der neuen Datenbank. Wenn das Dokument speichert und wieder öffnet wird die neue Datenbank angezeigt.