Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Änderungen in DBGrid automatisch einsortieren (https://www.delphipraxis.net/66852-aenderungen-dbgrid-automatisch-einsortieren.html)

hsbc 5. Apr 2006 13:50

Datenbank: Firebird • Version: 1.5.3 • Zugriff über: ZEOS

Änderungen in DBGrid automatisch einsortieren
 
Hallo allerseits,

Ich zeige meine Datensätze in einem DBGrid an. Die Datensätze sind nach dem Feld STRASSE sortiert. Funktioniert alles bestens.

Wenn ich jetzt aber eine Strasse im DBGrid ändere und zurückspeichere (über DBNavigator), wird die Änderung zwar durchgeführt, aber nicht automatisch richtig eingereiht. Auch wenn ich ein DBGrid.Refresh oder DBGrid.Update aufrufe, bleibt alles gleich.

Das einzige, was funktioniert ist, dass ich die Tabelle vorübergehend z.B. nach KUNDENNR sortiere und danach wieder nach STRASSE sortiere. Dies ist aber glaube ich eine umständliche Vorgangsweise.

Gibt es da nicht eine einfachere Möglichkeit, dass sofort nach dem Rückspeichern des geänderten Datensatzes dieser richtig in die bestehende Sortierung STRASSE eingereiht wird?

mfg
Herbert

marabu 5. Apr 2006 13:58

Re: Änderungen in DBGrid automatisch einsortieren
 
Hallo Herbert,

hast du schonmal versucht die Query zu refreshen?

Grüße vom marabu

hsbc 5. Apr 2006 14:06

Re: Änderungen in DBGrid automatisch einsortieren
 
Schönen guten Tag, marabu!

Ist schon ärgerlich, dass ich auf das nicht selbst gekommen bin. Natürlich war es das ...

Wieder einmal allerbesten Dank !!!

mfg
Herbert

hsbc 5. Apr 2006 14:52

Re: Änderungen in DBGrid automatisch einsortieren
 
So, jetzt bin ich nochmals da.

Und zwar hätte ich noch gerne, dass der Datensatzzeiger im DBGrid auf dem aktuellen Datensatz bleibt. Nach einem Refresh zeigt er nämlich auf den ersten Datensatz. Gibt es diese Möglichkeit auch noch?

mfg
Herbert

hsbc 5. Apr 2006 15:13

Re: Änderungen in DBGrid automatisch einsortieren
 
Ich glaube, ich habe eine Lösung gefunden:

Im BeforeRefresh speichere ich mir die Position mittels GetBookmark und kehre im AfterRefresh mit GotoBookmark wieder auf die Marke zurück.

Es funktioniert und ich hoffe, dass es keine umständliche Methode ist.

mfg
Herbert

mkinzler 5. Apr 2006 15:14

Re: Änderungen in DBGrid automatisch einsortieren
 
Speichere dir die ID, und mach nach dem Refresh ein Locate darauf.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz