InventarKorrektur.p 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. DEF VAR nBestand AS DEC NO-UNDO.
  2. DEF VAR nInventar AS DEC NO-UNDO.
  3. DEF VAR iTrnr AS INT NO-UNDO.
  4. FOR EACH Artst
  5. WHERE Artst.Firma = '1000'
  6. AND Artst.Lager = TRUE:
  7. nBestand = 0.
  8. nInventar = 0.
  9. iTrnr = 0.
  10. FOR EACH Artbw NO-LOCK
  11. WHERE Artbw.Firma = Artst.Firma
  12. AND Artbw.Artnr = Artst.Artnr
  13. AND Artbw.Inhalt = Artst.Inhalt
  14. AND Artbw.Jahr = Artst.Jahr
  15. AND Artbw.Tr_Art = 21
  16. AND Artbw.Datum = 01/01/2018 :
  17. nBestand = nBestand + Artbw.Menge.
  18. nInventar = nInventar + Artbw.Menge.
  19. IF Artbw.Trnr > iTrnr THEN iTrnr = Artbw.Trnr.
  20. END.
  21. FOR EACH Artbw NO-LOCK
  22. WHERE Artbw.Firma = Artst.Firma
  23. AND Artbw.Artnr = Artst.Artnr
  24. AND Artbw.Inhalt = Artst.Inhalt
  25. AND Artbw.Jahr = Artst.Jahr
  26. AND Artbw.Tr_Art < 21
  27. AND Artbw.Datum >= 01/01/2018
  28. AND Artbw.Datum < 01/01/2019
  29. AND Artbw.Trnr > iTrnr
  30. AND Artbw.Lag_Buch = TRUE:
  31. IF Artbw.Tr_Art < 10 THEN nBestand = nBestand - Artbw.Menge.
  32. ELSE nBestand = nBestand + Artbw.Menge.
  33. END.
  34. FIND ArtLager
  35. WHERE ArtLager.Firma = Artst.Firma
  36. AND ArtLager.Artnr = Artst.Artnr
  37. AND ArtLager.Inhalt = Artst.Inhalt
  38. AND ArtLager.Jahr = Artst.Jahr
  39. AND ArtLager.Lager = 0.
  40. ASSIGN ArtLager.Datum_Inv = 01/01/2019
  41. ArtLager.Bestand_Alt = nBestand
  42. ArtLager.Inv_Alt = nInventar.
  43. END.
  44. FOR EACH Artbw
  45. WHERE Artbw.Firma = '1000'
  46. AND Artbw.Tr_Art = 14
  47. AND Artbw.Datum = 12/31/2018:
  48. DELETE Artbw.
  49. END.
  50. /*
  51. FOR EACH Aufko NO-LOCK
  52. WHERE Aufko.FIrma = '1000',
  53. EACH Aufze NO-LOCK
  54. WHERE Aufze.Firma = Aufko.Firma
  55. AND Aufze.Aufnr = Aufko.Aufnr
  56. AND Aufze.Artnr > 0:
  57. FIND Artbw OF Aufze.
  58. Artbw.Datum = Aufko.Lief_Datum.
  59. END.
  60. */