‎2008 Dec 04 6:46 AM
I have a internal table in which has 3 fields, out of which 2 are filled. Now I want to insert some value in field 1 which is not filled.
I tried using
Loop at itab into wa_itab.
wa_itab-filed1 = 'test'.
modify itab from wa_itab.
endloop.
but still nothing is happening. I even used INSERT command but without any result.
‎2008 Dec 04 6:48 AM
Hi,
Refer below code
IF NOT it_crmm_territory[] IS INITIAL.
LOOP AT it_crmm_territory INTO wa_crmm_territory.
l_index = sy-tabix.
CLEAR : wa_crmm_territory_v.
READ TABLE it_crmm_territory_v INTO wa_crmm_territory_v WITH KEY terr_guid = wa_crmm_territory-terr_guid.
IF sy-subrc EQ 0.
wa_crmm_territory-valid_from = wa_crmm_territory_v-valid_from.
wa_crmm_territory-valid_to = wa_crmm_territory_v-valid_to.
wa_crmm_territory-guid = wa_crmm_territory_v-guid.
ENDIF.
MODIFY it_crmm_territory FROM wa_crmm_territory INDEX l_index
TRANSPORTING guid valid_from valid_to.
CLEAR : wa_crmm_territory.
ENDLOOP.
ENDIF.
Regards,
Prashant
‎2008 Dec 04 6:48 AM
Hi,
You can also use fieldsymbols. That will be better.
Check this
TYPES : BEGIN OF ty,
val1 TYPE char10,
val2 TYPE char10,
val3 TYPE char10,
END OF ty.
DATA : itab TYPE TABLE OF ty,
wa TYPE ty.
FIELD-SYMBOLS : <fs> TYPE ty.
wa-val2 = 'BB'.
wa-val3 = 'CC'.
APPEND wa TO itab.
APPEND wa TO itab.
LOOP AT itab ASSIGNING <fs>.
<fs>-val1 = 'AA'.
ENDLOOP.Regards
Edited by: Rajvansh Ravi on Dec 4, 2008 7:52 AM
‎2008 Dec 04 6:49 AM
hi,
try using this:
Loop at itab into wa_itab.
wa_itab-filed1 = 'test'.
modify itab from wa_itab index sy-tabix.
endloop.
i hope it helps
regards
arjun
‎2008 Dec 04 6:55 AM
Hi Priya,
Try the below code
DATA : BEGIN OF itab OCCURS 0,
c1 TYPE i,
c2 TYPE i,
c3 TYPE i,
END OF itab.
itab-c1 = 10.
itab-c2 = 20.
APPEND itab.
CLEAR itab.
itab-c1 = 100.
itab-c2 = 200.
APPEND itab.
CLEAR itab.
itab-c1 = 1000.
itab-c2 = 2000.
APPEND itab.
CLEAR itab.
LOOP AT itab.
itab-c3 = 30.
MODIFY itab INDEX sy-tabix.
write 😕 itab-c1, itab-c2, itab-c3.
ENDLOOP.
Regards
Ramchander Rao.K
‎2008 Dec 04 6:57 AM
DATA :
BEGIN OF fs_tab,
a TYPE i,
b TYPE i,
c TYPE i,
END OF fs_tab.
DATA :
t_temp LIKE
STANDARD TABLE
OF fs_tab.
DO 5 TIMES.
CLEAR fs_tab.
fs_tab-a = sy-index.
fs_tab-b = sy-index ** 2.
APPEND fs_tab TO t_temp.
ENDDO.
LOOP AT t_temp INTO fs_tab.
WRITE :
/ fs_tab-a ,
20 fs_tab-c ,
40 fs_tab-b.
ENDLOOP.
LOOP AT t_temp INTO fs_tab .
fs_tab-c = 100.
MODIFY t_temp FROM fs_tab TRANSPORTING c WHERE a = fs_tab-a AND b = fs_tab-b .
ENDLOOP.
SKIP 5.
LOOP AT t_temp INTO fs_tab.
WRITE :
/ fs_tab-a ,
20 fs_tab-c ,
40 fs_tab-b.
ENDLOOP.
‎2008 Dec 04 7:03 AM
Hi,
You can try this.
Loop at itab into wa_itab.
lw_index = lw_index + 1.
wa_itab-filed1 = 'test'.
modify itab INDEX lw_index from wa_itab transporting feild1.
endloop.
‎2008 Dec 04 8:56 AM
Please check this example,
TABLES: LFA1.
DATA: BEGIN OF WA_ITAB,
FIELD1 TYPE LFA1-LIFNR,
FIELD2 TYPE LFA1-NAME1,
FIELD3 TYPE LFA1-LAND1,
END OF WA_ITAB.
DATA: ITAB LIKE TABLE OF WA_ITAB.
WA_ITAB-FIELD1 = 'A1'.
WA_ITAB-FIELD2 = 'A2'.
APPEND WA_ITAB TO ITAB.
LOOP at itab INTO WA_ITAB.
WRITE:/ WA_ITAB-FIELD1, WA_ITAB-FIELD2.
ENDLOOP.
WA_ITAB-FIELD3 = 'A3'.
APPEND WA_ITAB TO ITAB.
MODIFY ITAB INDEX 1 FROM WA_ITAB.
LOOP at itab INTO WA_ITAB.
WRITE:/3 WA_ITAB-FIELD1, 5 WA_ITAB-FIELD2, 7 WA_ITAB-FIELD3.
ENDLOOP.
Regards,
BBR.