2007 Aug 28 3:59 PM
I have the following code and it seems to work great until the modify statement. After the program executes the statement nothing is modified in the internal table.
START-OF-SELECTION.
SELECT a~vbeln a~vstel a~route a~vsbed b~brgew a~inco1 a~inco2 a~kunnr a~kunag
b~matnr b~meins b~lgmng b~vgbel INTO CORRESPONDING FIELDS OF TABLE it_table
FROM likp AS a
INNER JOIN lips AS b ON b~vbeln = a~vbeln
WHERE a~vstel IN so_vstel
AND a~wadat_ist IN so_wadat
AND b~mtart IN so_mtart.
LOOP AT it_table INTO wa_table.
SELECT SINGLE adrnr FROM vbpa INTO w_adrnr WHERE
vbeln = wa_table-vgbel
AND parvw = 'WE'.
SELECT city1 region post_code1 INTO CORRESPONDING FIELDS OF wa_table
FROM adrc WHERE
addrnumber = w_adrnr.
ENDSELECT.
MODIFY TABLE it_table FROM wa_table.
ENDLOOP.
END-OF-SELECTION.
Regards,
Davis
2007 Aug 28 4:06 PM
<b>data : lv_tabix like sy-tabix.</b>
LOOP AT it_table INTO wa_table.
<b>lv_tabix = sy-tabix.</b>
SELECT SINGLE adrnr FROM vbpa INTO w_adrnr WHERE
vbeln = wa_table-vgbel
AND parvw = 'WE'.
SELECT city1 region post_code1 INTO CORRESPONDING FIELDS OF wa_table
FROM adrc WHERE
addrnumber = w_adrnr.
ENDSELECT.
MODIFY TABLE it_table FROM wa_table <b>index lv_tabix..</b>
ENDLOOP.
Thanks
Mahesh
2007 Aug 28 4:03 PM
Hi,
LOOP AT it_table INTO wa_table.
SELECT SINGLE adrnr FROM vbpa INTO w_adrnr WHERE
vbeln = wa_table-vgbel
AND parvw = 'WE'.
SELECT city1 region post_code1 INTO ( wa_table-city1,wa_table-region, wa_table-post_code1 )
FROM adrc WHERE
addrnumber = w_adrnr.
ENDSELECT.
MODIFY TABLE it_table FROM wa_table.
ENDLOOP.
2007 Aug 28 4:04 PM
after the modification you need to commit to save the changes. look into that.
regards,
srinivas
<b>*reward for useful answers*</b>
2007 Aug 28 4:06 PM
<b>data : lv_tabix like sy-tabix.</b>
LOOP AT it_table INTO wa_table.
<b>lv_tabix = sy-tabix.</b>
SELECT SINGLE adrnr FROM vbpa INTO w_adrnr WHERE
vbeln = wa_table-vgbel
AND parvw = 'WE'.
SELECT city1 region post_code1 INTO CORRESPONDING FIELDS OF wa_table
FROM adrc WHERE
addrnumber = w_adrnr.
ENDSELECT.
MODIFY TABLE it_table FROM wa_table <b>index lv_tabix..</b>
ENDLOOP.
Thanks
Mahesh
2007 Aug 28 4:08 PM
declare one work area as like adrc.
data wa_adrc like adrc.
SELECT avbeln avstel aroute avsbed bbrgew ainco1 ainco2 akunnr a~kunag
bmatnr bmeins blgmng bvgbel INTO CORRESPONDING FIELDS OF TABLE it_table
FROM likp AS a
INNER JOIN lips AS b ON bvbeln = avbeln
WHERE a~vstel IN so_vstel
AND a~wadat_ist IN so_wadat
AND b~mtart IN so_mtart.
LOOP AT it_table INTO wa_table.
clear : wa_adrc.
SELECT SINGLE adrnr FROM vbpa INTO w_adrnr WHERE
vbeln = wa_table-vgbel
AND parvw = 'WE'.
if sy-subrc eq 0.
SELECT single city1 region post_code1 INTO wa_adrc
FROM adrc WHERE
addrnumber = w_adrnr.
if sy-subrc eq 0.
move wa_adrc to wa_table one by one.
endif.
endif.
MODIFY TABLE it_table FROM wa_table.
ENDLOOP.
Thanks
Seshu
2007 Aug 28 4:09 PM
Hi,
For modify the internal table
MODIFY TABLE statement is not needed
LOOP AT it_table INTO wa_table.
v_tabix = sy-tabix. "<<<<<
SELECT SINGLE adrnr FROM vbpa INTO w_adrnr WHERE
vbeln = wa_table-vgbel
AND parvw = 'WE'.
SELECT city1 region post_code1 INTO CORRESPONDING FIELDS OF wa_table
FROM adrc WHERE
addrnumber = w_adrnr.
ENDSELECT.
MODIFY it_table FROM wa_table index v_tabix. "<< Here you are modify the int.table
ENDLOOP.
aRs