-
ALV简单实例
ABAP ALV使用实例---sflight航班表及其效果界面
ABAP:ALV List报表
最后页眉设置了一些HTML语句,可以看一下。
ABAP FUNCTION ALV单元格单击/双击事件
不错的例子,但我系统里没数据,看不到效果。
为实现打印入库单时,勾选某个行项目,则同一个单子的行项都要自动勾上。需要用到单击事件。
1.为需要响应单击按钮的列设定:
WA_FIELDCAT-HOTSPOT = 'X'. "单击 其中 WA_FIELDCAT TYPE LINE OF SLIS_T_FIELDCAT_ALV,
2.在ALV事件里响应:
CASE R_UCOMM.
WHEN '&IC1'. "单击复选框 勾选(取消)后同一预留号都自动勾选(取消)
READ TABLE ITAB_TOTAL INDEX R_SEL-tabindex INTO DATA(WA_SEL_TEMP). "获取单击行
IF R_SEL-fieldname = 'SEL' AND WA_SEL_TEMP-SEL = ''.
LOOP AT ITAB_TOTAL ASSIGNING FIELD-SYMBOL(<FS_TEMP>) WHERE RSNUM = WA_SEL_TEMP-RSNUM .
<FS_TEMP>-SEL = 'X'.
ENDLOOP.
ELSEIF R_SEL-fieldname = 'SEL' AND WA_SEL_TEMP-SEL = 'X'.
LOOP AT ITAB_TOTAL ASSIGNING FIELD-SYMBOL(<FS_TEMP2>) WHERE RSNUM = WA_SEL_TEMP-RSNUM .
<FS_TEMP2>-SEL = ''.
ENDLOOP.
ENDIF.
3.最后注意响应事件前加GET_GLOBALS_FROM_SLVC_FULLSCR,响应后刷新CALL METHOD REF->REFRESH_TABLE_DISPLAY.
-
参数解析:
-
自定义双击项目后的事件
FORM user_command USING ucomm LIKE sy-ucomm
selfield TYPE slis_selfield.
READ TABLE it_data INDEX selfield-tabindex.
CHECK sy-subrc = 0.
CASE ucomm.
IF selfield-sel_tab_field = '1-EXTRA'. // 表示单击某一单元格,这里的1表示那个被输出的内表
WHEN '&IC1'. // ALV中双击事件代码(我参考的核心代码!!)
ucomm = '&ETA'. // 查看明细,即将该行的数据显示在一个DIALOG中(记得在G_IT_LAYOUT-DETAIL_INITIAL_LINES = 'X' 将无数据的列也显示)
SET PARAMETER ID 'VF' FIELD it_data-faph.
CALL TRANSACTION 'VF03' AND SKIP FIRST SCREEN.
ENDIF.
ENDCASE.
ENDFORM. "USER_COMMAND
-
REUSE_ALV_FIELDCATALOG_MERGE
调用REUSE_ALV_FIELDCATALOG_MERGE函数来获取FIELDCAT
内含超出72字符的解决方法。
调用 REUSE_ALV_FIELDCATALOG_MERGE 很容易被忽略的一个问题
定义结构的时候, type后面只能跟基本类型(不是指date element)
其他任何都只能用like,包括想参考 “表名-字段名”,必须使用like。
总之,都用like是没问题的。不然这个函数是获取不到值的。
*定义FIELDCAT与LAYOUT
DATA:FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
LAYOUT TYPE SLIS_LAYOUT_ALV,
W_REPID LIKE SY-REPID.
DATA:FIELDCAT1 TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE.
DATA:FIELDCAT2 TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE.
DATA:FIELDCAT3 TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE.
如上例中,遇到表名-字段名时必须用LIKE
关于缓存的问题:
同时这个函数的buffer 缓存有时候需要多留意,有时候需要退出去一下,清下缓存再进行测试。
这个是SE11+SE37的例子
REUSE_ALV_FIELDCATALOG_MERGE 的自动获取ALV fieldcat
-
单元格颜色设置
网友评论