Seite 1 von 1

Markierfelder leeren

Verfasst: Do 3. Sep 2015, 14:02
von datklos
Hallo,

ich habe eine Adressdatenbank mit einem externen Formular, das dazu dient, über ein Tabellen-Kontrollfeld eine Adressauswahl zu treffen und diese zu exportieren. Dazu habe ich ein Markierfeld eingebaut. Der Export der Auswahl in eine Datei per Makro funktioniert wunderbar. Abschließend müsste allerdings die Auswahl zurückgesetzt werden. Und hier komme ich einfach nicht weiter.

Code: Alles auswählen

SUB Export_Auswahl
DIM oMailMerge AS OBJECT
DIM aProps()
oMailMerge = createunoservice("com.sun.star.text.MailMerge")
oMailMerge.DataSourceName = "Datenbank"
oMailMerge.DocumentURL = ConvertToUrl("file:...")
oMailMerge.SaveAsSingleFile = 1
oMailMerge.CommandType = 1
oMailMerge.Command = "qAuswahl"
oMailMerge.Filter = """Auswahl""=1"
oMailMerge.SaveAsSingleFile = true
oMailMerge.OutputType = 2
oMailMerge.OutputUrl = "file:..."
oMailMerge.execute(aProps())
END SUB
Kann mir jemand dabei helfen, wie ich den Status des Markierfeldes aller Datensätze nach dem Export wieder auf 0 setzen kann?

Herzlich Dank im Voraus.

Klos

Re: Markierfelder leeren

Verfasst: Do 3. Sep 2015, 19:43
von F3K Total
Hallo,
versuche es mal so

Code: Alles auswählen

SUB Export_Auswahl
DIM oMailMerge AS OBJECT
DIM aProps()
oMailMerge = createunoservice("com.sun.star.text.MailMerge")
oMailMerge.DataSourceName = "Datenbank"
oMailMerge.DocumentURL = ConvertToUrl("file:...")
oMailMerge.SaveAsSingleFile = 1
oMailMerge.CommandType = 1
oMailMerge.Command = "qAuswahl"
oMailMerge.Filter = """Auswahl""=1"
oMailMerge.SaveAsSingleFile = true
oMailMerge.OutputType = 2
oMailMerge.OutputUrl = "file:..."
oMailMerge.execute(aProps())

oDatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatasource = oDatabaseContext.getByName("Datenbank")
oConnection = oDatasource.GetConnection("","")'
SQL_Statement = oConnection.createStatement()
sSQL = "Update ""TABELLE1"" set ""Auswahl"" = false"
'Hier muß statt TABELLE1 die Tabelle, in der die Auswahl angehakt wird, stehen. Das "false" geht bei einer BOOLEAN Spalte, hast du wirklich Zahlen, must du stattdessen vermutlich die 0 (Null) setzen.
SQL_Statement.executeupdate(sSQL)
END SUB
Gruß R

Re: Markierfelder leeren

Verfasst: Fr 4. Sep 2015, 09:12
von datklos
Liebe(r) R,

es funktioniert! Vielen herzlichen Dank für die Mühe!

Gruß,
Klos