🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Datenbankzugriff auf Combofeld im dialog
Datenbankzugriff auf Combofeld im dialog
Hallo, vielleicht kann mir hier jemand einen Tipp geben?
Ich habe im writer einen Dialog erstellt mit einer Combobox. Leider habe ich wenig Programmiererfahrung und versuche schon seit Tagen nach einer Lösung im Netz. Wie lautet denn die Zauberformel um eine vorhandene Datenbank und die entsprechende Spalte in der combobox auch darzustellen? (Zugriff etc.) Die Box ist jetzt natürlich leer und das tut weh.
Gibt es da irgendeinen Code-Schnipsel, den man verwenden könnte?
Windows xp
Ich habe im writer einen Dialog erstellt mit einer Combobox. Leider habe ich wenig Programmiererfahrung und versuche schon seit Tagen nach einer Lösung im Netz. Wie lautet denn die Zauberformel um eine vorhandene Datenbank und die entsprechende Spalte in der combobox auch darzustellen? (Zugriff etc.) Die Box ist jetzt natürlich leer und das tut weh.
Gibt es da irgendeinen Code-Schnipsel, den man verwenden könnte?
Windows xp
Re: Datenbankzugriff auf Combofeld im dialog
Prinzipiell hat ein Dialog keine Datenquelle. Um eine Listbox mit Daten zu füllen, musst Du die vorher auslesen, in eine Variable verpacken (am besten ein Array) und dann die Listbox mit .additems() befüllen.
sieh mal hier nach:
http://www.starbasicfaq.de/Dialoge.html
Direkt auf eine Datenquelle kannst Du nur in einem Formular zugreifen, und das müsste wiederum extern (als Writer-Dokument) gespeichert werden! Nur im Base-Modul kannst Du ein Formular auch in der Base-Datei mitspeichern.
g
Code: Alles auswählen
'Dialog als 'oDialog1' definieren (Siehe Link unten)
oListBox = oDialog1.getControl("Name der Listbox")
oListBox.additems(ArrayVariable(),0)
http://www.starbasicfaq.de/Dialoge.html
Direkt auf eine Datenquelle kannst Du nur in einem Formular zugreifen, und das müsste wiederum extern (als Writer-Dokument) gespeichert werden! Nur im Base-Modul kannst Du ein Formular auch in der Base-Datei mitspeichern.
g
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
Re: Datenbankzugriff auf Combofeld im dialog
Hallo gogo, vielen Dank erst einmal, dass du geantwortet hast. Der weg ist mir jetzt klarer : Datenbank öffnen, Tabellenspalte auswählen, auslesen und in den Dialog einfügen.
Datenbank öffnen habe ich gefunden. Ich will nur eine Datenspalte auslesen. Bloß wie geht das? Dieser Vorgang ist doch so häufig, dass er überall stehen müsste. Im Netz finde ich jedoch nur Hiroglyphen.
Gibt es nicht ein Rezept, was man abschreiben kann?
Ich legt mal den bisherigen Code dran, vielleicht könntest du mir noch einen Tip geben. Dannenhöfer ist zwar gut, aber irgendwie auch nur für Cracks geschrieben. Ich hohe dass es nicht zu unverschämt ist, Dich nochmal zu bitten es mal zu kommentieren. es fehlt halt der code zum Auslesen der Datenbank und die Verbindung zum dialog.
Sub Dialog1Show
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
'oDialog1.Model.xxxx ??? Was soll das heißen?
'Dialog als 'oDialog1' definieren (Siehe Link unten)
oListBox = oDialog1.getControl("ListBox1")
' oListBox.additems(ArrayVariable(),0) ' hier wird ein Fehler erzeugt
oDialog1.Execute()
End Sub
Sub Datenbank
Dim myWert as string
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Feldinhalt")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("SELECT * FROM Anamnese")' ist das Bibliography?
Index=resultset.findcolumn("Diagnose")
If Index>resultset.columns.count then MsGBox "nicht vorhanden."
'jetzt fehlt nur noch das Array
myWert=resultset.getString(Index)
MsGBox mywert
Datenbank öffnen habe ich gefunden. Ich will nur eine Datenspalte auslesen. Bloß wie geht das? Dieser Vorgang ist doch so häufig, dass er überall stehen müsste. Im Netz finde ich jedoch nur Hiroglyphen.
Gibt es nicht ein Rezept, was man abschreiben kann?
Ich legt mal den bisherigen Code dran, vielleicht könntest du mir noch einen Tip geben. Dannenhöfer ist zwar gut, aber irgendwie auch nur für Cracks geschrieben. Ich hohe dass es nicht zu unverschämt ist, Dich nochmal zu bitten es mal zu kommentieren. es fehlt halt der code zum Auslesen der Datenbank und die Verbindung zum dialog.
Sub Dialog1Show
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
'oDialog1.Model.xxxx ??? Was soll das heißen?
'Dialog als 'oDialog1' definieren (Siehe Link unten)
oListBox = oDialog1.getControl("ListBox1")
' oListBox.additems(ArrayVariable(),0) ' hier wird ein Fehler erzeugt
oDialog1.Execute()
End Sub
Sub Datenbank
Dim myWert as string
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Feldinhalt")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("SELECT * FROM Anamnese")' ist das Bibliography?
Index=resultset.findcolumn("Diagnose")
If Index>resultset.columns.count then MsGBox "nicht vorhanden."
'jetzt fehlt nur noch das Array

myWert=resultset.getString(Index)
MsGBox mywert
Re: Datenbankzugriff auf Combofeld im dialog

Also: So wie Du's geschrieben hast, gibt es bei Dir eine registrierte Datenbank namens "Feldinhalt".
In dieser DB wiederum eine Tabelle namens "Anamnese"
und in dieser Tabelle eine Spalte (Feld) namens "Diagnose".
Du möchtest also bei dem Dialog der kommt alle möglichen Diagnosen in der Combobox aufgelistet haben, und nach dem Bestätigen eines Buttons im Dialog soll die Diagnose dann im Writer-Dokument eingetragen werden - richtig?
Wenn ja:
Dann sollte die Abfrage lauten:
Code: Alles auswählen
"SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC;"
Code: Alles auswählen
Statement.ResultSetType = 1004 '= com.sun.star.sdbc.ResultSetType.SCROLL_INSENSITIVE
Code: Alles auswählen
ResultSet.Last
iAnzahl=ResultSet.GetRow
if iAnzahl <= 0 then
end sub
end if
ResultSet.First
dim strEintraege(iAnzahl)
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
next i
oComboBox.additems(strEintraege(),1)
g
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
Re: Datenbankzugriff auf Combofeld im dialog
Das finde ich supernett von Dir, dass Du so ausführlich antwortest.
Allerdings ist der Code irgendwie immer noch noch so ganz durch.
er sieht jetzt so aus und erzeugt einige hartnäckige Fehler: könntest Du nochmal ein fachmännisches Auge darauf werfen?
Sub Datenbank
Dim myWert as string
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Feldinhalt")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("SELECT * FROM Anamnese")' ist das Bibliography?
Index=resultset.findcolumn("Diagnose")
If Index>resultset.columns.count then MsGBox "nicht vorhanden."
end if
SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC; 'hier fragt er nach case? !!!!!!!
Statement.ResultSetType = 1004 '= com.sun.star.sdbc.ResultSetType.SCROLL_INSENSITIVE
ResultSet.Last
iAnzahl=ResultSet.GetRow
if ' hier meint er es gäbe kein if !!!!!!!!!
iAnzahl <= 0 then end sub
end if
ResultSet.First
dim strEintraege(iAnzahl)
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
myWert=resultset.getString(Index)
'MsGBox mywert
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
'oDialog1.Model.xxxx ??? Was soll das heißen?
'Dialog als 'oDialog1' definieren
oListBox = oDialog1.getControl("ListBox1")
oListBox.additems(ArraymyWert(),0) ' hier wird ein Fehler erzeugt !!!!!!!
oDialog1.Execute()
End Sub
Allerdings ist der Code irgendwie immer noch noch so ganz durch.
er sieht jetzt so aus und erzeugt einige hartnäckige Fehler: könntest Du nochmal ein fachmännisches Auge darauf werfen?
Sub Datenbank
Dim myWert as string
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Feldinhalt")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("SELECT * FROM Anamnese")' ist das Bibliography?
Index=resultset.findcolumn("Diagnose")
If Index>resultset.columns.count then MsGBox "nicht vorhanden."
end if
SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC; 'hier fragt er nach case? !!!!!!!
Statement.ResultSetType = 1004 '= com.sun.star.sdbc.ResultSetType.SCROLL_INSENSITIVE
ResultSet.Last
iAnzahl=ResultSet.GetRow
if ' hier meint er es gäbe kein if !!!!!!!!!
iAnzahl <= 0 then end sub
end if
ResultSet.First
dim strEintraege(iAnzahl)
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
myWert=resultset.getString(Index)
'MsGBox mywert
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
'oDialog1.Model.xxxx ??? Was soll das heißen?
'Dialog als 'oDialog1' definieren
oListBox = oDialog1.getControl("ListBox1")
oListBox.additems(ArraymyWert(),0) ' hier wird ein Fehler erzeugt !!!!!!!
oDialog1.Execute()
End Sub
Re: Datenbankzugriff auf Combofeld im dialog
Kannst Du bitte Deine Writerdatei, sowie den Dialog und ggf. die Datenbank mit "Dateianhang hochladen" dranhängen? BITTE NUR ANONYME DATEN - und die Datenbank kleinhalten!
Also:
änderts Du in:
Dann fällt automatisch auch der Fehler beim IF weg.
Weiters:
Andern in:
g
Also:
Code: Alles auswählen
ResultSet = Statement.executeQuery("SELECT * FROM Anamnese")' ist das Bibliography?
Code: Alles auswählen
ResultSet = Statement.executeQuery("SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC;")
Weiters:
Code: Alles auswählen
myWert=resultset.getString(Index)
'MsGBox mywert
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
'oDialog1.Model.xxxx ??? Was soll das heißen?
'Dialog als 'oDialog1' definieren
oListBox = oDialog1.getControl("ListBox1")
oListBox.additems(ArraymyWert(),0) ' hier wird ein Fehler erzeugt !!!!!!!
Code: Alles auswählen
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
oListBox = oDialog1.getControl("ListBox1")
oListBox.additems(strEintraege(),0)
g
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
Re: Datenbankzugriff auf Combofeld im dialog
Hmmm - hochladen geht irgendwie nicht...trotzdem sieht der Code schon besser aus.
Ich hänge den Code, wie er jetzt ist einfach nochmal dran, Jetzt findet er keinen Gefallen am End-Sub und schreibt " unerwartetes Symbol : EndSub"
Sub Datenbank
dim strEintraege(iAnzahl)
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Feldinhalt")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC;")
Index=resultset.findcolumn("Diagnose")
Statement.ResultSetType = 1004 '= com.sun.star.sdbc.ResultSetType.SCROLL_INSENSITIVE
ResultSet.Last
iAnzahl=ResultSet.GetRow
'if iAnzahl <= 0 then end sub ' Hab ich stillgelegt, weil er immer noch meckert: "Else/endif ohne if."
'end if
ResultSet.First
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
oListBox = oDialog1.getControl("ListBox1")
oListBox.additems(strEintraege(),0)
oDialog1.Execute()
End sub
Ich hänge den Code, wie er jetzt ist einfach nochmal dran, Jetzt findet er keinen Gefallen am End-Sub und schreibt " unerwartetes Symbol : EndSub"

Sub Datenbank
dim strEintraege(iAnzahl)
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Feldinhalt")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC;")
Index=resultset.findcolumn("Diagnose")
Statement.ResultSetType = 1004 '= com.sun.star.sdbc.ResultSetType.SCROLL_INSENSITIVE
ResultSet.Last
iAnzahl=ResultSet.GetRow
'if iAnzahl <= 0 then end sub ' Hab ich stillgelegt, weil er immer noch meckert: "Else/endif ohne if."
'end if
ResultSet.First
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
oListBox = oDialog1.getControl("ListBox1")
oListBox.additems(strEintraege(),0)
oDialog1.Execute()
End sub
Re: Datenbankzugriff auf Combofeld im dialog
sry, die If-Teile müssen alle in separaten Zeilen stehen:
g
Code: Alles auswählen
if iAnzahl <= 0 then
end sub
end if
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
Re: Datenbankzugriff auf Combofeld im dialog
Jo, wenn das so einfach wäre.
also wenn ich folgendes wieder einschalte
'if iAnzahl <= 0 then
' end sub
' end if
dann kommt die Fehlermeldung else/end if ohne if trotzdem
und wenn ich es ganz ausschalte, dann kommt die nächste Fehlermeldung weiter unten:
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
end sub --- unerwartetes Symbol. der Spinnt.
schalt ich auch das aus, meckert er zwar nicht mehr, geht aber auch nicht bis zum ende des Codes weiter. hmmmm..was nun?
also wenn ich folgendes wieder einschalte
'if iAnzahl <= 0 then
' end sub
' end if
dann kommt die Fehlermeldung else/end if ohne if trotzdem
und wenn ich es ganz ausschalte, dann kommt die nächste Fehlermeldung weiter unten:
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
end sub --- unerwartetes Symbol. der Spinnt.
schalt ich auch das aus, meckert er zwar nicht mehr, geht aber auch nicht bis zum ende des Codes weiter. hmmmm..was nun?
Re: Datenbankzugriff auf Combofeld im dialog
Diese 'falschen' Fehlermeldungen kommen dann wenn irgendwo Schleifen "offen" sind. Die Fehler treten zwar am Beginn der If-Schleife auf, aber sie beziehen sich auf die offene Schleife irgendwo anders im Code. So eine hast Du produziert als Du:
im Code hattest - das ist eigentlich ein SQL-Statement, und Basic kann damit gar nichts anfangen. Zufälligerweise ist aber das erste Wort ("Select") Bestandteil einer Select-Anweisung, die normalerweise etwa so aussieht:
Die Fehlermaldung die Du bekommen hast lautete: "Select ohne Case" oder so ähnlich, weil Basic nach dem Wort "Case" gesucht hat - dass Du gar keine Select-Case-Anweisung wolltest war ein ... Missverständnis 
Die Fehlermeldung wegen dem end sub kommt jetzt weil Du das:
vergessen hast - damit ist die for-next-Schleife noch offen, wenn das "end sub" kommt.
Die problematische If-Schleife hab' ich übrigens falsch geschrieben, da steht "end sub" und es müsste heissen "end" ("end sub" geht nur in VB)
der ganze Code sollte also so aussehen (wobei ich Dir nicht sagen kann ob die Reihenfolge der Anweisungen den Dialog betreffend so hinhaut, ich verwende immer Formulare...):
g
Code: Alles auswählen
SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC; 'hier fragt er nach case? !!!!!!!
Code: Alles auswählen
select Case VariableXYZ
case 3
case 5
case else
end select

Die Fehlermeldung wegen dem end sub kommt jetzt weil Du das:
Code: Alles auswählen
next i
Die problematische If-Schleife hab' ich übrigens falsch geschrieben, da steht "end sub" und es müsste heissen "end" ("end sub" geht nur in VB)
der ganze Code sollte also so aussehen (wobei ich Dir nicht sagen kann ob die Reihenfolge der Anweisungen den Dialog betreffend so hinhaut, ich verwende immer Formulare...):
Code: Alles auswählen
Sub Datenbank
dim strEintraege(iAnzahl)
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Feldinhalt")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("SELECT distinct Diagnose as Diagnose FROM Anamnese order by Diagnose ASC;")
Index=resultset.findcolumn("Diagnose")
Statement.ResultSetType = 1004 '= com.sun.star.sdbc.ResultSetType.SCROLL_INSENSITIVE
ResultSet.Last
iAnzahl=ResultSet.GetRow
if iAnzahl <= 0 then
end
end if
ResultSet.First
for i = 1 to iAnzahl
strEintraege(i-1) = ResultSet.GetString(1)
ResultSet.next
next
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
oListBox = oDialog1.getControl("ListBox1")
oListBox.additems(strEintraege(),0)
oDialog1.Execute()
End sub
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.