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

Dynamic internal tables using field symbols

Former Member
0 Likes
2,983

Hello,

Is it possible to create a dynamic table where the no of fields in the internal table can be created dynamically(using field symbols).

Say sometimes internal tables with 10 fields and depending upon the requirement the fields can be dynamically increased or decreased in runtime.

Thanks.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,298

Hi,

it is possible.

please refer to this link.there u can find examples.

http://www.sap-img.com/ab030.htm

rgds,

bharat.

Hello,

Is it possible to create a dynamic table where the no of fields in the internal table can be created dynamically(using field symbols).

Say sometimes internal tables with 10 fields and depending upon the requirement the fields can be dynamically increased or decreased in runtime.

Thanks.

4 REPLIES 4
Read only

Former Member
0 Likes
1,299

Hi,

it is possible.

please refer to this link.there u can find examples.

http://www.sap-img.com/ab030.htm

rgds,

bharat.

Read only

Former Member
0 Likes
1,298

Hi Hemaraaja,

Have a look at below weblog for DYNAMIC INTERNAL TABLE:

/people/ravikumar.allampallam/blog/2005/05/31/expand-the-list-of-columns-in-a-report-dynamically

/people/subramanian.venkateswaran2/blog/2004/11/19/dynamic-internal-table

/people/rich.heilman2/blog/2005/07/27/dynamic-internal-tables-and-structures--abap

/people/subramanian.venkateswaran2/blog/2004/11/19/dynamic-internal-table%3Fpage%3Dlast%26x-showcontent%3Doff

http://www.sap-img.com/ab030.htm

/people/rich.heilman2/blog/2005/07/27/dynamic-internal-tables-and-structures--abap

http://searchsap.techtarget.com/tip/1,289483,sid21_gci912390,00.html

It gives you info abt how to create dynamic internal table.

<REMOVED BY MODERATOR>

Manish

Edited by: Alvaro Tejada Galindo on Apr 14, 2008 1:46 PM

Read only

Former Member
0 Likes
1,298

Hi,

Go through the following code....


*Data definitions
*** Tables
data: lt_data type ref to data.
data: lt_fieldcatalog type lvc_t_fcat.

*** Structure
data: ls_fieldcatalog type lvc_s_fcat.

*** Data References
data: new_line type ref to data,
      fs_data type ref to data.

*** Field Symbols
field-symbols: <fs_data> type ref to data,
               <fs_1> type any table,
               <fs_2>,
               <fs_3>.

*Populating the internal table with fieldnames required for our dynamic
*internal table

ls_fieldcatalog-fieldname = 'MANDT'.
append ls_fieldcatalog to lt_fieldcatalog.

ls_fieldcatalog-fieldname = 'CARRID'. "Fieldname
ls_fieldcatalog-inttype = 'C'. "Internal Type C-> Character
append ls_fieldcatalog to lt_fieldcatalog.

ls_fieldcatalog-fieldname = 'CONNID'.
ls_fieldcatalog-inttype = 'N'.
append ls_fieldcatalog to lt_fieldcatalog.

ls_fieldcatalog-fieldname = 'FLDATE'.
ls_fieldcatalog-inttype = 'D'.
append ls_fieldcatalog to lt_fieldcatalog.

ls_fieldcatalog-fieldname = 'PRICE'.
ls_fieldcatalog-inttype = 'P'.
append ls_fieldcatalog to lt_fieldcatalog.

ls_fieldcatalog-fieldname = 'CURRENCY'.
ls_fieldcatalog-inttype = 'C'.
append ls_fieldcatalog to lt_fieldcatalog.

*Calling the method CREATE_DYNAMIC_TABLE
call method cl_alv_table_create=>create_dynamic_table
     exporting
       it_fieldcatalog = lt_fieldcatalog
     importing
       ep_table = fs_data
     exceptions
       generate_subpool_dir_full = 1
       others = 2
		.
if sy-subrc <> 0.
endif.

*Assigning Field-Symbol to our dynamic internal table
assign lt_data to <fs_data>.


*Internal Table is ready, now to put data in that table
*** So <FS_1> now points to our dynamic internal table.

assign fs_data->* to <fs_1>.


*** Next step is to create a work area for our dynamic internal table.

create data new_line like line of <fs_1>.

*** A field-symbol to access that work area
assign new_line->*  to <fs_2>.

*** And to put the data in the internal table
select
      mandt
      carrid
      connid
      fldate
      price
      currency
              from sflight
              into corresponding fields of table <fs_1>.

*** Access contents of internal table
loop at <fs_1> assigning <fs_2>.
do 5 times.
assign component sy-index of structure <fs_2> to <fs_3>.
write:  <fs_3>.
enddo.
skip 1.
endloop.

top-of-page.
write:/5 'FUJITSU CONSULTING COMPANY' inverse color 6,
       50 sy-datum inverse color 6,
       70 sy-pagno inverse color 6.
uline.

<REMOVED BY MODERATOR>

Vijay C

Code Formatted by: Alvaro Tejada Galindo on Apr 14, 2008 1:47 PM

Read only

Former Member
0 Likes
1,298