abap-在table control中实现查找功能
来源:互联网 发布:java 全角半角 空格 编辑:程序博客网 时间:2024/06/05 08:06
table control 创建时可以实现添加,删除,及翻页的功能,但没有查找的功能,故记录多时查看不方便,所以要自己写,DEBUG标准ALV的查找功能发现使用函数ALV_POPUP_TO_SEARCH2,该函数仅弹出查找框,其余查找代码仍需要自己写。
该函数查找提供的查找点过多,于是找了个简单的ALV_POPUP_TO_SEARCH,实现一个简单的查找功能,代码如下:
WHEN '%SC'."查找
CALL FUNCTION 'ALV_POPUP_TO_SEARCH'
EXPORTING
i_disable_search_sequence = 'X'"不显示下拉框
IMPORTING
e_cancelled = e_cancelled
e_new_search = e_new_search
CHANGING
c_string = s_string.
IF e_cancelled NE 'X'."取消查找
IF e_new_search EQ 'X'."重新查找
s_line = 0.“从头开始查找
ENDIF.
LOOP AT ztmsd1 FROM s_line TO zmsdscp1-lines.
IF ztmsd1-matnr CS s_string.”包含字符串s_string
ztmsd1-zflag = 'X'."选中符合条件行记录
MODIFY ztmsd1 TRANSPORTING zflag.
zmsdscp1-top_line = sy-tabix.“符合条件记录置于首行
s_line = sy-tabix.”记录当前行,方便查找下一个时,从当前行的下一行开始查找
search_deflag = 'X'.“查找是否成功标志
EXIT.
ENDIF.
ENDLOOP.
IF search_deflag NE 'X'.
MESSAGE s007 WITH '无匹配内容存在'.
ENDIF.
ENDIF.
CLEAR search_deflag.
WHEN '%SC+'."查找下一个
IF s_string NE ''.
s_line = s_line + 1.”查找下一个,则从上个符合条件记录的下一行再始查找
LOOP AT ztmsd1 FROM s_line TO zmsdscp1-lines.
IF ztmsd1-matnr CS s_string.
ztmsd1-zflag = 'X'.
MODIFY ztmsd1 TRANSPORTING zflag.
zmsdscp1-top_line = sy-tabix.
s_line = sy-tabix.
search_deflag = 'X'.
EXIT.
ENDIF.
ENDLOOP.
IF search_deflag NE 'X'.
MESSAGE s007 WITH '无匹配内容存在'.
ENDIF.
ENDIF.
CLEAR search_deflag.
- abap-在table control中实现查找功能
- abap 在table control(表控件) 实现查找功能
- abap 在table control(表控件) 实现查找功能
- ABAP 中 Table Control例子
- ABAP table control
- ABAP table control
- SAP ABAP 如何在做table control的字段里实现输入负值
- SAP ABAP 如何在做table control的字段里实现输入负值
- SAP ABAP 如何在做table control的字段里实现输入负值
- ABAP中的Table Control编程
- ABAP中的Table Control编程
- ABAP中的Table Control编程
- abap table control控制光标
- Table control中列隐藏实现方法
- ABAP总结之五,Table Control
- ABAP:为Table Control创建Context Menu
- ABAP 的TABLE CONTROL实践积累
- ABAP中的Table Control编程(1)
- 面向对象存储所需要知道的十四大问题
- cocos2d-x 笔记(一) win32环境配置以及eclipse+ndk+sdk+cygwin的android移植
- 文件操作
- Joomla的SEO優化要點詳解
- 调用新建向导wizard
- abap-在table control中实现查找功能
- 守护进程(daemon) .
- Linux系统调用 .
- 工程展示ProjectExplorer之覆写JavaElement
- 揭秘jbpm流程引擎内核设计思想及构架
- C++ 的序列化
- memcache分析调试 .
- Android 多媒体扫描过程
- mlock家族:锁定物理内存 .