AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Wie strings als Ersatz für Integer anzeigen?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie strings als Ersatz für Integer anzeigen?

Ein Thema von BlueStarHH · begonnen am 3. Okt 2013 · letzter Beitrag vom 4. Okt 2013
Antwort Antwort
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
850 Beiträge
 
Delphi 11 Alexandria
 
#1

Wie strings als Ersatz für Integer anzeigen?

  Alt 3. Okt 2013, 13:04
Datenbank: Firebird • Version: 2.5 • Zugriff über: IBDAC
Hallo,

ich habe eine Firebird-Tabelle, die ein Integer Feld "Farbe" enthält. In diesem Feld stehen die Zahlen 1, 2 oder 3. In meinem Delphi-Programm möchte ich nun, dass der Anwender nicht 1, 2 oder 3 zu sehen bekommen und eingeben muss, sondern dass diese Werte durch die Strings "Grün", "Gelb", "Rot" ersetzt werden. Also eine ComboxBox, die je nach Integer-Wert den dazu passenden String anzeigt. Wenn der Anwender einen String aus dieser ComboBox ausgwählt, soll auch nicht der String, sondern 1, 2 oder 3 in die DB geschrieben werden. Gibt es da eine fertige Lösung/Komponente? Oder muss ich das selbst machen? Wenn ja wie?

Zweites Problem: Ich nutze auch ein TcxGrid. Dort möchte ich das oben genannte Feld auch wie beschrieben nutzen. Ist das im TcxGrid schon mit Boardmitteln möglich oder muss ich das auch selbst machen? Wenn ja wie?

Oder ist mein gesamter Anzatz falsch? Problem ist, dass ich die Wörter "Grün", "Gelb", "Rot" nicht in der DB speichern möchte, da diese übersetzt werden müssen. Daher bin ich auch die Löung mit den Integern gekommen. So muss man die DB-Daten nicht ändern, wenn man die Sprache der GUI umstellt. Die Übersetzung muss dann nur einmal bei der Anzeige der Daten geschehen.

Danke!

Geändert von BlueStarHH ( 3. Okt 2013 um 13:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Wie strings als Ersatz für Integer anzeigen?

  Alt 3. Okt 2013, 13:37
Klingt nach einer DBLookupCombox.

Als zweite Tabelle brauchst du dann eine mit den entsprechenden Datensätzen, wo jeweils deine Zahl und der zugehörige Text drinsteht.
Zahl für die DB und der Text zum Anzeigen.
$2B or not $2B
  Mit Zitat antworten Zitat
taveuni
Online

Registriert seit: 3. Apr 2007
Ort: Zürich
534 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Wie strings als Ersatz für Integer anzeigen?

  Alt 3. Okt 2013, 13:46
Wie wärs wenn Du gleich die Farbe speicherst und wieder aulesen würdest?
Stichwort TColor.
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#4

AW: Wie strings als Ersatz für Integer anzeigen?

  Alt 3. Okt 2013, 13:57
Von einigen Fremdherstellern gäbe es auch passende DBColorComboboxen.
Bei Delphi scheint man wohl die DB-Version der TColorBox vergessen und man müßte manuell etwas Hand anlegen.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#5

AW: Wie strings als Ersatz für Integer anzeigen?

  Alt 3. Okt 2013, 15:34
Du kannst auch passende Events für OnGetText und OnSetText des jeweiligen TField schreiben.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
679 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Wie strings als Ersatz für Integer anzeigen?

  Alt 4. Okt 2013, 14:28
Für das Lesen gibt es auch das CASE WHEN construct von Firebird.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Wie strings als Ersatz für Integer anzeigen?

  Alt 4. Okt 2013, 14:59
Was aber in diesem Fall nicht zu empfehlen wäre
Markus Kinzler
  Mit Zitat antworten Zitat
Alt 4. Okt 2013, 15:01     Erstellt von Smut
Dieser Beitrag wurde von TBx gelöscht. - Grund: Verdacht auf SPAM und den damit verbundenen verschwenderischen Umgang von wertvollen Bits und Bytes
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
850 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Wie strings als Ersatz für Integer anzeigen?

  Alt 4. Okt 2013, 15:29
Danke an alle. Ich werde eine DBLookupCombox und eine zweite Tabelle nehemen. Das ist das einfachste für meinen Anwendungsfall. Danke auch für die anderen guten Tipps, die kann ich sicherlich nochmal gebrauchen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz