LoeschenVerbuchteAuftraege.p 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. /*------------------------------------------------------------------------------*/
  2. /* Purpose: Super Override */
  3. /* Parameters: */
  4. /* Notes: */
  5. /*------------------------------------------------------------------------------*/
  6. DEFINE VARIABLE ii AS INTEGER NO-UNDO.
  7. DEFINE VARIABLE Firma AS CHARACTER NO-UNDO INIT '1000'.
  8. DISABLE TRIGGERS FOR LOAD OF Aufko .
  9. DISABLE TRIGGERS FOR LOAD OF Aufze .
  10. DISABLE TRIGGERS FOR LOAD OF AufLot .
  11. DISABLE TRIGGERS FOR LOAD OF RuestAuf.
  12. FOR EACH Aufko USE-INDEX Aufko-k1
  13. WHERE Aufko.Firma = Firma
  14. AND Aufko.Fak_Datum <= 12/31/2023 TRANSACTION:
  15. FIND Debst NO-LOCK
  16. WHERE Debst.Firma = Aufko.Firma
  17. AND Debst.Knr = Aufko.Fak_Knr NO-ERROR.
  18. IF NOT AVAILABLE Debst THEN
  19. DO:
  20. FIND Debst NO-LOCK
  21. WHERE Debst.Firma = Aufko.Firma
  22. AND Debst.Knr = Aufko.Knr NO-ERROR.
  23. END.
  24. FOR EACH Aufze OF Aufko:
  25. CREATE Savze.
  26. BUFFER-COPY Aufze TO Savze
  27. ASSIGN Savze.Verbucht = TRUE.
  28. DELETE Aufze.
  29. END.
  30. FOR EACH AufGKon OF Aufko:
  31. DO WHILE TRUE:
  32. IF AufGKon.Depot = 0 THEN LEAVE.
  33. FIND LAST GebKontr NO-LOCK
  34. WHERE GebKontr.Firma = Aufko.Firma
  35. AND GebKontr.Knr = Aufko.Knr NO-ERROR.
  36. IF AVAILABLE GebKontr THEN ii = GebKontr.Trnr + 1.
  37. ELSE ii = 1.
  38. FIND FIRST Wust NO-LOCK USE-INDEX Wust-k2
  39. WHERE Wust.Wucd = AufGKon.MWST_Cd
  40. AND Wust.CodeA < 13
  41. AND Wust.CodeK < 13 NO-ERROR.
  42. FIND LAST MWSTAns NO-LOCK USE-INDEX MWSTAns-k1
  43. WHERE MWSTAns.MWST_Cd = AufGKon.MWST_Cd
  44. AND MWSTAns.Datum <= Aufko.Lief_Datum NO-ERROR.
  45. CREATE GebKontr.
  46. ASSIGN
  47. GebKontr.Firma = Aufko.Firma
  48. GebKontr.Knr = Aufko.Knr
  49. GebKontr.Trnr = ii
  50. GebKontr.Geb_Cd = AufGKon.Geb_Cd
  51. GebKontr.Datum = Aufko.Fak_Datum
  52. GebKontr.Doknr = Aufko.Faknr
  53. GebKontr.Preis = AufGKon.Depot
  54. GebKontr.Eingang = AufGKon.Eingang
  55. GebKontr.Ausgang = AufGKon.Ausgang
  56. GebKontr.MWST_Cd = AufGKon.MWST_Cd
  57. GebKontr.lAbgerechnet = (IF AVAILABLE Debst THEN Debst.Geb_Rg ELSE TRUE).
  58. IF AVAILABLE MWSTAns THEN GebKontr.MWST_% = MWSTAns.Ansatz.
  59. IF AVAILABLE Wust THEN GebKontr.MWST_Inkl = Wust.Incl.
  60. LEAVE.
  61. END.
  62. CREATE SavGKon.
  63. BUFFER-COPY AufGKon TO SavGKon.
  64. DELETE AufGKon.
  65. END.
  66. FOR EACH AufRabSu OF Aufko:
  67. CREATE SavRabSu.
  68. BUFFER-COPY AufRabSu TO SavRabSu.
  69. DELETE AufRabSu.
  70. END.
  71. FOR EACH AufGebKo OF Aufko:
  72. IF AufGebKo.Menge <> 0 THEN
  73. DO:
  74. CREATE SavGebKo.
  75. BUFFER-COPY AufGebKo TO SavGebKo.
  76. END.
  77. DELETE AufGebKo.
  78. END.
  79. FOR EACH AufLot OF Aufko:
  80. CREATE SavLot.
  81. BUFFER-COPY AufLot TO SavLot.
  82. DELETE AufLot.
  83. END.
  84. FOR EACH RuestAuf OF Aufko:
  85. CREATE RuestSav.
  86. BUFFER-COPY RuestAuf TO RuestSav.
  87. DELETE RuestAuf.
  88. END.
  89. FOR EACH AufSpRab USE-INDEX AufSpRab-k1
  90. WHERE AufSpRab.Firma = Aufko.Firma
  91. AND AufSpRab.Aufnr = Aufko.Aufnr:
  92. CREATE SavSpRab.
  93. BUFFER-COPY AufSpRab TO SavSpRab.
  94. DELETE AufSpRab.
  95. END.
  96. CREATE Savko.
  97. BUFFER-COPY Aufko TO Savko
  98. ASSIGN
  99. Savko.Verbucht = TRUE
  100. Savko.Fak_Art = 05
  101. .
  102. DELETE Aufko.
  103. END.
  104. RELEASE Aufko .
  105. RELEASE Aufze .
  106. RELEASE AufGKon .
  107. RELEASE AufRabSu.
  108. RELEASE AufGebKo.
  109. RELEASE AufSpRab.
  110. RELEASE Savko .
  111. RELEASE Savze .
  112. RELEASE SavGKon .
  113. RELEASE SavRabSu.
  114. RELEASE SavGebKo.
  115. RELEASE SavSpRab.