‎2009 Oct 27 7:26 AM
Dear gurus.
Im stuck in fetching data i hope you can help me resolve it.
im creating a report that get BANK KEY and the amount transferred to the bank.
the problem im facing is that, it shows multiple result of the same bank wat i want to do is that
if four employees has same bank then the result should be like this
" FETCHING ENTRIES"
1 ABN 50,000
2 ABN 16,000
3 ABN 20,000
4 ABN 30,000
" I WANT THIS RESULT TO BE SHOWN ONLY"
ABN 116,000 " OUT PUT"
Please help me out
regards
Saad Nisar
‎2009 Oct 27 7:27 AM
‎2009 Oct 27 7:27 AM
‎2009 Oct 27 7:28 AM
‎2009 Oct 27 7:29 AM
Use the collect statement
declare another internal table
loop at itab.
move-correspodning itab1 to itab2.
collect itab2.
endloop.
Vikranth
‎2009 Oct 27 7:30 AM
Hi,
First sort the internal table and use the control break statement like AT END OF.
Loop at itab into wa.
At end of bank key.
sum.
endat.
endloop.
Regards
Kannaiah
‎2009 Oct 27 7:37 AM
go with collect statement it will help u..
declare a internal table similar to the internal table of urs..
Loop it_itab into wa_itab
wa_itab1 = wa_itab
collect wa_itab1.
endloop.
the internal table 1 will have ur desired result..
‎2009 Oct 27 8:33 AM
Hi Saad,
You can use SUM statement.
The example program for your requirement. Hope this helps you
TYPES : BEGIN OF ty_data,
bank TYPE string,
value TYPE betrg,
END OF ty_data.
DATA: wa_data TYPE ty_data,
it_data TYPE STANDARD TABLE OF ty_data,
wa_data1 TYPE ty_data,
it_data1 TYPE STANDARD TABLE OF ty_data,
flag TYPE c.
CLEAR wa_data.
wa_data-bank = 'ABN'.
wa_data-value = 50000.
APPEND wa_data TO it_data.
CLEAR wa_data.
wa_data-bank = 'ABN'.
wa_data-value = 16000.
APPEND wa_data TO it_data.
CLEAR wa_data.
wa_data-bank = 'ABN'.
wa_data-value = 20000.
APPEND wa_data TO it_data.
CLEAR wa_data.
wa_data-bank = 'ICICI'.
wa_data-value = 20000.
APPEND wa_data TO it_data.
CLEAR wa_data.
wa_data-bank = 'ABN'.
wa_data-value = 30000.
APPEND wa_data TO it_data.
SORT it_data BY bank.
LOOP AT it_data INTO wa_data.
AT END OF bank.
SUM.
flag = 'X'.
MOVE wa_data TO wa_data1.
ENDAT.
IF flag = 'X'.
APPEND wa_data1 TO it_data1.
ENDIF.
ENDLOOP.
LOOP AT it_data1 INTO wa_data1.
WRITE : wa_data1-bank, wa_data1-value.
WRITE /.
ENDLOOP.
Output :
ABN 116,000.00
ICICI 20,000.00
Hope it is clear. Please revert incase you are not clear.