Dbgrid editieren



  • Hallo folgendes Problem:
    ich habe eine Query aus 4 Tabellen und ein DBGRID.

    will ich nun in dem Grid das Feld "Preis" ändern und mit dem Navigator bestätigen, kommt es zum Absturz mit der Fehlermeldung: zuwenig Schlüsselinformationen vorhanden ??

    kann jemand helfen?? 😕

    die Query :
    (Select
    Typid,Angebotnr,Warennr,Katid,
    IF (Angebot.Angebot = "1" , "Sonderangebot","") AS Angebot,
    IF (Angebot.Angebot = "2" , "ausverkauft","") AS Ausverkauft,
    Kategorie.Kategorie, Einheit.Typid, Kategorie.Katid,Angebotnr,
    Waren.Name,Einheit.Einheit,Warennr,Angebot.Preis ,
    Angebot.Laden

    from Waren, Kategorie, Einheit, Angebot

    where

    Angebot.Ware = Waren.Warennr AND
    Waren.Kategorie = Kategorie.Katid AND
    Waren.Einheit = Einheit.Typid

    Order By Waren.Name ASC)



  • Du darfst in einem DBGrid (bzw. der zugehörigen Query) nur eine Tabelle ansprechen, wenn du sie editieren und zurückschreiben willst.
    Ansonsten mußt du selber die entsprechenden Update-Befehle ausführen
    (du kannst dafür z.B. die Komponente TUpdateSQL verwenden).



  • ok das wußte ich nicht, jetzt wird in die einzelne Tabelle geschrieben. Diese UPdateSQL finde ich nicht. Dannach ->Requery;

    vielen Dank


Anmelden zum Antworten