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

Former Member
0 Likes
823

i want to display check box in alv

7 REPLIES 7
Read only

Former Member
0 Likes
773

add a field of char(1) to your int table ( for eg "chk")

in the fieldcatalog for this field

mark the "checkbox" attribute as "X".

Read only

Former Member
0 Likes
773

Hi Rakhee,

You have to have in the Output Table:

Types: begin of lt_io.

include structure mara. " Your Structure

Types: style_table type lvc_t_style.

Types: end of lt_io.

data: lt_io type table of lt_io,

ls_layout type lvc_s_layo,

lt_fcat type lvc_t_fcat,

lo_grid type ref to cl_gui_alv_grid.

field-symbols: <io> type lt_io,

<fcat> type lvc_s_fcat.

... fill your output table ....

ls_layout-stylefname = 'STYLE_TABLE'.

loop at lt_io assigning <io>.

PERFORM set_style USING 'CHECKBOX' "Your Filename

CHANGING <io>.

endloop.

... Fill Your Field Catalog lt_fcat

read table lt_fcat assigning <fcat>

where fieldname = 'CHECKBOX'.

<fcat>-checkbox = 'X'.

...

create grid control lo_grid.

...

CALL METHOD lo_grid->set_table_for_first_display

EXPORTING

is_layout = ls_layout

CHANGING

it_fieldcatalog = lt_fcat

it_outtab = lt_io[].

...

FORM set_style

USING iv_fieldname TYPE lvc_fname

CHANGING cs_io TYPE io.

DATA: ls_style TYPE lvc_s_styl,

lt_style TYPE lvc_t_styl.

ls_style-fieldname = iv_fieldname.

if cs_io-checkbox = ' '.

ls_style-style = cl_gui_alv_grid=>mc_style_enabled.

else.

ls_style-style = cl_gui_alv_grid=>mc_style_disabled.

endif.

ls_style-maxlen = 2.

INSERT ls_style INTO TABLE io-style_table.

ENDFORM. "set_icon_to_status_line

regards,

keerthi

Read only

Former Member
0 Likes
773

Hi Rakhee,

Refer program : BCALV_EDIT_05.

Reward points if this Helps.

Manish

Read only

Former Member
0 Likes
773

Hi,

check the sample code..

and compare with your program.

REPORT  ZTEST_ALV_CHECK     message-id zz           .

TYPE-POOLS: SLIS.
DATA: X_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
      IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
      L_LAYOUT type slis_layout_alv,
      x_events type slis_alv_event,
      it_events type SLIS_T_EVENT.

DATA: BEGIN OF ITAB OCCURS 0,
      VBELN LIKE VBAK-VBELN,
      POSNR LIKE VBAP-POSNR,
      CHK(1),
     END OF ITAB.

SELECT VBELN
       POSNR
       FROM VBAP
       UP TO 20 ROWS
       INTO TABLE ITAB.

X_FIELDCAT-FIELDNAME = 'CHK'.
X_FIELDCAT-TABNAME = 'ITAB'.
X_FIELDCAT-COL_POS = 1.
X_FIELDCAT-INPUT = 'X'.
X_FIELDCAT-EDIT = 'X'.
X_FIELDCAT-CHECKBOX = 'X'.
APPEND X_FIELDCAT TO IT_FIELDCAT.
CLEAR X_FIELDCAT.

X_FIELDCAT-FIELDNAME = 'VBELN'.
X_FIELDCAT-SELTEXT_L = 'VBELN'.
X_FIELDCAT-TABNAME = 'ITAB'.
X_FIELDCAT-COL_POS = 2.
APPEND X_FIELDCAT TO IT_FIELDCAT.
CLEAR X_FIELDCAT.

X_FIELDCAT-FIELDNAME = 'POSNR'.
X_FIELDCAT-SELTEXT_L = 'POSNR'.
X_FIELDCAT-TABNAME = 'ITAB'.
X_FIELDCAT-COL_POS = 3.
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
 *  I_CALLBACK_PF_STATUS_SET = 'STATUS'
 *  I_CALLBACK_USER_COMMAND  = 'USER_COMMAND'
    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.

*&---------------------------------------------------------------------*
*&      Form  STATUS
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_EXTAB    text
*----------------------------------------------------------------------*
FORM STATUS USING P_EXTAB TYPE SLIS_T_EXTAB.
*- Pf status
  SET PF-STATUS 'STATUS'.
ENDFORM.                 " STATUS

*&---------------------------------------------------------------------*
*&      Form  USER_COMMAND
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->R_UCOMM      text
*      -->RS_SELFIELD  text
*----------------------------------------------------------------------*
FORM USER_COMMAND USING R_UCOMM     LIKE SY-UCOMM
                               RS_SELFIELD TYPE SLIS_SELFIELD.

  case r_ucomm.

    when 'BACK' or 'CANC' or 'EXIT'.
      leave to screen 0.
    when '&IC1'.
  endcase.
ENDFORM.                    "USER_COMMAND

Regards

vijay

Read only

former_member404244
Active Contributor
0 Likes
773

hi Rakhee,

declare an internal table with one field called as chk.

like this.

data : begin of itab occurs 0,

chk(1),

..........,

..........,

end of itab.

Now in the fieldcatalog for this field

mark the attribute of check box as "X".

regards,

Nagaraj

Read only

Former Member
0 Likes
773

Add a field of type CHAR1 in yout internal table say itab-chb.

Now in fieldcatalog mark

wa_fieldcat-CHECKBOX = 'X'.

for that particular field. The given field will appear as checknbox.

Get back if any issues.

Rgds,

Nitin

*Mark all helpful answers

Read only

Former Member
0 Likes
773

Hi Rakhee,

DATA : BEGIN OF IT_FINAL OCCURS 0,

EBELN LIKE EKPO-EBELN,

NETWR LIKE EKPO-NETWR,

CHK(1),

END OF IT_FINAL.

****field catalog

WA_FIELDCAT-FIELDNAME = 'CHK'.

WA_FIELDCAT-COL_POS = '8'.

WA_FIELDCAT-JUST = 'C'.

WA_FIELDCAT-SELTEXT_L = 'Check Box'.

WA_FIELDCAT-LOWERCASE = 'X'.

WA_FIELDCAT-checkbox = 'X'.

WA_FIELDCAT-EDIT = 'X'.

APPEND WA_FIELDCAT TO IT_FIELDCAT.ELSE.

then call either REUSE_ALV_LIST_DISPLAY or REUSE_ALV_GRID_DISPLAY.

Thanks

Vikranth khimavath