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

filling data into same itab based on condition.

Former Member
0 Likes
604

hi to all

my problem is that i have a itab which has matner and mtart now i want to post the stock in the same itab .my query is as below

data : begin of it5 occurs 0,

matnrfg like stpox-idnrk,

matnrsf like stpox-idnrk,

mtart like stpox-mtart,

labst like mard-labst,

lbkum like mbew-lbkum,

labst_final like mard-labst,

end of it5.

if t_stb1-mtart = 'HALB'.

move t_stb1-idnrk to it5-matnrsf.

append it5.

SELECT labst FROM mard INTO

corresponding fields of table it5

WHERE matnr = it5-matnrsf and

lgort = 'A400'.

SELECT lbkum FROM mbew INTO

corresponding fields of table it5

WHERE matnr = it5-matnrsf.

it5-labst_final = it5-lbkum - it5-labst.

but it is not working can anybody help ,it is urgent plz .pointe will be rewarded

Message was edited by:

sarabjit kaur

1 ACCEPTED SOLUTION
Read only

former_member194669
Active Contributor
0 Likes
579

Hi,

Check this


data : begin of it5 occurs 0,
matnrfg like stpox-idnrk,
matnrsf like stpox-idnrk,
mtart like stpox-mtart,
labst like mard-labst,
lbkum like mbew-lbkum,
labst_final like mard-labst,
end of it5.

if t_stb1-mtart = 'HALB'.

move t_stb1-idnrk to it5-matnrsf.

append it5.

data : v_labst like mard-labst.
data : v_lbkum like mbew-lbkum.

SELECT single labst FROM mard INTO v_labst
WHERE matnr = it5-matnrsf and
lgort = 'A400'.

it5-labst = v_labst.


SELECT single lbkum FROM mbew INTO v_lbkum
WHERE matnr = it5-matnrsf.

it5-lbkum = v_lbkum.


it5-labst_final = it5-lbkum - it5-labst.

aRs

5 REPLIES 5
Read only

former_member194669
Active Contributor
0 Likes
580

Hi,

Check this


data : begin of it5 occurs 0,
matnrfg like stpox-idnrk,
matnrsf like stpox-idnrk,
mtart like stpox-mtart,
labst like mard-labst,
lbkum like mbew-lbkum,
labst_final like mard-labst,
end of it5.

if t_stb1-mtart = 'HALB'.

move t_stb1-idnrk to it5-matnrsf.

append it5.

data : v_labst like mard-labst.
data : v_lbkum like mbew-lbkum.

SELECT single labst FROM mard INTO v_labst
WHERE matnr = it5-matnrsf and
lgort = 'A400'.

it5-labst = v_labst.


SELECT single lbkum FROM mbew INTO v_lbkum
WHERE matnr = it5-matnrsf.

it5-lbkum = v_lbkum.


it5-labst_final = it5-lbkum - it5-labst.

aRs

Read only

Former Member
0 Likes
579

Hi,

First when u first time use corresponding it will insert records itab. So that after that u have to use modiify table sysntax everytime when u enter or modify data of table.

Rewars points if it is useful.

Read only

Former Member
0 Likes
579

hi ars, thanx for prompt reply ,but now my record is in itab header how to move it in table as i need to clear itab .for next execution.

Read only

0 Likes
579

Hi,

Create a temperory table as same as IT5 as IT5_temp.


data : begin of it5 occurs 0,
matnrfg like stpox-idnrk,
matnrsf like stpox-idnrk,
mtart like stpox-mtart,
labst like mard-labst,
lbkum like mbew-lbkum,
labst_final like mard-labst,
end of it5.

data : begin of it5_temp occurs 0,
matnrfg like stpox-idnrk,
matnrsf like stpox-idnrk,
mtart like stpox-mtart,
labst like mard-labst,
lbkum like mbew-lbkum,
labst_final like mard-labst,
end of it5_temp.

 
if t_stb1-mtart = 'HALB'.
 
move t_stb1-idnrk to it5-matnrsf.
 
append it5.
 
data : v_labst like mard-labst.
data : v_lbkum like mbew-lbkum.
 
SELECT single labst FROM mard INTO v_labst
WHERE matnr = it5-matnrsf and
lgort = 'A400'.
 
it5-labst = v_labst.
 
 
SELECT single lbkum FROM mbew INTO v_lbkum
WHERE matnr = it5-matnrsf.
 
it5-lbkum = v_lbkum.
 
 
it5-labst_final = it5-lbkum - it5-labst.
move it5 to it5_temp.
append it5_temp.
clear it5.       "<<<<<<<< clear it5

All further needs you can use it5_temp.

a®

Read only

0 Likes
579

thanx a lot ,awarded you full points