Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Zwei Werte in ein DB Feld eintragen lassen... (https://www.delphipraxis.net/15463-zwei-werte-ein-db-feld-eintragen-lassen.html)

LuckyStrike4life 29. Jan 2004 11:59


Zwei Werte in ein DB Feld eintragen lassen...
 
Morgen,

ich bin mir nicht so sicher ob das so einfach funktionieren wird, vielleicht muss noch n Zwischenstück eingebaut werden. Als Beispiel ein Feld (vielleicht normales TEdit), wo beide Werte aus den anderen zwei Feldern eingetragen werden. Automatisch, versteht sich - allerdings darf der Wert A den Wert B nicht überschreiben, sondern es muss Wert A und B in das Feld geschrieben werden.

Am Ende muss der Spaß dann in ein Feld einer DB.

Hintergrund,
eine Tabelle mit zwei Spalten, Namen und den jeweiligen Nummern, existiert.

Name und Nummer brauch ich in einer anderen DB als ein Wert, da mehrere verschiedene Namen in ein und demselben Datensatz müsssen. Daher können die Nummern nicht in ein zweites Feld dahinter, jenes wäre zu unübersichtlich. Ihr versteht mich.

Momentan siehts so aus,
ich hab ne DBLookupCombobox, diese schaut in die existierende DB auf die Spalte Namen. Automatisch wird in ein Editfeld dazu die jeweilige Nummer ausgegeben.

Jetzt kann ich also einmal den Text der DBLookupCombobox abgreifen und das Editfeld mit den Nummern.
Und jetzt komm ich nicht weiter ;).

Robert_G 29. Jan 2004 12:20

Re: Zwei Werte in ein DB Feld eintragen lassen...
 
Ich kann hier nur aus meiner Erfahrung sprechen:
Diese "hier_eine_Spalte_mit_mehreren_Spalten_dort_linken "-Vorgehensweise endet zwangsläufig irgendwann darin, dass du der Tabelle mit 1 Spalte doch die zusätzliche spendierst.
Und natürlich alle deine Programme umschreiben musst.

Die Unübersichtlichkeit von der du redest existiert nur bei direkten Abfragen auf die Tabelle. Das sollte außer dir eigentlich keiner machen, oder?
Und Basteleien à la ...
SQL-Code:
WHERE a.Feld1 = b.Feld3||' - '||b.Feld4
... finde ich sehr unübersichtlich.

Das ist jetzt kein Meckern -> Überlege dir einfach wie du besser weg kommst...

mfG Robert

LuckyStrike4life 29. Jan 2004 13:01

Re: Zwei Werte in ein DB Feld eintragen lassen...
 
Leider nein,

ich wollte eigentlich nicht so weit ausholen, dass ganze ist schon relevant.

Abfragen auf die DBs macht jeder User, natürlich unbewusst.

Es handelt sich immer noch um das Dienstreisebuch, wenn nun ein Antrag eingetragen wurde - und noch nicht abgelehnt oder bestätigt, dann können weitere Leute sich diesem Antrag zum "Wegfahren" anschließen.

Unbegrenzt viele, wichtig ist aber das diese nicht nur mit den Namen erwähnt werden, sondern auch ihr Laufzeichen angegeben ist. Angenommen in einem Antrag tragen sich noch vier weitere Leute ein, die DB würde mit deiner zwei Spalten Lösung dann so aussehen:

Delphi-Quellcode:
            Spalte Namen                               Spalte LZ
Person1 // Person2 // Person 3 // Person4 ||| SN P1 // SN P2  // SN P3 // SN P4
Das wäre noch übersichtlich genug, aber es muss auch durch die Druckfunktion, dort verwende ich, für so lange Felder, Zeilenumbrüche. Dann müsste man schon auszählen zu wlecher Person welches LZ gehört, und es können auch 50 Leute einen Datensatz belegen wollen - ist ein Extremfall, aber 8 Leute keine Seltenheit.

LuckyStrike4life 29. Jan 2004 13:23

Re: Zwei Werte in ein DB Feld eintragen lassen...
 
Ich habs!

Eigentlich ganz einfach, hab mal n wenig probiert:
Delphi-Quellcode:
Name.text:=userSortQuery['Name']+userSortQuery['LZ'];
Funktioniert, und dann stehts zusammen in dem Editfeld "Name", welches ich einfach abgreife und in die DB stelle.

Geht doch :-D .


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:24 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 by Thomas Breitkreuz