Autor Beitrag
sunday_2
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 101


Delphi 7.0
BeitragVerfasst: Di 19.11.02 13:28 
Hi Leute,

Ich habe folgendes Prob:

Ich habe ein DBGrid welches mir mit einem Query
Daten ausgibt. select distinct speichername  as Öffnen_der_Konfiguration from Event

Wie Ihr seht, gibt es in Speichername mehrere gleiche Einträge, die jedoch nur einmal angezeigt werden. Ich möchte nun, das der User ein Feld anklickt (z.B. Obi Nr 2) und der Cursor in der Tabelle auf den ersten Datensatz springt der im Feld Speichername den Eintrag 'Obi Nr 2' hat.

Ick krieg dat irchendtie net offe Kette :shock:

_________________
Gruß Sunday

... wer nicht fragt, bleibt dumm!!!
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Di 19.11.02 13:47 
Hi
sunday_2 hat folgendes geschrieben:

Ich möchte nun, das der User ein Feld anklickt (z.B. Obi Nr 2) und der Cursor in der Tabelle auf den ersten Datensatz springt der im Feld Speichername den Eintrag 'Obi Nr 2' hat.

In welcher Tabelle? Ist das ne zweite Tabelle mit den Gesamtdaten oder meinst du damit die Query?

Wenn du damit die Query meinst: Geht net.
Wenn du ne zweite Tabelle meinst und der Eintrag indiziert ist, könntest du FindFirst um auf dem ersten Eintrag zu positionieren.
Dritte Möglichkeit wäre, mit einer zweiten Query nur die Datensätze mit dem entsprechenden Eintrag zu lesen.

Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
sunday_2 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 101


Delphi 7.0
BeitragVerfasst: Di 19.11.02 15:25 
Hi Lothar,

ich versuche grade deine dritte Variante.
Zitat:

Dritte Möglichkeit wäre, mit einer zweiten Query nur die Datensätze mit dem entsprechenden Eintrag zu lesen.

Leider klappt das nicht. Im Query habe ich geschrieben:
ausblenden Quelltext
1:
2:
Select * from Event 
where (speichername = '''+dbg_oeffnen.SelectedField.Text+''')

Im Quellcode dann
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
Query2.Active:=true;
              Query2.First;
              for i:=1 to 23 do
              for j:= 1 to 9 do
              begin
                 tormatrix[i,j].Name := Query2.FieldByName('Feldname').asString;
                 temp := Query2.FieldByName('Farbe').asString;
                 tormatrix[i,j].Color := MColor[StrToInt(temp)];
                 Query2.Next;
              end;

Es funktioniert aber nicht. Als Fehlermeldung sagt er mir "Keine gültige Integervariable. Das sagt mir, das das Query nicht gefüllt wird.
Was mach ich falsch???

_________________
Gruß Sunday

... wer nicht fragt, bleibt dumm!!!
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Di 19.11.02 15:39 
Hi
hast du die SQL-Anweisung für Query2 direkt so wie sie da steht im Objektinspektor eingetragen? Dann kanns allerdings net funktionieren.

Schreib die SQL mal so:
ausblenden Quelltext
1:
Select * from Event where (speichername = :Auswahl)					


und dann im Code:
ausblenden Quelltext
1:
2:
3:
Query2.ParamByName(Auswahl).Value := dbg_oeffnen.SelectedField.Text;
Query2.Active:=true; 
 usw...


Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
sunday_2 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 101


Delphi 7.0
BeitragVerfasst: Di 19.11.02 16:51 
Hi Lothar,

hat super geklappt. Vielen Dank! :P

_________________
Gruß Sunday

... wer nicht fragt, bleibt dumm!!!