2009 Mar 02 6:19 AM
hi guru's,
i have 5 fields in ITAB and 3 fields are numeric like below :
ITAB :
MATNR .... UNIT ..... QUANTITY ..... TOT_STOCK ..... BAL_QUANTITY
AAAA .... . NOS ..... 20 ......... 45 ........ 25
AAAA .... . NOS ..... 15 ......... 60 ........ 45
BBBB .... . NOS ..... 50 ......... 45 ........ 05
CCCC .... . KG ..... 15 ......... 60 ........ 45
CCCC .... . KG ..... 10 ......... 30 ........ 20
and i need add QUANTITY, TOT_STOCK and BAL_QUANTITY for same material and have to display single material.
i need final itab like this:
ITAB :
MATNR .... UNIT ..... QUANTITY ..... TOT_STOCK ..... BAL_QUANTITY
AAAA .... . NOS ..... 35 ......... 105 ........ 70
BBBB .... . NOS ..... 50 ......... 45 ........ 05
CCCC .... . NOS ..... 25 ......... 90 ........ 65
can anyone please help me?
regards saurabh.
2009 Mar 02 8:25 AM
Hi,
Try this.
TYPES : BEGIN OF lty_tab,
field1(4) TYPE c,
field2(3) TYPE c,
field3 TYPE i,
field4 TYPE i,
field5 TYPE i,
END OF lty_tab.
DATA : lt_tab1 TYPE TABLE OF lty_tab,
lw_tab1 TYPE lty_tab,
lt_tab2 TYPE TABLE OF lty_tab,
lw_tab2 TYPE lty_tab,
lv_field2(3) TYPE c.
SORT lt_tab1 by field1.
LOOP AT lt_tab1 INTO lw_tab1.
lv_field2 = lw_tab1-field2. "moving to temp variable
AT NEW field1.
SUM.
lw_tab2-field1 = lw_tab1-field1.
lw_tab2-field2 = lv_field2.
lw_tab2-field3 = lw_tab1-field3.
lw_tab2-field4 = lw_tab1-field4.
lw_tab2-field5 = lw_tab1-field5.
APPEND lw_tab2 TO lt_tab2.
ENDAT.
CLEAR: lw_tab1,
lw_tab2,
lv_field2.
ENDLOOP.
Regards,
Roopa
hi guru's,
i have 5 fields in ITAB and 3 fields are numeric like below :
ITAB :
MATNR .... UNIT ..... QUANTITY ..... TOT_STOCK ..... BAL_QUANTITY
AAAA .... . NOS ..... 20 ......... 45 ........ 25
AAAA .... . NOS ..... 15 ......... 60 ........ 45
BBBB .... . NOS ..... 50 ......... 45 ........ 05
CCCC .... . KG ..... 15 ......... 60 ........ 45
CCCC .... . KG ..... 10 ......... 30 ........ 20
and i need add QUANTITY, TOT_STOCK and BAL_QUANTITY for same material and have to display single material.
i need final itab like this:
ITAB :
MATNR .... UNIT ..... QUANTITY ..... TOT_STOCK ..... BAL_QUANTITY
AAAA .... . NOS ..... 35 ......... 105 ........ 70
BBBB .... . NOS ..... 50 ......... 45 ........ 05
CCCC .... . NOS ..... 25 ......... 90 ........ 65
can anyone please help me?
regards saurabh.
2009 Mar 02 6:20 AM
data: itab2 like STANDARD TABLE OF itab WITH HEADER LINE.
loop at itab.
collect itab into itab2." ITAB2 is just like itab
endloop.Edited by: tahir naqqash on Mar 2, 2009 11:30 AM
2009 Mar 02 6:21 AM
Use control break statements.
At end of matnr.
Sum.
.....
endat.
2009 Mar 02 6:21 AM
Hi,
Use keyword:-
AT END OF and use aggregate function SUM to calculate the sum based on the fields as per your requirement.
Regards,
Tarun
2009 Mar 02 6:21 AM
2009 Mar 02 6:25 AM
Hi Saurabh,
You can use :
Loop at itab.
AT END OF Matnr.
Then put-> SUM (Aggregate function) for the quantity field.
ENDAT.
Endloop.
Hope it helps
Regrds
Mansi
2009 Mar 02 6:26 AM
Hi Saurabh,
sort itab1.
loop at itab1.
collect itab1 to itab2.
append itab2.
endloop.
loop at itab2.
write:/ ......
endloop.
Regards,
Mdi.Deeba
2009 Mar 02 6:29 AM
hi,
try this..
use AT NEW ....ENDAT or ATEND.......ENDAT.
like below..
LOOP AT <internal table>.
AT NEW<field name>.
SUM.
WRITE : /43 <internal tablename-field name>.
ENDAT.
AT END OF <field name>.
SUM.
WRITE : /43 <internal tablename-field name>
ENDAT.
hope this help you
Regards
Ritesh J
2009 Mar 02 8:25 AM
Hi,
Try this.
TYPES : BEGIN OF lty_tab,
field1(4) TYPE c,
field2(3) TYPE c,
field3 TYPE i,
field4 TYPE i,
field5 TYPE i,
END OF lty_tab.
DATA : lt_tab1 TYPE TABLE OF lty_tab,
lw_tab1 TYPE lty_tab,
lt_tab2 TYPE TABLE OF lty_tab,
lw_tab2 TYPE lty_tab,
lv_field2(3) TYPE c.
SORT lt_tab1 by field1.
LOOP AT lt_tab1 INTO lw_tab1.
lv_field2 = lw_tab1-field2. "moving to temp variable
AT NEW field1.
SUM.
lw_tab2-field1 = lw_tab1-field1.
lw_tab2-field2 = lv_field2.
lw_tab2-field3 = lw_tab1-field3.
lw_tab2-field4 = lw_tab1-field4.
lw_tab2-field5 = lw_tab1-field5.
APPEND lw_tab2 TO lt_tab2.
ENDAT.
CLEAR: lw_tab1,
lw_tab2,
lv_field2.
ENDLOOP.
Regards,
Roopa
2009 Mar 02 8:37 AM
2009 Mar 02 8:37 AM
2009 Mar 02 9:50 AM
Hi,
Simply
1. Sort the internal table on the basis of matnr
2.then loop at the internal table
AT NEW MATNR
SUM
ENDAT.
will result in the sum of all the numberic based fields.
Hope this might help you.
Pooja
2009 Mar 02 9:55 AM
Hi,
Use control break statements to display as per your requitement.
Regards
Md.MahaboobKhan
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |