Na, da würde ich aber Lookuplisten implementieren, dann musst Du gar nichts mehr im Code ändern. Es gibt viele Ansätze, meiner ist zwar
DB-technisch nicht astrein, aber
imho völlig ausreichend:
Ich habe zwei Listen: LookupLists und LookupListItems
Die LookupLists haben zwei Spalten:
LkID (AutoInc) und LkName. Dort stehen die Lookuplistenbeschreibungen drin, z.B:
- 1 Anrede
2 Status
3 Einheiten
Die LookupListItems besitzen drei Spalten
LiID (AutoInc), lkID und liName. Dort stehen die Ausprägungen drinm z.B.:
- 1 1 Herr
2 1 Frau
3 1 Dr.
4 1 Herr Prof. Dr.
5 2 OK
6 2 Fehler
7 2 Ungültig
8 3 m
9 3 Stk
...
Die Tabelle 'Namen' hat dann Anstelle der Anrede einen int-Wert, wobei 1 für 'Herr', 2 für 'Frau' etc. steht.
Wenn ich die Tabelle 'Namen' nun im Klartext ausgeben will (innerhalb einer view), dann brauch ich kein CASE, sondern nur ein Join über die Spalten 'NameAnrede' und 'liID'.
Die Eingaben kann ich bequem über Lookupcomboboxen machen, wobei das Dataset eben meine LookupListItems gefiltert nach der 'lkID' sind, bei der Anrede eben die '1'.
Vorteil: Nix Codeänderung, nur editieren/erweitern der Lookuplisten und deren Items. Damit ist die Übersetzung in andere Sprachen kein Problem.