von juetho » Mi, 29.08.2012 12:02
Ach, so muss das gehen: nicht unmittelbar im Writer, sondern wenn ich eine bestimmte Auswahl als Datenquelle benötige, geht das immer über eine Abfrage in Base. (Nun ja, nicht ganz "immer"; beim Drucken habe ich auch noch eine gewisse Auswahlmöglichkeit.) Diesen Weg hatte ich gesehen; aber als ich über die Syntax von CASE nachgedacht hatte, bin ich doch lieber zu MySQL gegangen. Das hat in der Tat so funktioniert.
Für spätere Leser nochmals der Lösungsweg:
- ort und land werden in der Datenbank in "normaler" Schreibweise gespeichert; auf die Eingabe "Deutschland" wird verzichtet.
- Es gibt ein Tabellenfeld lkz (Länderkennzeichen) gemäß ISO 3166.
- Es wird eine Abfrage erstellt, die beim Ausland Ort und Land in Großbuchstaben setzt und bei "DE" die normale Schreibweise liefert.
- Diese Abfrage wird als Datenquelle ausgewählt.
Unter MySQL enthält die Abfrage vor allem folgende Bestandteile (aus UPPER wurde dabei UCASE):
Code: Alles auswählen
lkz,
plz,
(case lkz
when 'DE' then ort
else ucase(ort)
end) AS ort,
ucase(land) AS land,
Damit ist auch diese Frage gelöst und erledigt. Jürgen
Ach, so muss das gehen: nicht unmittelbar im Writer, sondern wenn ich eine bestimmte Auswahl als Datenquelle benötige, geht das immer über eine Abfrage in Base. (Nun ja, nicht ganz "immer"; beim Drucken habe ich auch noch eine gewisse Auswahlmöglichkeit.) Diesen Weg hatte ich gesehen; aber als ich über die Syntax von CASE nachgedacht hatte, bin ich doch lieber zu MySQL gegangen. Das hat in der Tat so funktioniert.
Für spätere Leser nochmals der Lösungsweg:
[list][*][i]ort[/i] und [i]land[/i] werden in der Datenbank in "normaler" Schreibweise gespeichert; auf die Eingabe "Deutschland" wird verzichtet.
[*]Es gibt ein Tabellenfeld [i]lkz[/i] (Länderkennzeichen) gemäß ISO 3166.
[*]Es wird eine Abfrage erstellt, die beim Ausland Ort und Land in Großbuchstaben setzt und bei "DE" die normale Schreibweise liefert.
[*]Diese Abfrage wird als Datenquelle ausgewählt.[/list]
Unter MySQL enthält die Abfrage vor allem folgende Bestandteile (aus UPPER wurde dabei UCASE):
[code] lkz,
plz,
(case lkz
when 'DE' then ort
else ucase(ort)
end) AS ort,
ucase(land) AS land,
[/code]
Damit ist auch diese Frage gelöst und erledigt. Jürgen