| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- DEF VAR nLiter AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR nDiff AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR iJJ AS INT NO-UNDO.
- DEF VAR iMM AS INT NO-UNDO.
- FOR EACH Savko NO-LOCK
- WHERE Savko.Firma = '1000'
- AND Savko.Fak_Datum >= 01/01/2015:
- FOR EACH Savze
- WHERE Savze.Firma = Savko.Firma
- AND Savze.Aufnr = Savko.Aufnr
- AND Savze.Artnr > 0,
- FIRST KGebinde NO-LOCK
- WHERE KGebinde.Firma = Savze.Firma
- AND KGebinde.Geb_Cd = Savze.KGeb_Cd:
- nLiter = Savze.KGeb_Me * KGebinde.INhalt / 100.
- nDiff = nLiter - Savze.Liter.
- IF nDiff = 0 THEN NEXT.
-
- ASSIGN Savze.Liter = nLiter
- iJJ = YEAR (Savko.Fak_Datum)
- iMM = MONTH(Savko.Fak_Datum).
-
- FIND Artbw OF Savze NO-ERROR.
- IF AVAILABLE Artbw THEN Artbw.Liter = nLiter.
- FIND ArtUms USE-INDEX ArtUms-k1
- WHERE ArtUms.Firma = Savko.Firma
- AND ArtUms.Jahr = iJJ
- AND ArtUms.Artnr = Savze.Artnr
- AND ArtUms.Inhalt = Savze.Inhalt
- AND ArtUms.Jahrg = Savze.Jahr NO-ERROR.
- IF NOT AVAILABLE ArtUms THEN DO:
- CREATE ArtUms.
- ASSIGN ArtUms.Firma = Savko.Firma
- ArtUms.Jahr = iJJ
- ArtUms.Artnr = Savze.Artnr
- ArtUms.Inhalt = Savze.Inhalt
- ArtUms.Jahrg = Savze.Jahr NO-ERROR.
- END.
- ASSIGN ArtUms.Li_Mon[iMM] = ArtUms.Li_Mon[iMM] + nDiff
- ArtUms.Li_Kum = ArtUms.Li_Kum + nDiff.
-
- FIND DeArUms USE-INDEX DeArUms-k1
- WHERE DeArUms.Firma = Savko.Firma
- AND DeArUms.Jahr = iJJ
- AND DeArUms.Knr = Savko.Fak_Knr
- AND DeArUms.Artnr = Savze.Artnr
- AND DeArUms.Inhalt = Savze.Inhalt
- AND DeArUms.Jahrg = Savze.Jahr NO-ERROR.
- IF NOT AVAILABLE DeArUms THEN DO:
- CREATE DeArUms.
- ASSIGN DeArUms.Firma = Savko.Firma
- DeArUms.Jahr = iJJ
- DeArUms.Knr = Savko.Fak_Knr
- DeArUms.Artnr = Savze.Artnr
- DeArUms.Inhalt = Savze.Inhalt
- DeArUms.Jahrg = Savze.Jahr NO-ERROR.
- END.
- ASSIGN DeArUms.Li_Mon[iMM] = DeArUms.Li_Mon[iMM] + nDiff
- DeArUms.Li_Kum = DeArUms.Li_Kum + nDiff.
- END.
- END.
|