DEF VAR DeKto AS CHAR NO-UNDO INIT '1050'. DEF VAR ErKto AS CHAR NO-UNDO INIT '6000'. DEF VAR GeKto AS CHAR NO-UNDO INIT ''. DEF VAR iTrnr AS INT NO-UNDO. DEF VAR Firma AS CHAR NO-UNDO INIT '1000'. DEF VAR Trnr AS INT NO-UNDO. DEF WORKFILE WInterf LIKE Interf. DEF TEMP-TABLE TKontr FIELD Faknr AS INT FIELD Knr AS INT FIELD Fakbetr AS DEC FIELD Intbetr AS DEC FIELD Gebbetr AS DEC FIELD Diff AS DEC FIELD Trnr1 AS INT FIELD Trnr2 AS INT FIELD Herk AS INT FIELD Fakdat AS DATE FIELD Konto AS CHAR FIELD Buchtxt1 AS CHAR FIELD Buchtxt2 AS CHAR. EMPTY TEMP-TABLE TKontr. FOR EACH WInterf. DELETE WInterf. END. CREATE WInterf. FIND SteuNr WHERE SteuNr.Firma = Firma NO-LOCK NO-ERROR. IF SteuNr.Konto_Ertrag <> '' THEN ErKto = SteuNr.Konto_Ertrag. IF GeKto = '' THEN GeKto = SteuNr.Konto_Gebinde. IF GeKto = '' THEN GeKto = SteuNr.Konto_Ertrag . OUTPUT TO 'Interf.txt'. FOR EACH Debfa USE-INDEX Debfa-k3 WHERE Debfa.Firma = Firma AND Debfa.Fakdat >= 08/01/2003 AND Debfa.Fakdat <= 08/31/2003 NO-LOCK: CREATE TKontr. ASSIGN TKontr.Faknr = Debfa.Faknr TKontr.Knr = Debfa.Knr TKontr.Fakbetr = Debfa.Fakbetr TKontr.Trnr1 = Debfa.Trnr1 TKontr.Trnr2 = Debfa.Trnr2 TKontr.Fakdat = Debfa.Fakdat TKontr.Konto = Debfa.Konto. FOR EACH Interf USE-INDEX Interf-k1 WHERE Interf.Firma = Debfa.Firma AND Interf.Trnr1 = Debfa.Trnr1 AND Interf.Trnr2 = Debfa.Trnr2 AND Interf.Kto1 = Debfa.Konto NO-LOCK: TKontr.Intbetr = TKontr.Intbetr + Interf.Betrag. TKontr.Herk = Interf.Herk. IF TKontr.Buchtxt1 = '' THEN DO: ASSIGN TKontr.Buchtxt1 = Interf.Buchtxt1 TKontr.Buchtxt2 = Interf.Buchtxt2. END. END. IF TKontr.Intbetr = 0 THEN DO: ASSIGN TKontr.Buchtxt1 = 'Leergutrücknahme' TKontr.Buchtxt2 = '' TKontr.Herk = 51. END. TKontr.Diff = TKontr.Fakbetr - TKontr.Intbetr. IF TKontr.Diff = 0 THEN NEXT. IF TKontr.Diff >= -0.05 AND TKontr.Diff <= +0.05 THEN DO: FIND LAST Interf USE-INDEX Interf-k1 WHERE Interf.Firma = Debfa.Firma AND Interf.Trnr1 = Debfa.Trnr1 AND Interf.Trnr2 = Debfa.Trnr2 NO-LOCK NO-ERROR. IF AVAILABLE Interf THEN Trnr = Interf.Trnr + 1. ELSE Trnr = 1. CREATE Interf. ASSIGN Interf.Firma = Firma Interf.TrNr1 = Debfa.Trnr1 Interf.TrNr2 = Debfa.Trnr2 Interf.TrNr = Trnr Interf.Kto1 = DeKto Interf.Kto2 = ErKto Interf.Herk = TKontr.Herk Interf.Datum = Debfa.Fakdat Interf.Buchtxt1 = 'Rundungsdifferenzen' Interf.Buchtxt2 = '' Interf.Betrag = TKontr.Diff Interf.Betrag_Frw = TKontr.Diff Interf.FRW = Debfa.FRW Interf.Faktor = Debfa.Faktor Interf.Kurs = Debfa.Kurs Interf.Verbucht = FALSE Interf.Faknr = STRING(Debfa.Faknr,"9999999") Interf.Knr = Debfa.Knr Interf.MWST_Nr = "" Interf.MWST_Cd = 0 Interf.HKFirma = Firma. TKontr.Intbetr = TKontr.Intbetr + TKontr.Diff. TKontr.Diff = 0. EXPORT DELIMITER ';' Interf. NEXT. END. FOR EACH Savko USE-INDEX Savko-k6 WHERE Savko.Firma = Debfa.Firma AND Savko.Knr = Debfa.Knr AND Savko.Faknr = Debfa.Faknr NO-LOCK, EACH SavGKon OF Savko NO-LOCK: TKontr.Gebbetr = TKontr.Gebbetr + SavGKon.Betrag. END. IF TKontr.Gebbetr = 0 THEN TKontr.Gebbetr = TKontr.Diff. TKontr.Diff = TKontr.Diff - TKontr.Gebbetr. IF TKontr.Diff = 0 THEN NEXT. FIND LAST Interf USE-INDEX Interf-k1 WHERE Interf.Firma = Debfa.Firma AND Interf.Trnr1 = Debfa.Trnr1 AND Interf.Trnr2 = Debfa.Trnr2 NO-LOCK NO-ERROR. IF AVAILABLE Interf THEN Trnr = Interf.Trnr + 1. ELSE Trnr = 1. CREATE Interf. ASSIGN Interf.Firma = Firma Interf.TrNr1 = Debfa.Trnr1 Interf.TrNr2 = Debfa.Trnr2 Interf.TrNr = Trnr Interf.Kto1 = DeKto Interf.Kto2 = ErKto Interf.Herk = TKontr.Herk Interf.Datum = Debfa.Fakdat Interf.Buchtxt1 = 'Rundungsdifferenzen' Interf.Buchtxt2 = '' Interf.Betrag = TKontr.Diff Interf.Betrag_Frw = TKontr.Diff Interf.FRW = Debfa.FRW Interf.Faktor = Debfa.Faktor Interf.Kurs = Debfa.Kurs Interf.Verbucht = FALSE Interf.Faknr = STRING(Debfa.Faknr,"9999999") Interf.Knr = Debfa.Knr Interf.MWST_Nr = "" Interf.MWST_Cd = 0 Interf.HKFirma = Firma. TKontr.Intbetr = TKontr.Intbetr + TKontr.Diff. TKontr.Diff = 0. EXPORT DELIMITER ';' Interf. END. FOR EACH TKontr WHERE TKontr.Gebbetr <> 0 BY TKontr.Faknr. FIND LAST Interf USE-INDEX Interf-k1 WHERE Interf.Firma = Firma AND Interf.Trnr1 = TKontr.Trnr1 AND Interf.Trnr2 = TKontr.Trnr2 NO-LOCK NO-ERROR. IF AVAILABLE Interf THEN Trnr = Interf.Trnr + 1. ELSE Trnr = 1. CREATE Interf. ASSIGN Interf.Firma = Firma Interf.TrNr1 = TKontr.Trnr1 Interf.TrNr2 = TKontr.Trnr2 Interf.TrNr = Trnr Interf.Kto1 = DeKto Interf.Kto2 = GeKto Interf.Herk = TKontr.Herk Interf.Datum = TKontr.Fakdat Interf.Buchtxt1 = TKontr.Buchtxt1 Interf.Buchtxt2 = TKontr.Buchtxt2 Interf.Betrag = TKontr.Gebbetr Interf.Betrag_Frw = TKontr.Gebbetr Interf.FRW = 'CHF' Interf.Faktor = 1 Interf.Kurs = 1.0000 Interf.Verbucht = FALSE Interf.Faknr = STRING(TKontr.Faknr,"9999999") Interf.Knr = TKontr.Knr Interf.MWST_Nr = "" Interf.MWST_Cd = 0 Interf.HKFirma = Firma. TKontr.Intbetr = TKontr.Intbetr + TKontr.Diff. TKontr.Diff = 0. EXPORT DELIMITER ';' Interf. END. OUTPUT CLOSE.