DEF VAR nNetto AS DEC NO-UNDO. DEF VAR nMwst AS DEC NO-UNDO. DEF VAR JJ AS INT NO-UNDO. DEF VAR MM AS INT NO-UNDO. DEF TEMP-TABLE tDeArUms LIKE DeArUms. FOR EACH Savko NO-LOCK WHERE Savko.Firma = '1000' AND Savko.Fak_Dat >= 01/01/2017: ASSIGN JJ = YEAR (Savko.Fak_Datum) MM = MONTH(Savko.Fak_Datum). FOR EACH Savze NO-LOCK WHERE Savze.Firma = Savko.Firma AND Savze.Aufnr = Savko.Aufnr AND Savze.Artnr > 0: nNetto = Savze.Net_Betr - Savze.Auf_Rab - Savze.Abh_Rab - Savze.Auf_Sp_Rab. IF Savze.Mwst_Inkl THEN nMwst = nNetto * Savze.Mwst% / (100 + Savze.Mwst%). ELSE nMwst = 0. nNetto = nNetto - nMwst. FIND FIRST tDeArUms WHERE tDeArUms.Firma = Savze.Firma AND tDeArUms.Jahr = JJ AND tDeArUms.Knr = Savko.Fak_Knr AND tDeArUms.Artnr = Savze.Artnr AND tDeArUms.Inhalt = Savze.Inhalt AND tDeArUms.Jahrg = Savze.Jahr NO-ERROR. IF NOT AVAILABLE tDeArUms THEN DO: CREATE tDeArUms. ASSIGN tDeArUms.Firma = Savze.Firma tDeArUms.Jahr = JJ tDeArUms.Knr = Savko.Fak_Knr tDeArUms.Artnr = Savze.Artnr tDeArUms.Inhalt = Savze.Inhalt tDeArUms.Jahrg = Savze.Jahr. END. ASSIGN tDeArUms.Me_Mon[MM] = tDeArUms.Me_Mon[MM] + Savze.MGel tDeArUms.Ep_Mon[MM] = tDeArUms.Ep_Mon[MM] + (Savze.MGel * Savze.Ep) tDeArUms.VP_Mon[MM] = tDeArUms.VP_Mon[MM] + nNetto tDeArUms.Li_Mon[MM] = tDeArUms.Li_Mon[MM] + Savze.Liter. ASSIGN tDeArUms.Me_Kum = tDeArUms.Me_Kum + Savze.MGel tDeArUms.Ep_Kum = tDeArUms.Ep_Kum + (Savze.MGel * Savze.Ep) tDeArUms.VP_Kum = tDeArUms.VP_Kum + nNetto tDeArUms.Li_Kum = tDeArUms.Li_Kum + Savze.Liter. END. END. FOR EACH tDeArUms BREAK BY tDeArUms.Firma BY tDeArUms.Jahr BY tDeArUms.Knr: IF FIRST-OF ( tDeArUms.Knr ) THEN DO: FOR EACH DeArUms WHERE DeArUms.Firma = tDeArUms.Firma AND DeArUms.Jahr = tDeArUms.Jahr AND DeArUms.Knr = tDeArUms.Knr: DELETE DeArUms. END. END. CREATE DeArUms. BUFFER-COPY tDeArUms TO DeArUms. END.