| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- DEF VAR dvonDatum AS DATE INIT 01/01/2020. /* Altes Inventardatum */
- DEF VAR dbisDatum AS DATE INIT 05/01/2020. /* Neues Inventardatum */
- DEF TEMP-TABLE tArtst
- FIELD Firma AS CHAR
- FIELD Artnr AS INT
- FIELD Inhalt AS INT
- FIELD Jahr AS INT
- FIELD Inventar AS DEC
- FIELD Eingang AS DEC
- FIELD Ausgang AS DEC
- FIELD Bestand AS DEC
-
- INDEX tArtst-k1 IS PRIMARY
- Firma
- Artnr
- Inhalt
- Jahr.
-
- FOR EACH ArtLager
- WHERE ArtLager.Firma = '1000'
- AND ArtLager.Datum_Inv = dvonDatum:
- CREATE tArtst.
- BUFFER-COPY ArtLager
- USING Firma Artnr Inhalt Jahr
- TO tArtst.
- END.
- FOR EACH tArtst:
- FIND Artst NO-LOCK OF tArtst.
- IF NOT Artst.Aktiv THEN NEXT.
-
- FOR EACH Artbw NO-LOCK USE-INDEX Artbw-k2
- WHERE Artbw.Firma = Artst.Firma
- AND Artbw.Artnr = Artst.Artnr
- AND Artbw.Inhalt = Artst.Inhalt
- AND Artbw.Jahr = Artst.Jahr
- AND Artbw.Lag_Buch = TRUE
- AND Artbw.Lager = 0
- AND Artbw.Datum >= dvonDatum
- AND Artbw.Datum <= (dbisDatum - 1):
-
- DO WHILE TRUE:
- IF Artbw.Tr_Art < 11 THEN DO:
- tArtst.Ausgang = tArtst.Ausgang + Artbw.Menge.
- LEAVE.
- END.
- IF Artbw.Tr_Art < 21 THEN DO:
- tArtst.Eingang = tArtst.Eingang + Artbw.Menge.
- LEAVE.
- END.
- tArtst.Inventar = tArtst.Inventar + Artbw.Menge.
- LEAVE.
- END.
- END.
- END.
- FOR EACH tArtst:
- FIND ArtLager
- WHERE ArtLager.Firma = tArtst.Firma
- AND ArtLager.Artnr = tArtst.Artnr
- AND ArtLager.Inhalt = tArtst.Inhalt
- AND ArtLager.Jahr = tArtst.Jahr
- AND ArtLager.Lager = 0.
- ASSIGN ArtLager.Datum_Inv = dbisDatum
- ArtLager.Bestand_alt = tArtst.Inventar + tArtst.Eingang - tArtst.Ausgang
- ArtLager.Bestand = 0.
- END.
|