![]() |
Re: Zeilen editieren und updaten
@shmia,
Danke für Deinen Tipp. Der Grundgedanke war (also eine zusätzliche Bedingung) die "leeren" Edit-Felder neben die änderbaren DBEdit-Felder zu platzieren, um dem Anwender die Möglichkeit zu geben, die Auswirkungen seiner Änderungen vor dem posten zu zeigen (z.B. in berechnenden Edit-Feldern, die aber nicht mitgepostet werden). Wenn ich Forms verwende, würde ich mir meinen Design-Aufbau versauen, da ich bislang mit DOCKPanels arbeite. Zur Not würde ich dies jedoch in Kauf nehmen. Gibt es eine Möglichkeit, die Daten aus den Edit-Feldern, in denen Einträge gemacht wurden, in einer Hilfstabelle zu speichern und vor Aktualisierung der query (also Wiederaufruf des Panels) in die betroffenen tables einzulesen? - Hab mal was von memtables und stored procedures gelesen, aber nicht im geringsten verstanden und daher auch keine Idee, ob das ein Ansatz wäre. VG Emilio |
Re: Zeilen editieren und updaten
Du kannst natürlich alle Daten aus deiner "9-Table-Query" in ein Memory-Dataset kopieren.
Memory-Datasets gibt's hier: ![]() Die berechneten Felder werden nun eben dem Memory-Dataset hinzugefügt. Du kannst steuern (meist Property FieldDefs), ob ein Feld read-only ist. So könnte der Benutzer direkt Preise und/oder Stückzahlen ändern und würde auf Knopfdruck (memorydataset.Post) die Auswirkungen auf die berechneten Felder sehen. Am Ende hast du folgende Möglichkeiten: * nix tun * prüfen, ob Benutzer Änderungen an Memory-Dataset vorgenommen hat und Hinweis anzeigen * prüfen, was der Benutzer geändert hat. Satz für Satz vergleichen Memory-Dataset <->Orginal Dataset Je nach Feld wird dann eine UPDATE-Anweisung durchgeführt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:36 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-2025 by Thomas Breitkreuz