![]() |
AW: DBLookupComboBox ohne Lookup-Tabelle
Zitat:
Aber sonst: :thumb: Leider gibt es ein kleines Problem dabei, das gelöst werden muss. Angenommen, wir haben eine Eigenschaft 'Geschmack' mit der entsprechenden Tabelle 'Süß', 'Sauer', 'Bitter', 'Salzig'. (Werte = 1,2,3,4) Nun muß die Software bie einem süßen Gericht Schlagsahne anbieten. Also muss die Anwendung wissen, das 'Süß=1' ist. Das ist natürlich kein Riesenproblem, aber diese Tastsache ist an zwei Stellen hinterlegt (in der DB und in der Anwendung). Ändert man z.B. die Reihenfolge in der DB (bei einer Neuinstallation z.B.), funktioniert die ganze Anwendung nicht mehr. Wie gesagt: Ein grundsätzliches Problem, das normalerweise nicht zum Tragen kommt (außer, ein Schwachmat editiert die Lookuptabelle), aber hier würde ich trotzdem noch Prüfungen einbauen und z.B. sicherstellen (per Trigger z.B.) das die Tabelle nicht änderbar ist. Alternativ kann eine solche Tabelle auch ein 'Tag' Element enthalten, das die eigentliche Semantik abbildet. D.h. nicht die ID der Lookuptabelle definiert die Eigenschaft, sondern das Tag-Element. Dieses Element kann nicht verändert werden, aber z.B. der Text, dann ist die Tabelle übersetzbar. Natürlich ist man wieder am Arm, wenn man 'Süß' mit 'Salt' übersetzt... |
AW: DBLookupComboBox ohne Lookup-Tabelle
Zitat:
Zitat:
Zitat:
|
AW: DBLookupComboBox ohne Lookup-Tabelle
Zitat:
Zitat:
|
AW: DBLookupComboBox ohne Lookup-Tabelle
Zitat:
Entweder ich arbeite mit irgendwelchen Nutzdaten, dann sind ID und Text (egal welche Sprache) erstmal wurscht. Konkret, erfindet mein Kunde eine neue Produktgruppe und verwendet diese bei der Anlage neuer Artikel, kann das der DB, der Anwendung und mir egal sein. Oder ich arbeite mit- nennen wir es Anwendungsdaten- deren Werte durch die Businesslogik verwendet werden. Hier hat der Benutzer nichts zu editieren, weil er bestenfalls nichts Neues schafft, eher aber bestehende Zusammenhänge zerstört. Als Entwickler muss man dafür sorgen, dass diese Daten (auch beim Erstellen oder migrieren einer Datenbank) konstant bleiben. Konkret, hat mein Kunde die Gruppe Grillfleisch angelegt, muss er eine weitere Zuordnung dieser neuen Produktgruppe treffen, die entsprechend im System registrierte Regelwerke und Stammdaten für Lebensmittel/(frisch)Fleisch definiert. In diesem Bereich der Anwendungsdaten ID oder Texte zu editieren ist selbst dann sinnlos, wenn alle Zusammenhänge bekannt sind / berücksichtigt werden, da für die neue Daten keine korrespondierenden Regeln im System vorliegen. Was sehr praktisch ist bei dem ganzen Thema: Lookup Daten per View bereitstellen. Damit habe ich einen extra Freiheitsgrad, den ich für unterschiedlichste Zwecke einsetzen kann. |
AW: DBLookupComboBox ohne Lookup-Tabelle
Zitat:
In der Datenbank
Delphi-Quellcode:
Problem ist, wenn Du entweder die CONST-Deklaration oder aber den eintrag in der Lookuptabelle änderst (oder der Kunde).
Const
Gruen=1; ... Case Farbe of Gruen : MalEsGelbAn(); Rot : StampfEsEin(); ...
Zitat:
Zitat:
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz