Hallo,
ich benutze OpenOffice 2.3.0
Basic habe ich mir einen Dialog erstellt, der Daten aus drei Datenbanktabellen anzeigt.
Zum Auslesen der Daten benutze ich drei rowSets:
Code: Alles auswählen
oBuchungsSet = createUnoService("com.sun.star.sdb.RowSet")
oBuchungsSet.setPropertyValue("DataSourceName", "DB-Name")
oBuchungsSet.setPropertyValue("CommandType", com.sun.star.sdb.CommandType.COMMAND)
oRechnungsSet = createUnoService("com.sun.star.sdb.RowSet")
oRechnungsSet.setPropertyValue("DataSourceName", "DB-Name")
oRechnungsSet.setPropertyValue("CommandType", com.sun.star.sdb.CommandType.COMMAND)
oAdressenSet = createUnoService("com.sun.star.sdb.RowSet")
oAdressenSet.setPropertyValue("DataSourceName", "DB-Name")
oAdressenSet.setPropertyValue("CommandType", com.sun.star.sdb.CommandType.COMMAND)
Beim Schließen des Dialogs werden die RowSets auch brav geschlossen:
Code: Alles auswählen
Sub SchliesseAuszugMaske
oAuszugMaske.endExecute()
oBuchungsSet.close()
oRechnungsSet.close()
oAdressenSet.close()
end Sub
Die Änderungen werden z.B. weggeschrieben mit:
Code: Alles auswählen
oRechnungsSet.updateDate(oRechnungsSet.findcolumn("zahlungseingang"), oBuchungsSet.getDate(oBuchungsSet.findcolumn("valuta")))
oRechnungsSet.UpdateRow()
Wird der Dialog geschlossen und wieder aufgerufen, werden die Änderungen in den Daten auch angezeigt.
Schließe ich aber OpenOffice komplett und rufe den Dialog wieder auf, wird wieder der alte Stand von vor den Änderungen angezeigt.
Ich kann momentan nur die Änderungen wegschreiben, wenn ich gleichzeitig die Datenbank (DB-Name.odb) in OpenOffice öffne.
Hat jemand eine Idee, was ich falsch mache??