Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi DBGrid.Field.Value mit Daten einer Tabelle vergleichen? (https://www.delphipraxis.net/69995-dbgrid-field-value-mit-daten-einer-tabelle-vergleichen.html)

Loki77 23. Mai 2006 13:27

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
Also mal zur Erklärung:
Ich erstelle im DBGrid einen Datensatz durch eine SQL-Abfrage mehrerer Tabelle.
Wenn der Anwender auf eine Zeile des DBGrid doppel-klickt werden diese Daten in eine Tabelle
geschrieben.
Nun möchte ich beim nächsten mal dem Anwender zeigen dass der Datensatz schon existiert wenn
er "einfach" darauf klickt.
Also muss ich prüfen ob der Wert in DBGrid.Column[0] bereits in meiner Tabelle existiert.

Angel4585 23. Mai 2006 14:19

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
du erstellt in das DBGrid mehrere Tabellen durch ne SQL-Abfrage? :gruebel: kannst du mal den Code dazu posten? das würd mich jetz ma interesseieren a)wie du das machst und b) ob ich einfach nur aufm Schlauch steh.

mkinzler 23. Mai 2006 17:49

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
Wenn du eine Abfrage über mehrere tabellen hast kannst du trotzdem mit
Delphi-Quellcode:
Query.FieldByName(<feldname>).Value
drauf zugreifen.

Angel4585 24. Mai 2006 08:27

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
Zitat:

Zitat von mkinzler
Wenn du eine Abfrage über mehrere tabellen hast kannst du trotzdem mit
Delphi-Quellcode:
Query.FieldByName(<feldname>).Value
drauf zugreifen.

Ich weis jetz nich ob das bei Paradox auch so ist, aber wenn ich mehrere Tabellen über ein Join verknüpfe und in jeder der Tabellen z.B. das Feld "ID" drin ist, wird daraus - zumindest bei MySQL - "ID", "ID_1", "ID_2" ... also falls das der Fall ist bissi auf sowas achten :zwinker:

Loki77 24. Mai 2006 08:30

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
Zitat:

du erstellt in das DBGrid mehrere Tabellen durch ne SQL-Abfrage?
Nein,Ich erstelle aus mehreren Tabellen (join) einen Datensatz.
Zitat:

Ich erstelle im DBGrid einen Datensatz durch eine SQL-Abfrage mehrerer Tabelle.
Der Vergleich funktioniert auch, aber nur für den ersten eintrag meiner Vergleichstabelle.
Hab schon ´ne menge Möglichkeiten durch diese Datensätze zu durchlaufen, aber
es funktioniert nicht so wie ich will....

Loki77 24. Mai 2006 09:03

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
Hallo!
Hier mal ´n bisschen Code:
Delphi-Quellcode:
procedure TForm1.DBGrid6ColEnter(Sender: TObject);
var
i : integer;
begin
  SpeedButton3.Enabled := true;
  SpeedButton4.Enabled := true;
  tblCheck.First;
  while not tblCheck.eof do
  begin
    if tblCheck.FindKey([DBGrid6.Columns[0].Field.Value]) then
      Label10.Color := clGreen
    else
      Label10.Color := clMaroon;
    tblCheck.next;
  end;
Wenn ich einen zweiten Datensatz anklicke der in meiner Vergleichs-Tabelle steht
hängts sich das Prog (in ner Schleife?) auf.

marabu 24. Mai 2006 09:18

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
Hallo Philipp,

das wird damit zusammenhängen, dass deine Prüfroutine zu häufig und überlappend aufgerufen wird. Nimm die Prüftabelle doch in deinen Join auf und wenn du willst färbe gleich die ganze Zeile im Ereignis OnDrawColumnCell(). Nach Übernahme eines Schlüssels in die Tabelle durch DblClick musst du dann nur deinen Join erneuern.

Grüße vom marabu

Loki77 24. Mai 2006 09:24

Re: DBGrid.Field.Value mit Daten einer Tabelle vergleichen?
 
Klingt nach ´ner guten Idee!
Werd´mich mal daranmachen und es versuchen.
Vielen Dank, Philipp


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:26 Uhr.
Seite 2 von 2     12   

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