‎2009 Jul 22 3:14 AM
Hi
Modify statement is not working in below code.
Data is moved from i_headertext-bktxt TO i_output_tab-text.
Kindly help me out
SELECT mblnr mjahr bktxt FROM mkpf
INTO CORRESPONDING FIELDS OF TABLE i_headertext
FOR ALL ENTRIES IN i_stock
WHERE mblnr EQ i_stock-mblnr
and mjahr EQ i_stock-mjahr.
if sy-subrc = 0.
loop at I_stock.
READ TABLE i_headertext WITH KEY mblnr = i_stock-mblnr
mjahr = i_stock-mjahr.
MOVE: i_headertext-bktxt TO i_output_tab-text.
modify table i_output_tab TRANSPORTING text .
endloop.
Endif.Thanks
Kumar
‎2009 Jul 22 3:23 AM
Hi Kumar,
try this way
Thanks
Venkat.OIF NOT i_stock[] IS INITIAL. "You must use this check. bcoz if u dont have values in i_stock, it gives dump.
SELECT mblnr mjahr bktxt FROM mkpf
INTO CORRESPONDING FIELDS OF TABLE i_headertext
FOR ALL ENTRIES IN i_stock
WHERE mblnr EQ i_stock-mblnr
AND mjahr EQ i_stock-mjahr.
IF sy-subrc = 0.
LOOP AT i_stock.
READ TABLE i_headertext WITH KEY mblnr = i_stock-mblnr
mjahr = i_stock-mjahr.
MOVE: i_headertext-bktxt TO i_output_tab-text.
MODIFY TABLE i_output_tab TRANSPORTING text .
ENDLOOP.
ENDIF.
ENDIF.
‎2009 Jul 22 3:23 AM
Hi Kumar,
try this way
Thanks
Venkat.OIF NOT i_stock[] IS INITIAL. "You must use this check. bcoz if u dont have values in i_stock, it gives dump.
SELECT mblnr mjahr bktxt FROM mkpf
INTO CORRESPONDING FIELDS OF TABLE i_headertext
FOR ALL ENTRIES IN i_stock
WHERE mblnr EQ i_stock-mblnr
AND mjahr EQ i_stock-mjahr.
IF sy-subrc = 0.
LOOP AT i_stock.
READ TABLE i_headertext WITH KEY mblnr = i_stock-mblnr
mjahr = i_stock-mjahr.
MOVE: i_headertext-bktxt TO i_output_tab-text.
MODIFY TABLE i_output_tab TRANSPORTING text .
ENDLOOP.
ENDIF.
ENDIF.
‎2009 Jul 22 3:29 AM
Hi Kumar, Sorry Kumar, You have not specified on which criteria you are modifying I_output_tab table. Thanks Venkat.O
‎2009 Jul 22 3:33 AM
Hi Venkat
i_stock[] table having entries. But modify is not working
‎2009 Jul 22 3:43 AM
‎2009 Jul 22 3:46 AM
Hi Kumar,
<li> Text for which field ?
<li>Can you paste fields of i_output_tab table?
<li>You need to know which record needs to be modified? we are just trying to modify TEXT of i_ouput_tab table. What are the other fields.
Thanks
Venkat
MOVE: i_headertext-bktxt TO i_output_tab-text.
MODIFY TABLE i_output_tab TRANSPORTING text .
‎2009 Jul 22 3:49 AM
Hi Kumar,
How one can provide code without knowing requirement?
You have to give piece of code which is not working so that somebody can suggest some changes. We do not know how you are populating Output table.
Please do not repeat same thing again.
Thanks & Regards,
Anil Salekar
‎2009 Jul 22 3:53 AM
Hi Venkat
below is i_output_tab structure
BEGIN OF i_output_tab OCCURS 0,
invdate LIKE mseg-vfdat,
kokrs LIKE mseg-kokrs,
matnr LIKE mseg-matnr,
werks LIKE mseg-werks,
lgort LIKE mseg-lgort,
invnum(10) TYPE c,
partner(30) TYPE c,
address LIKE adrc-street,
lot LIKE mseg-charg,
sled LIKE mseg-vfdat,
rcpt LIKE mseg-erfmg,
sales LIKE vbrp-fkimg,
others LIKE mseg-erfmg,
text LIKE MKPF-BKTXT,
END OF i_output_tab.I wanetd to modify text field.
‎2009 Jul 22 4:13 AM
Kumar,
<li>add two fields to i_output_tab table like below.
<li>Change modifying logic below.
begin of i_output_tab occurs 0,
mblnr like mseg-mblnr, "Define this
mjahr like mseg-mjahr, "Define this
invdate like mseg-vfdat,
kokrs like mseg-kokrs,
matnr like mseg-matnr,
werks like mseg-werks,
lgort like mseg-lgort,
invnum(10) type c,
partner(30) type c,
address like adrc-street,
lot like mseg-charg,
sled like mseg-vfdat,
rcpt like mseg-erfmg,
sales like vbrp-fkimg,
others like mseg-erfmg,
text like mkpf-bktxt,
end of i_output_tab.
Let me know if you have any problem.
Thanks
Venkat.O
IF NOT i_stock[] IS INITIAL.
SELECT mblnr mjahr bktxt FROM mkpf
INTO CORRESPONDING FIELDS OF TABLE i_headertext
FOR ALL ENTRIES IN i_stock
WHERE mblnr EQ i_stock-mblnr
AND mjahr EQ i_stock-mjahr.
IF sy-subrc = 0.
LOOP AT i_headertext.
LOOP AT i_output_tab WHERE mblnr = i_headertext-mblnr AND mjahr = i_headertext-mjahr.
MOVE: i_headertext-bktxt TO i_output_tab-text.
MODIFY i_output_tab INDEX sy-tabix TRANSPORTING text.
ENDLOOP.
ENDLOOP.
ENDIF.
ENDIF.
‎2009 Jul 22 4:15 AM
‎2009 Jul 22 3:27 AM
Hi Kumar,
SELECT mblnr mjahr bktxt FROM mkpf
INTO CORRESPONDING FIELDS OF TABLE i_headertext
FOR ALL ENTRIES IN i_stock
WHERE mblnr EQ i_stock-mblnr
and mjahr EQ i_stock-mjahr.
if sy-subrc = 0.
loop at I_stock.
READ TABLE i_headertext WITH KEY mblnr = i_stock-mblnr
mjahr = i_stock-mjahr.
MOVE: i_headertext-bktxt TO i_output_tab-text.
modify table i_output_tab TRANSPORTING text .
endloop.
Endif.
As per your above code, you have not specified any criteria to modify I_OUTPUT_TAB. Either you have to give Index or give WHERE clause. Are you looping on I_OUTPUT_TAB? If that is the case, then it should modify current row.
Give your required part of code, so that I can try to give you solution.
Thanks & Regards,
Anil Salekar