在定义屏幕组件时,单选需要设定必填项OBLIGATORY
FORM frm_show_data .
*ALV字段属性设置
PERFORM frm_build_fieldcat .
*ALV布局设置
PERFORM frm_build_layout.
*显示ALV
PERFORM frm_display_alv.
ENDFORM.
FORM frm_build_fieldcat.
DATA: ls_fcat TYPE lvc_s_fcat.
CLEAR ls_fcat.
ls_fcat-fieldname = 'SEL'.
ls_fcat-reptext = '复选框'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
ls_fcat-edit = 'X'.
ls_fcat-checkbox = 'X'.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
CLEAR ls_fcat.
ls_fcat-fieldname = 'numb'.
ls_fcat-reptext = '学号'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
"ls_fcat-edit = 'X'.
ls_fcat-checkbox = ''.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
CLEAR ls_fcat.
ls_fcat-fieldname = 'name'.
ls_fcat-reptext = '姓名'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
"ls_fcat-edit = 'X'.
ls_fcat-checkbox = ''.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
CLEAR ls_fcat.
ls_fcat-fieldname = 'NJ'.
ls_fcat-reptext = '年级'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
"ls_fcat-edit = ''.
ls_fcat-checkbox = ''.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
CLEAR ls_fcat.
ls_fcat-fieldname = 'BJ'.
ls_fcat-reptext = '班级'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
"ls_fcat-edit = ''.
ls_fcat-checkbox = ''.
ls_fcat-emphasize = ''.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
CLEAR ls_fcat.
ls_fcat-fieldname = 'term'.
ls_fcat-reptext = '学期'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
"ls_fcat-edit = ''.
ls_fcat-checkbox = ''.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
CLEAR ls_fcat.
ls_fcat-fieldname = 'KM'.
ls_fcat-reptext = '科目'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
"ls_fcat-edit = ''.
ls_fcat-checkbox = ''.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
CLEAR ls_fcat.
ls_fcat-fieldname = 'CJ'.
ls_fcat-reptext = '成绩'.
ls_fcat-fix_column = ''.
ls_fcat-no_out = ''.
ls_fcat-convexit = ''.
"ls_fcat-edit = ''.
ls_fcat-checkbox = ''.
"ls_fcat-emphasize = 'C610'.
APPEND ls_fcat TO gt_fcat."赋值ALV显示的字段
ENDFORM.
*&---------------------------------------------------------------------*
*& Form frm_build_layout
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM frm_build_layout .
CLEAR: gs_layout.
gs_layout-zebra = 'X'.
gs_layout-cwidth_opt = 'X'.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form frm_display_alv
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM frm_display_alv .
gs_layout-zebra = 'X'.
gs_layout-cwidth_opt = 'X'.
gs_layout-info_fname = 'CLR'.
"gs_layout-ctab_fname = 'CHAR'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
EXPORTING
"i_callback_user_command = 'USER_COMMAND' "调用屏幕点击事件
i_callback_program = sy-repid
"i_callback_pf_status_set = 'FRM_PF_STATUS' "设置gui 状态 添加打印按钮
"i_callback_user_command = 'FRM_USER_COMMAND' "设置屏幕上保存按键
is_layout_lvc = gs_layout "设置ALV样式
it_fieldcat_lvc = gt_fcat "赋值ALV显示的字段
i_save = 'A' " 是否保存布局
TABLES
t_outtab = gt_into[] "放赋值的内表
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.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form frm_add_fieldcat
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> GT_FCAT
*& --> P_
*& --> P_
*& --> P_
*& --> P_
*& --> P_
*&---------------------------------------------------------------------*
FORM frm_add_fieldcat TABLES pt_fieldcat
USING pu_fieldname TYPE lvc_fname
pu_scrtext TYPE any
pu_fixcol TYPE lvc_fixcol
pu_no_out TYPE lvc_noout
pu_convexit TYPE convexit
pu_edit TYPE lvc_edit
pu_checkbox TYPE lvc_checkb.
DATA: ls_fcat TYPE lvc_s_fcat.
ls_fcat-fieldname = pu_fieldname.
ls_fcat-scrtext_s =
ls_fcat-scrtext_m =
ls_fcat-scrtext_l =
ls_fcat-coltext =
ls_fcat-reptext = pu_scrtext.
ls_fcat-fix_column = pu_fixcol.
ls_fcat-no_out = pu_no_out.
ls_fcat-convexit = pu_convexit.
ls_fcat-edit = pu_edit.
ls_fcat-checkbox = pu_checkbox.
APPEND ls_fcat TO pt_fieldcat.
CLEAR ls_fcat.
ENDFORM.