![]() |
Datenbank: Oracle • Version: 9i • Zugriff über: BDE
Datensätze in DBGrid
Hallo zusammen!
Ich arbeite mit einem DBGrid. Während einer Session können in diesem Grid beliebig viele Datensätze geändert werden. Der commit an die DB erfolgt erst, wenn der Benutzer die Session mit OK bestätigt. Soweit so gut. Es gibt während der Session eine Funktion, welche das kopieren eines Datensatzes ermöglicht um einen Ursprungsbetrag auf mehrere Sätze aufzuteilen. Es gibt also bspw. in Datensatz 1 einen Ursprungsbetrag von 100. Dieser Betrag wird reduziert auf 80. Anschliessend wird der Datensatz kopiert und im kopierten Satz darf nun max 20 im Feld Betrag eingegeben werden. Es muss gewährleistet sein, dass der Ursprungsbetrag nie überschritten werden darf. Die zusammenhängenden Datensätze werden über ein Feld "parent" identifiziert, in dem die ID des ersten Satzes steht. Ein Satz kann n mal kopiert werden. Wenn ich nun auf den Ursprungsbetrag prüfen will kann ich das nicht per SQL-Summenfunktion tun, da alles in einer Session passiert und die Datensätze noch nicht commited sind. Ich muss somit die Datenmenge des Grids durchsuchen und die hier eingetragenen und zusammengehörigen Beträge summmieren. Wie kann ich das tun, ohne das sich die Selektion im Grid bewegt? Bei jedem "next" auf das Dataset ändert sich die Selektion im Grid und das sieht nicht besonders gut aus! Jemand eine Idee? |
Re: Datensätze in DBGrid
Hallo oldie74,
das geht über DisableControls und EnableControl. |
Re: Datensätze in DBGrid
Vielen Dank, werde ich ausprobieren!
|
Re: Datensätze in DBGrid
Hallo Olli,
ein kleiner Nachtrag noch: Herzlich willkommen im Delphi-PRAXIS Forum. Mir ist gerade erst aufgefallen, dass das oben ja dein erstes Posting war. :hello: |
Re: Datensätze in DBGrid
Zitat:
Die solltest du aber sowieso nicht verwenden. Nimm vernünftige Komponenten. Hat nur Vorteile: Geschwindigkeit, keine Einschränkungen bei komplizierten SQLs, BLOBs werden vernünftig unterstützt, etc. |
Re: Datensätze in DBGrid
Zitat:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:48 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