11-19-2008 6:29 AM
Hello experts,
My code is like below....
Loop at itab into wa.
at new WERKS.
SUM.
-
-
-
endat.
endloop.
Our CLNT standards doesn't allow to use keyword SUM.
any alternative solution for kewword SUM ?
pls provide suggestions..........
Thanks in adavnce.
Zak.
11-19-2008 6:33 AM
You can directly add the values into new variable.
like : lv_sum = lv_sum + wa-<f1> .
11-19-2008 6:31 AM
11-19-2008 6:33 AM
You can directly add the values into new variable.
like : lv_sum = lv_sum + wa-<f1> .
11-19-2008 6:55 AM
REPORT ZSRK_068 .
DATA : BEGIN OF ITAB OCCURS 0,
WERKS LIKE MARC-WERKS,
MTART LIKE MARA-MTART,
F1 TYPE I,
END OF ITAB.
DATA : L_SUM TYPE I,
FLAG.
DATA : ITAB1 LIKE ITAB OCCURS 0 WITH HEADER LINE.
ITAB-WERKS = '1000'.
ITAB-MTART = 'XYX'.
ITAB-F1 = 5.
APPEND ITAB.
CLEAR ITAB.
ITAB-WERKS = '1000'.
ITAB-MTART = 'XXX'.
ITAB-F1 = 10.
APPEND ITAB.
CLEAR ITAB.
ITAB-WERKS = '2000'.
ITAB-MTART = 'XXY'.
ITAB-F1 = 4.
APPEND ITAB.
CLEAR ITAB.
ITAB-WERKS = '3000'.
ITAB-MTART = 'XYX'.
ITAB-F1 = 2.
APPEND ITAB.
CLEAR ITAB.
ITAB-WERKS = '3000'.
ITAB-MTART = 'YYY'.
ITAB-F1 = 6.
APPEND ITAB.
CLEAR ITAB.
ITAB-WERKS = '3000'.
ITAB-MTART = 'ZZZ'.
ITAB-F1 = 1.
APPEND ITAB.
CLEAR ITAB.
SORT ITAB BY WERKS.
LOOP AT ITAB.
L_SUM = L_SUM + ITAB-F1.
AT END OF WERKS.
FLAG = 'X'.
ENDAT.
IF FLAG EQ 'X'.
ITAB-F1 = L_SUM.
MODIFY ITAB TRANSPORTING F1
WHERE WERKS EQ ITAB-WERKS.
CLEAR : FLAG , L_SUM.
ENDIF.
CLEAR ITAB.
ENDLOOP.
LOOP AT ITAB.
WRITE : / ITAB-WERKS , ITAB-MTART, ITAB-F1.
ENDLOOP.