Einzelnen Beitrag anzeigen

Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#1

Label, Editfeld und DBlookupListbox

  Alt 23. Jan 2003, 12:54
Hi,

folgendes Problem (es geht um 2 Tables : Artikel und Warengruppen) : Ich habe hier ein Label, ein Editfeld, sowie eine Listbox. Folgendes soll gemacht werden : Nach Eingabe der Art.Nr. soll das Label mit der Warengruppe des Artikels beschriftet werden und die Nr. soll als Vorgabewert im Editfeld stehen. Sobald dieses betreten wird, soll die Box aufgehen.

Code:
  ArtDS.Active := false;
  ArtDs.SelectSQL.Text := 'SELECT * FROM ART8 WHERE NR = ' +   ArtNrEdit.Text;
  ArtDS.Active := true;
  WGDS.active := false;
  WGDS.SelectSQL.Text := 'SELECT * FROM WG8 WHERE ID = :ID_WG';
  WGDS.active := true;
  Label3.Caption := WGDS.FieldByName ('BEZ').value;
  Edit1.Text := WGDS.FieldByName ('NR').value;
Das da geht nicht : "Invalid Variant conversion". Das liegt an dem ID = :ID. Wie macht man das denn jetzt richtig? Aus Der Warengruppen-Table soll die Bez. der WG gesucht werden, deren ID gleich der ID_WG des Artikels ist.

Um überhaupt etwas zu sehen, habe ich das :ID_WG durch einen statischen Wert ersetzt. Dann läuft alles richtig. Dann noch etwas mit der Box. Wie gesagt, soll diese nur sichtbar sein, falls sich der Cursor in dem EditFeld befindet. Setze ich sie aber in dem Edit1Exit enabled und visible auf false, dann kann ich mit der Maus ja keinen Eintrag mehr auswählen, da ich zu diesem Zweck ja das Feld verlassen muß. Ich brauche also ein Unterscheidungsmerkmal, ob ich mich in dem Feld der WG-Nr. befinde, in der Listbox oder woanders (nur in diesem Fall dürfte dann visible und enabled auf false gesetzt werden). Wer weiß was dazu ?

Gruß
Hansa
  Mit Zitat antworten Zitat