Änderungen in einem Calc-Dokument werden vom Makro-Interpreter nicht zur Kenntnis genommen.
Situation: Ein Calc-Dokument enthält insgesamt 15 Tabellen, die immer wieder einmal geändert werden. Diese ods-Datei ist als Datenbank registriert. Auf der Grundlage mehrerer SELECT-Befehle erzeuge ich in einem Makro ein Writer-Dokument. Das klappt eigentlich auch reibungslos; aber wenn in einer dieser Tabellen eine Spalte hinzugefügt, entfernt oder umbenannt wird, dauert es ewig, bis diese Änderung auch zur Kenntnis genommen wird.
Meine Versuche: Datei speichern unter, Programm beenden und neu starten, Datenbank registrieren oder wechseln, Daten aktualisieren - nichts hilft. Aktuell wird eine Spalte in einer Tabelle, die ich vor etwa zwei Wochen eingefügt hatte, immer noch nicht berücksichtigt.
Wie kann ich sicherstellen, dass beim Aufruf mit den folgenden Befehlen wirklich immer die aktuellen Daten abgefragt werden?
Code: Alles auswählen
oDBContext = CreateUnoService("com.sun.star.sdb.DatabaseContext")
dbSource = oDBContext.GetByName("Klassenlisten")
conn = dbSource.GetConnection("","")