locate keine aktualisierung



  • seid einigen Tagen versuche ichmein Programm fertig zu machen.
    einen bug bekomme ich nicht raus.

    unter __fastcall TKartei::TKartei(TComponent* Owner)
    : TForm(Owner)

    steht unter anderem folgender source

    .....

    select =  " Select Patnr,Link,Name,Vorname,geburt,scandat,Zuordnung,Klinik,id,ersteldat ";
    	select += " from Dokumente";
    	select += " where Patnr = :kolo" ;
    	select += " Order By ersteldat DESC";
    
    	ADOQuery1 ->Open();
    	ADOQuery1 ->Edit();
    	ADOQuery1 ->SQL->Clear();
    	ADOQuery1 ->SQL->Add(select);
    	ADOQuery1 ->Open();
    	ADOQuery1 ->Parameters->ParamByName("kolo")->Value = PatDat(laufwerk1);
    	ADOQuery1 ->Requery();
    	pat1 = ADOQuery1->FieldByName("patnr")->AsString;
    	ADOTableAPW->Open();
    
    		   TLocateOptions Opts;
    		   Opts.Clear();
    		   Opts << loPartialKey;
    		   ADOTableAPW->Locate("Patnr",pat1, Opts);
    	Label1->Caption = ADOTableAPW->FieldByName("patnr")->AsString;
    

    obwohl die Ausgabe im Label1 stimmt werden meine DBListBox als auch die DBTextfelder nicht aktualisiert.

    Ich habe nun eine Button eingebaut der nochmal die Locate Funktion ausführt -> dann gehts ist aber sehr sehr unsportlich.

    Was mach ich falsch? 😕

    /Edit akari : Bitte Code-Tags benutzen! sfds



  • Verwende TForm::OnShow statt den Konstruktor für die Abfrage,
    da noch nicht alle Komponenten initialisiert sind.



  • super vielen Dank das wars ! und so simpel.
    🙂


Anmelden zum Antworten