Datensätze aus Datenbank auslesen und in Writer einfügen

Das Textverarbeitungsprogramm

Moderator: Moderatoren

thomasp
*
Beiträge: 11
Registriert: Mo, 12.05.2014 02:45

Datensätze aus Datenbank auslesen und in Writer einfügen

Beitrag von thomasp »

Hallo,

ich habe mir mit Base eine Datenbank erstellt, die auch funktioniert.

Wenn ich eine Zeile auswähle und "Daten in Text" erscheint alles in meinem Dokument.

Ich möchte aber die Spalteninhalte automatisch in ein Listenfeld ausgeben lassen um diese so in mein
Writerdokument einzupflegen.

Wer hat einen Tipp für mich bitte?

Liebe Grüße
Thomas
Bildschirmfoto 2020-12-11 um 21.12.37.png
Bildschirmfoto 2020-12-11 um 21.12.37.png (247.1 KiB) 1708 mal betrachtet
Zuletzt geändert von thomasp am Fr, 11.12.2020 21:13, insgesamt 1-mal geändert.
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Datensätze aus Datenbank auslesen und in Writer einfügen

Beitrag von Stephan »

WAs der Screenshot sagen soll ist mr unklar.

Werte aus einer bestehenden Datenbank bekommt man z.B. so in eine Combobox (ThisDatabaseDocument entspricht im Beispiel dem *.odb-Dokument, ThisComponent entspricht, aus Sicht des Makros, einem Formular innerhalb des *.odb-Dokuments):

Code: Alles auswählen

     DbName = ThisDatabaseDocument.DataSource.Name

    DataSource = createUnoService("com.sun.star.sdb.DatabaseContext").getByName(DbName)
    Connection = DataSource.GetConnection("","")
    oStatement = Connection.createStatement() 
	xe = oStatement.executeQuery("Select ""Firmenname"" , ""Abteilung""  FROM ""Firma"" ORDER BY ""Firmenname"" ASC")
	
	Do While xe.Next
		tmp = UBOUND(listeninhalt())
		Redim Preserve listeninhalt(tmp + 1)
		If Len(xe.getString(2)) > 0 Then
				listeninhalt(tmp + 1) = xe.getString(1) & " [" & xe.getString(2) & "]"
			Else
				listeninhalt(tmp + 1) = xe.getString(1)
		End If
	Loop
		
	ThisComponent.drawpage.forms.getbyindex(0).getByName("combo_1").StringItemList = listeninhalt()

Gruß
Stephan
Antworten