ABAP开发中零散知识点汇总
来源:互联网 发布:人民大学数据库水平 编辑:程序博客网 时间:2024/05/14 23:32
1、CLEAR、REFRESH、FREE的用法
内表:如果使用有表头行的内表,CLEAR 仅清除表格工作区域。要重置整个内表而不清除表格工作区域,使用REFRESH语句或 CLEAR 语句CLEAR <itab>[].;REFRESH加不加中括号都是只清内表,另外REFRESH是专为清内表的,不能清基本类型变量,但CLEAR可以。
以上都不会释放掉内表所占用的空间,如果想初始化内表的同时还要释放所占用的空间,请使用:FREE <itab>。
2、删除内表中的重复数据
SORT GT_TAB BY FIELD1 FIELD1...
DELETE ADJACENT DUPLICATES FROM GT_TAB COMPARING FIELD1 FIELD2 ...
需要先排序再删除重复数据
3、双击行项目进行跳转的一般做法
在ALV函数的 I_CALLBACK_COMMAND里面定义用户动作的FORM,再在FORM里面定义双击事件
FORM USER_FORM USING I_UCOMM LIKE SY-UCOMM
I_SELFIELD TYPE SLIS_SELFIELD.
CASE I_UCOMM .
WHEN '&IC1' .
READ TABLE ITAB_MX_OUTPUT INDEX I_SELFIELD-TABINDEX .
SET PARAMETER ID 'BLN' FIELD ITAB_MX_OUTPUT-BELNR .
SET PARAMETER ID 'BUK' FIELD ITAB_MX_OUTPUT-BUKRS .
SET PARAMETER ID 'GJR' FIELD P_GJAHR .
CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN .
ENDCASE .
ENDFORM .
4、在普通的ALV控件里面使用OO ALV的方法
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR' "相当于把普通的ALV转化为OO的使用,使其具有OO的方法
IMPORTING
E_GRID = LR_GRID .
CALL METHOD LR_GRID->CHECK_CHANGED_DATA. "调用方法,检查和记录事件触发前数据的变化
RS_SELFIELD-REFRESH = 'X'. "刷新屏幕
CALL METHOD LR_GRID->GET_CURRENT_CELL "读取当前光标的行和列
IMPORTING
E_ROW = V_ROW "都是I类型的
E_COL = V_COL.
5、使用E类型的消息后程序还可以进行正常执行的方法
MESSAGE '保存失败!' TYPE 'S' DISPLAY LIKE 'E' .
6、在ALV中修改数量、金额等字段时,系统会自动减少1000倍的解决方法
在该字段的FIELDCAT属性里面限制datatype,如:
GS_FIELDCAT-DATATYPE = 'QUAN' . "经测试QUAN类型的需要指定INTTYPE CURR类型的不需要下面这行
GS_FIELDCAT-INTTYPE = 'C' .
- ABAP开发中零散知识点汇总
- IOS开发过程中,零散知识点小记
- Android 开发中零散知识点记录
- Cocos2dx中零散知识点
- Android 开发中的零散知识点
- javascript中零散的知识点
- NDK开发-零散知识点整理
- 零散知识点
- 零散知识点
- 零散知识点
- 零散知识点.....
- 零散知识点
- 零散知识点
- 零散知识点
- 零散知识点
- 零散知识点
- 零散知识点
- 零散知识点
- seqgan 理解2
- SIMcom指令整理
- Servlet与JSP入门
- 异常:Caused by: java.lang.NoClassDefFoundError: org/springframework/web/context/WebApplicationContext
- 关于IList类型与IList<T>在运行时类型转换失败的问题
- ABAP开发中零散知识点汇总
- Unity)摄像机Camera跟随
- nsq安装及初探
- Docker学习总结——Docker 创建Nginx的容器。
- SpringMVC工作原理
- js比较时间大小。
- Tomcat Can't load AMD 64-bit .dll on a IA 32
- Html特殊标记符号
- AES android基本使用