Code: Alles auswählen.
CLEAR it_tab.
SELECT vbeln poart drerz posnr FROM jkap INTO
CORRESPONDING FIELDS OF TABLE it_tab
WHERE drerz IN s_drerz
AND poart IN ('PP','NP')
AND gueltigbis GE p_sttag.
wie kann ich mir da die Anzahl ausgeben lassen? mit sy-tabix geht es nicht.
liebe grüße
coco
Code: Alles auswählen.
CLEAR it_tab.
SELECT COUNT( * ) kunnr vbeln poart drerz posnr FROM jkap INTO
CORRESPONDING FIELDS OF TABLE it_tab
WHERE drerz IN s_drerz
AND poart IN ('PP','NP')
AND gueltigbis GE p_sttag
GROUP BY kunnr.
Die Hilfe zu Group bitte selber lesen.Aus der Hilfe zu COUNT(*)
COUNT( * ) (oder count(*)) bestimmt die Anzahl der Zeilen der Ergebnismenge bzw. der aktuellen Gruppe. In diesem Fall wird kein Spaltenbezeichner angegeben.
Code: Alles auswählen.
LOOP AT it_tab INTO wa_tab.
CLEAR wa_tabzwei.
SELECT * FROM jkpa INTO CORRESPONDING FIELDS OF wa_tabzwei
WHERE gpnr = wa_tab-gpnr
AND jparvw = 'RE'
AND posnr = '000001'.
APPEND wa_tabzwei TO it_tabzwei.
ENDSELECT.
ENDLOOP.
Hier hole ich mir zuerst einmal alle Geschäftspartner, die jparvw = Rechnungsempfänger sind und die Positionsnummer ...1 haben.
SORT it_tabzwei BY gpnr.
LOOP AT it_tabzwei INTO wa_tabzwei.
wa_tabzweibuf = wa_tabzwei.
AT END OF gpnr.
wa_tabzweibuf-anz_ges = anz_ges.
MODIFY it_tabzwei FROM wa_tabzweibuf.
ENDAT.
anz_ges = anz_ges + 1.
ENDLOOP.
hier loope ich über meine interne Tabelle und sortiere die GPNR. aber das Problem ist, er gibt mir die Anzahl der Schleifenduchläufe aus. Ist zwar verständlich aber wie soll ich es denn sonst lösen?