Code: Alles auswählen.
Partner Vertrag ... .... .... Belegnr
A1234 V1234 KAF-132456780001
A1234 V1234 KAF-132456780002
A1234 V2345 KAF-456755990001
A1234 V4568 RDT-456855960001
.
.
.
Code: Alles auswählen.
LOOP AT itab INTO wa_itab.
AT NEW vtref.
CLEAR counter.
ENDAT.
IF wa_itab-blnr(12) NE itab-blnr(12).
counter = counter + 1.
IF counter LE 20.
DELETE itab index sy-tabix.
ENDIF.
ENDIF.
ENDLOOP.
Du merkst dir ja gar nicht den vergleichswert?!TobiB hat geschrieben:hi Thomas,
des wär ne möglichkeit.
würd des aber schon gern mit nem loop lösen, da ich des noch für n paar andre auswertungen brauch.
meine tabelle sieht so ausso und es sollen nur die Verträge angezeigt werden bei denen mind 20 unterschiedliche Belegnr vorhanden sind. 0001,0002 etc sagen was über die Belegart aus sind aber unintressant, da die Belegnr ansich bei denen indentisch is, bis halt auf den Laufindex.Code: Alles auswählen.
Partner Vertrag ... .... .... Belegnr A1234 V1234 KAF-132456780001 A1234 V1234 KAF-132456780002 A1234 V2345 KAF-456755990001 A1234 V4568 RDT-456855960001 . . .
so hier mal mein loop
Code: Alles auswählen.
LOOP AT itab INTO wa_itab. AT NEW vtref. CLEAR counter. ENDAT. IF wa_itab-blnr(12) NE itab-blnr(12). counter = counter + 1. IF counter LE 20. DELETE itab index sy-tabix. ENDIF. ENDIF. ENDLOOP.
Code: Alles auswählen.
LOOP AT itab INTO wa_itab.
AT NEW vtref.
lf_merkblnr = wa_itab-blnr.
CLEAR counter.
ENDAT.
IF wa_itab-blnr(12) EQ lf_merkblnr(12).
counter = counter + 1.
append wa_itab to gt_merktab.
ENDIF.
AT LAST OF vtref.
IF counter LE 20.
DELETE itab from gt_merktab.
ENDIF.
ENDAT.
ENDLOOP.
Der Delete Befehl funktioniert möglicherweise nicht auf ältere Systeme. In dem Fall musste über die eine tabelle loopen und satz für satz aus itab löschen.TobiB hat geschrieben:ich danke, man merkt halt doch dass ich ABAP erst seit 3 monaten mach.
werd des gleich mal testen, denk aber dass des funtzen wird