Application Development 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: 

CL_SALV_TABLE

Former Member
0 Kudos

Hi Friends,

How to make a key field in ALV output using cl_salv_table class.

Thanks & Regards,

Manoj

2 REPLIES 2

Former Member
0 Kudos

Hi,

Refer to the link.

This might Help.

Regards

Sumit Agarwal

former_member188685
Active Contributor
0 Kudos

Check this sample code...

REPORT  ztest_salv.

DATA: alv TYPE REF TO cl_salv_table.
TYPES: BEGIN OF ty_tab,
         carrid TYPE sflight-carrid,
         connid TYPE sflight-connid,
       END OF ty_tab.
DATA: col_tab TYPE REF TO cl_salv_columns_table,
      col TYPE REF TO cl_salv_column_table.

DATA: col_ref TYPE   salv_t_column_ref,
      wa LIKE LINE OF col_ref.

DATA: it_flight TYPE STANDARD TABLE OF ty_tab.

SELECT carrid connid FROM sflight INTO TABLE it_flight
UP TO 10 ROWS.

cl_salv_table=>factory(
  IMPORTING
    r_salv_table   = alv
  CHANGING
    t_table        = it_flight
       ).
"get all the columns
col_tab = alv->get_columns( ).
col_ref = col_tab->get( ).
"loop each column 
LOOP AT col_ref INTO wa.
 "Conditionally set the column type as key or non key
  IF wa-columnname   = 'CARRID'.
    col ?= wa-r_column.
    col->set_key( abap_true ).
  ENDIF.
ENDLOOP.


alv->display( ).