Announcement

Collapse
No announcement yet.

abfrage wird nach onchange unbefriedigend ausgeführt

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • abfrage wird nach onchange unbefriedigend ausgeführt

    hallo,

    folgendes problem:

    auf einem formular sind zwei panels und ein grid in dem kundendaten angezeigt werden. ich habe auf panel1 eine generelle sortiermöglichkeit geschaffen, indem das onchange-ereignis einer combobox ausgewertet wird und die daten im grid via sql neu sortiert angezeigt werden:

    DM1.DM1.IBKundenDS.Active:=False;
    DM1.DM1.IBKundenDS.SelectSQL.Clear;
    DM1.DM1.IBKundenDS.SelectSQL.Text:='SELECT * FROM kunden ORDER BY name';
    DM1.DM1.IBKundenDS.Active:=True;

    diese hat bisher problemlos funktioniert.

    auf panel2 habe ich nun eine weitere sortiermöglichkeit geschaffen indem ich das onchange-ereignis eines edit-feldes auswerte und die namen der kunden nach eingabe eines jeden buchstabens filtere:

    DM1.DM1.IBKundenDS.Active:=False;
    DM1.DM1.IBKundenDS.SelectSQL.Clear;
    DM1.DM1.IBKundenDS.SelectSQL.Text:='SELECT * FROM kunden where upper(name) LIKE '''+Edit1.Text+'%'+''' ORDER BY name';
    DM1.DM1.IBKundenDS.Active:=True;

    seit dieser zweiten möglichkeit funktioniert die erste leider nicht mehr (es wird zwar angezeigt, dass die sql-abfrage ausgeführt wird, die datenanzeige ändert sich aber nicht - es macht fast den eindruck, als wenn die zweite möglichkeit immer alle anderen "überschreibt") und ich erkenne trotzt einiger versuche nicht die ursach dafür.

    hat da jemand eine gute idee???

    hartmut

  • #2
    hallo,

    hab' die antwort nach einigen tagen schlafloser nächte selbst gefunden: es kommt auf die reiehnfolge an, in der die felder, die ein onchange-ereignis haben, gefüllt werden...

    hartmu

    Comment

    Working...
    X