❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

[gelöst] Zusammensetzen von angezeigten Werten in Listenfeldern funktioniert nur eingeschränkt?

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
pschulze59
Beiträge: 51
Registriert: Di 16. Okt 2018, 12:48

[gelöst] Zusammensetzen von angezeigten Werten in Listenfeldern funktioniert nur eingeschränkt?

Beitrag von pschulze59 » Mo 29. Okt 2018, 19:44

Hallo,
ich lasse die angezeigten Werte von Listenfeldern zur Ermittlung der verknüpften ID aus anderen Tabellenfelder darstellen:

Code: Alles auswählen

SELECT "Bez1"||', '||"Bez2", ID FROM .....usw.....


"Bez1" ist in der Quelltabelle ein Pflichtfeld und wird zwingend ausgefüllt.
"Bez2" ist allerdings kein Pflichtfeld und wird nur bei Bedarf ausgefüllt.

Warum funktioniert die Anzeige von Listenwerten nur, wenn "Bez2" einen Wert enthält???

Ist "Bez2" leer, wird der ganze Listeneintrag ausgeblendet, auch wenn "Bez1" einen Wert enthält.
Wenn es keine andere Lösung gibt, müsste man zwingend wenigsten ein Leerzeichen in "Bez2" eintragen, was aber Blödsinn ist.
Hat jemand eine andere Lösung?
Zuletzt geändert von pschulze59 am Mo 29. Okt 2018, 20:19, insgesamt 1-mal geändert.

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Zusammensetzen von angezeigten Werten in Listenfeldern funktioniert nur eingeschränkt?

Beitrag von F3K Total » Mo 29. Okt 2018, 19:59

Versuche mal

Code: Alles auswählen

SELECT "Bez1"||', '||ifnull("Bez2",''), ID FROM .....usw.....
Windows 11: AOO, LO Linux Mint: AOO, LO

pschulze59
Beiträge: 51
Registriert: Di 16. Okt 2018, 12:48

Re: Zusammensetzen von angezeigten Werten in Listenfeldern funktioniert nur eingeschränkt?

Beitrag von pschulze59 » Mo 29. Okt 2018, 20:18

Habe gerade die Lösung im LibreOffice-Base-Handbuch gefunden:

Code: Alles auswählen

SELECT "Bez1"||COALESCE (', '||"Bez2", ''), "ID" FROM .......
(Nach "Bez2" und dem Komma sind zwei einfache Hochkommas gesetzt, bevor die Klammer zu gemacht wird.

Handbuch S.272 nennt dazu ein Beispiel:
Falls es einmal passieren sollte, dass Felder für die Vornamen leer (
NULL
) sind, so wird so ein
Datensatz in den Listenfeldern natürlich erst einmal nicht angezeigt. Leere Felder, verbunden mit
anderen Feldern, sind ebenfalls
NULL
. Hier hilft dann eine entsprechend eingefügte Bedingung:
SELECT
"Nachname"||COALESCE(', '||"Vorname",''),
"ID"
FROM "Tabelle1"
ORDER BY "Nachname"||COALESCE(', '||"Vorname",'');
Damit wird das Komma und der anschließende Vorname durch einen leeren Text ersetzt, wenn
das Feld "Vorname"
NULL
ist.
Ich werde den anderen Vorschlag mit "ifnull" tortzdem mal probieren.
Danke

RobertG
* LO-Experte *
Beiträge: 2888
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: [gelöst] Zusammensetzen von angezeigten Werten in Listenfeldern funktioniert nur eingeschränkt?

Beitrag von RobertG » Mo 29. Okt 2018, 20:43

Hallo pschulze59,

im Handbuch habe ich sämtliche Einträge zu IFNULL durch COALESCE ersetzt, weil die kommende interne Firebird-Datenbank mit IFNULL nichts anfangen kann, HSQLDB und Firebird aber beide COALESCE unterstützen. Dieser Befehl ist dann auch etwas umfangreicher: Es können beliebig viele Werte angegeben werden, so dass sowohl die erste als auch die zweite Angabe NULL sein können.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare


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.



Antworten