30. November 2007 15:25
30. November 2007 15:56
30. November 2007 16:07
30. November 2007 16:13
Umsatz.RESET;
Karneval.RESET // War vielleicht ein Filter darauf? Dann besser RESET
Karneval.DELETEALL;
COMMIT; // Ist das wirklich notwendig? Sonst besser raus.
IF Umsatz.FINDSET(FALSE) THEN // FINDSET statt FIND('-')
REPEAT
IF Karneval.GET(Umsatz.ZNAME, Umsatz.ZARTIKEL, Umsatz.JAHR) THEN BEGIN
Karneval.UMSATZ += Umsatz.UMSATZBETRAG_Netto; // Kurzschreibweise, wers mag
Karneval.MODIFY;
END ELSE BEGIN
Karneval.ZNAME := Umsatz.ZNAME;
Karneval.ZARTIKEL := Umsatz.ZARTIKEL;
Karneval.ZJAHR := Umsatz.JAHR;
Karneval.INSERT;
END;
UNTIL Umsatz.NEXT = 0; //Standardschreibweise, nicht <= 0
30. November 2007 16:30
30. November 2007 16:36
30. November 2007 16:43
30. November 2007 16:48
Umsatz.RESET;
Karneval.RESET;
Karneval.DELETEALL;
COMMIT;
IF Umsatz.FINDSET(FALSE) THEN
REPEAT
IF Karneval.GET(Umsatz.ZNAME, Umsatz.ZARTIKEL, Umsatz.JAHR) THEN BEGIN
Karneval.UMSATZ += Umsatz.UMSATZBETRAG_Netto;
Karneval.MODIFY;
END ELSE BEGIN
Karneval.ZNAME := Umsatz.ZNAME;
Karneval.ZARTIKEL := Umsatz.ZARTIKEL;
Karneval.ZJAHR := Umsatz.JAHR;
Karneval.UMSATZ := Umsatz.UMSATZBETRAG_Netto; // <-- Diese Zeile fehlte
Karneval.INSERT;
END;
UNTIL Umsatz.NEXT = 0;
30. November 2007 16:54
30. November 2007 16:59
30. November 2007 17:17
Natalie hat geschrieben:Trotzdem, bei Karneval.RESET und Karneval.DELETEALL kann man sich das Karneval.GET sparen, das kann dann ja gar nicht eintreten und verursacht nur unnötige Datenbankzugriffe (und zwar genauso viele wie es Umsatz-Datensätze gibt).
30. November 2007 17:26