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

checkbox in grid display

Former Member
0 Likes
933

Hi All,

presently working on ALV's. Is it possible to put checkbox in grid display. if yes

plz provide some sample code

with regards,

rajeev

Hi All,

presently working on ALV's. Is it possible to put checkbox in grid display. if yes

plz provide some sample code

with regards,

rajeev

7 REPLIES 7
Read only

Former Member
0 Likes
769

refer..

Read only

Former Member
0 Likes
769

Add an extra field to the internal table.

for that field, build the catalog with x_fldcat-checkbox = 'X'.

Regards,

Ravi

Read only

Former Member
0 Likes
769

Hello Rajeev,

If u r using the ABAP Objects u will get the cjheckbox automatically.

Reward if helps.

vasanth

Read only

Former Member
0 Likes
769

Hi,

Please refer this link :

Best regards,

Prashant

Read only

Former Member
0 Likes
769

Hi,

check the small sample code.

REPORT  ztest_alv  .

TYPE-POOLS: slis.
DATA: x_fieldcat TYPE slis_fieldcat_alv,
      it_fieldcat TYPE slis_t_fieldcat_alv,
      l_layout TYPE slis_layout_alv.

data: IT_EXCLUDE TYPE  SLIS_T_EXTAB.
DATA: BEGIN OF itab OCCURS 0,
       field1 TYPE i,
       field2 TYPE i,
       field3 TYPE i,
<b>       chk(1),</b>
      END OF itab.

DO 20 TIMES.

  itab-field1 = sy-index.
  itab-field2 = sy-index + 1.
  APPEND itab.
  CLEAR itab.
ENDDO.


LOOP AT itab.
  itab-field3 = itab-field1 + itab-field2.
  MODIFY itab INDEX sy-tabix.
ENDLOOP.

<b>x_fieldcat-fieldname = 'CHK'.
x_fieldcat-seltext_l = 'Select'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-checkbox = 'X'.
x_fieldcat-input = 'X'.
x_fieldcat-edit = 'X'.
x_fieldcat-col_pos = 1.
APPEND x_fieldcat TO it_fieldcat.
CLEAR x_fieldcat.</b>

x_fieldcat-fieldname = 'FIELD1'.
x_fieldcat-seltext_l = 'One'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-col_pos = 2.
APPEND x_fieldcat TO it_fieldcat.
CLEAR x_fieldcat.

x_fieldcat-fieldname = 'FIELD2'.
x_fieldcat-seltext_l = 'Two'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-col_pos = 3.
APPEND x_fieldcat TO it_fieldcat.
CLEAR x_fieldcat.

x_fieldcat-fieldname = 'FIELD3'.
x_fieldcat-seltext_l = 'Sum'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-col_pos = 4.
APPEND x_fieldcat TO it_fieldcat.
CLEAR x_fieldcat.



CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    i_callback_program = sy-repid
    is_layout          = l_layout
    it_fieldcat        = it_fieldcat
  TABLES
    t_outtab           = itab
  EXCEPTIONS
    program_error      = 1
    OTHERS             = 2.
IF sy-subrc <> 0.

  MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
          WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.

Regards

vijay

Read only

Former Member
0 Likes
769

Hi Rajeev,

you can have check box in alv grid.. chack following code...

  • Check box

g_t_fcat-fieldname = 'SELKZ'.

g_t_fcat-ref_table = 'G_T_ITAPHU'.

g_t_fcat-coltext = 'Select'.

g_t_fcat-outputlen = 6.

g_t_fcat-hotspot = 'X'.

g_t_fcat-checkbox = 'X'.

APPEND g_t_fcat. CLEAR g_t_fcat.

Regards,

Srinivas

Read only

Former Member
0 Likes
769

Hi rajeev,

1. There are two things :

a) checkbox at the left most side

usually for selecting the row

-


this can be displayed in ALV LIST (not grid)

by using an extra column

b) In alv grid, we can use the

FIELD CATALOGUE - (checkbox = 'X')

then it will display CHECK BOX FOR THAT COLUMN

(in alv grid)

2. Both things are visiblle in this program

3. just copy paste.

4. It will display data from t001

(and row selector on the left most side,

and KOKFI field will be shown as checkbox)

5.

REPORT abc.

TYPE-POOLS : slis.

*----


Data

DATA : BEGIN OF itab OCCURS 0.

INCLUDE STRUCTURE t001.

DATA : flag tyPE c,

END OF itab.

DATA : alvfc TYPE slis_t_fieldcat_alv.

DATA : alvwa TYPE line of slis_t_fieldcat_alv.

DATA : alvly TYPE slis_layout_alv.

*----


Select Data

SELECT * FROM t001 INTO TABLE itab.

loop at itab.

itab-kokfi = '1'.

modify itab.

endloop.

*------- Field Catalogue

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = sy-repid

i_internal_tabname = 'ITAB'

i_inclname = sy-repid

CHANGING

ct_fieldcat = alvfc

EXCEPTIONS

inconsistent_interface = 1

program_error = 2

OTHERS = 3.

*----


IMPORTANT

alvly-box_fieldname = 'FLAG'.

loop at alvfc into alvwa.

IF ALVWA-FIELDNAME = 'KOKFI'.

alvwa-checkbox = 'X'.

modify alvfc from alvwa.

ENDIF.

endloop.

*----


Display

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

it_fieldcat = alvfc

i_callback_program = sy-repid "<-------Important

i_callback_user_command = 'ITAB_USER_COMMAND' "<------ Important

is_layout = alvly

TABLES

t_outtab = itab

EXCEPTIONS

program_error = 1

OTHERS = 2.

*----


  • CALL BACK FORM

*----


FORM itab_user_command USING whatcomm TYPE sy-ucomm whatrow TYPE

slis_selfield.

LOOP AT itab.

itab-flag = 'X'.

MODIFY itab.

ENDLOOP.

*----


IMPORTANT.

WHATROW-REFRESH = 'X'.

ENDFORM. "ITAB_user_command

regards,

amit m.