Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Problem with data handling and retrieval

Former Member
0 Likes
513

Hi Guys...

I have problem with my data...

I have an internal table i_crhd, i_mseg and i_afko...

I need to get from i_mseg the data where matnr = i_afko-matnr

and bwart = 102 and 101 for every i_crhd-arbpl and i_afko-plnbez...

After gathering all these data... I need to sum up i_mseg-menge where bwart is 102 and sum up i_mseg-menge where bwart is 101...

then, subtract the summation of i_mseg-menge where bwart is 102 from summation of i_mseg-menge where bwart is 101...

Please help...

Thanks a lot!

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
496

HI,

You can maybe try the following

DATA: i_mseg LIKE mseg OCCURS 0 WITH HEADER LINE,

i_crhd LIKE crhd OCCURS 0,

i_afko LIKE afko OCCURS 0.

DATA: l_sum_101 LIKE mseg-menge,

l_sum_102 LIKE mseg-menge,

l_total LIKE mseg-menge.

RANGES: r_bawrt FOR mseg-bwart.

APPEND: 'IEQ101'TO r_bawrt,

'IEQ102'TO r_bawrt.

SELECT * FROM afko INTO TABLE i_afko.

SELECT * FROM crhd INTO TABLE i_crhd.

SELECT * FROM mseg INTO TABLE i_mseg

FOR ALL ENTRIES IN i_afko

WHERE matnr = i_afko-plnbez

AND bwart IN r_bawrt.

CLEAR: l_sum_101, l_sum_102, l_total.

LOOP AT i_mseg.

CASE i_mseg-bwart.

WHEN '101'.

l_sum_101 = l_sum_101 + i_mseg-menge.

WHEN '102'.

l_sum_102 = l_sum_102 + i_mseg-menge.

WHEN OTHERS.

ENDCASE.

ENDLOOP.

l_total = l_sum_102 - l_sum_101.

Regards

Hi Guys...

I have problem with my data...

I have an internal table i_crhd, i_mseg and i_afko...

I need to get from i_mseg the data where matnr = i_afko-matnr

and bwart = 102 and 101 for every i_crhd-arbpl and i_afko-plnbez...

After gathering all these data... I need to sum up i_mseg-menge where bwart is 102 and sum up i_mseg-menge where bwart is 101...

then, subtract the summation of i_mseg-menge where bwart is 102 from summation of i_mseg-menge where bwart is 101...

Please help...

Thanks a lot!

1 REPLY 1
Read only

Former Member
0 Likes
497

HI,

You can maybe try the following

DATA: i_mseg LIKE mseg OCCURS 0 WITH HEADER LINE,

i_crhd LIKE crhd OCCURS 0,

i_afko LIKE afko OCCURS 0.

DATA: l_sum_101 LIKE mseg-menge,

l_sum_102 LIKE mseg-menge,

l_total LIKE mseg-menge.

RANGES: r_bawrt FOR mseg-bwart.

APPEND: 'IEQ101'TO r_bawrt,

'IEQ102'TO r_bawrt.

SELECT * FROM afko INTO TABLE i_afko.

SELECT * FROM crhd INTO TABLE i_crhd.

SELECT * FROM mseg INTO TABLE i_mseg

FOR ALL ENTRIES IN i_afko

WHERE matnr = i_afko-plnbez

AND bwart IN r_bawrt.

CLEAR: l_sum_101, l_sum_102, l_total.

LOOP AT i_mseg.

CASE i_mseg-bwart.

WHEN '101'.

l_sum_101 = l_sum_101 + i_mseg-menge.

WHEN '102'.

l_sum_102 = l_sum_102 + i_mseg-menge.

WHEN OTHERS.

ENDCASE.

ENDLOOP.

l_total = l_sum_102 - l_sum_101.

Regards