AW: DBEdit schreibgeschützt?
11. Apr 2016, 20:26
Datenmengen über mehrere Tabellen sind normalerweise schreibgeschützt, da in der Ergebnismenge (also im DataSet) jegliche Information fehlt, welcher Wert aus welcher Tabelle stammt (es steht nur das Ergebnis der Abfrage zur Verfügung). Und damit hat das DataSet keine Chance bei 'ner Wertänderung diese an die "richtige" Stelle zu schreiben.
Wenn Du an dem Ergebnis Änderungen vornehmen willst, bleibt Dir nichts anderes übrig, als für die änderbaren Werte entsprechende Edits zu nutzen und die Änderungen dann per Update (wie von p80286 beschrieben) in die Datenbank zu schreiben. Damit das problemlos funktionieren kann, musst Du aber auch für alle Werte die entsprechenden Datenbankschlüssel mit selektieren. Sind in der Abfrage Summierungen, Gruppierungen ... enthalten, wird das aber auch scheitern.
Zeig' uns mal bitte das Statement, eventuell hat dann ja jemand 'ne Idee, wie Du damit, mit erträglichem, Aufwand umgehen kannst.
Ohne das Statement zu kennen, ist das leider ein bisserl "Stochern im Dunklen".
Die Ergebnismenge kannst Du in 'nem DBGrid mit 'nem Navigator anzeigen. Im AfterScroll-Ereignis des DataSets könntest Du dann die änderbaren Einzelwerte in Edits übertragen.
Änderungen gehen aber nur per Update und werden im DBGrid nicht sichtbar, bis die Abfrage erneut ausgeführt wird.
|