ABAP 基础知识
1、产生空白行
SKIP [<n>]
2、定义包含结构体的内表
DATA: BEGIN OF <ITAB> OCCURS 0,
INCULDE STRUCTURE <STRUCTURE>.
DATA: FIELD TYPE <TYPE>.
……
DATA: END OF <ITAB>.
3、通过DESCRIBE获得内表的行
DESCRIBE TABLE <ITAB> LINES N.
4、内表的数量合计
***iprt与 iprt1结构相同
LOOP AT iprt ASSIGNING <p>.
  iprt1-ebeln = <p>-ebeln.
  iprt1-ebelp = <p>-ebelp.
  iprt1-menge = <p>-menge.
  APPEND iprt1.
  CLEAR iprt1.
ENDLOOP.
SORT iprt1 BY ebeln ebelp.
LOOP AT iprt1.
  COLLECT iprt1 INTO iprt2.
ENDLOOP. 
5、未开票数量(某一列)只显示在多条相同采购凭证和行项目的第一行
DATA: lv_ebeln LIKE ekpo-ebeln,
       lv_ebelp LIKE ekpo-ebelp.
CLEAR: lv_ebeln ,
       lv_ebelp .
SORT iprt BY ebeln ebelp.
LOOP AT iprt.
  IF lv_ebeln = iprt-ebeln AND
     lv_ebelp = iprt-ebelp.
  ELSE.
    lv_ebeln = iprt-ebeln.
    lv_ebelp = iprt-ebelp.
    READ TABLE iprt2 WITH KEY ebeln = iprt-ebeln
                              ebelp = iprt-ebelp
                              BINARY SEARCH.
    IF sy-subrc = 0.
      iprt-menge1 = iprt2-menge1.
      iprt-menge2 = iprt2-menge2.
    ENDIF. 
ENDLOOP. 
6、alv行颜色
‘C310'-----黄色
‘C610'-----红色
7、向左移动:SHIFT LV_STRING1 BY 2 PlACES LEFT.
     向右移动:SHIFT LV_STRING1 BY 2 PlACES RIGHT.
8、字符串大小写
translate *** to upper case."字符小写转大写
TRANSLATE  *** TO LOWER CASE "字符大写转小写
9、function,创建ICON
 CALL FUNCTION 'ICON_CREATE'
 EXPORTING
 name = icon_name
 text = icon_text
 info = 'Status'
 add_stdinf = 'X'
 IMPORTING
 result = output
 EXCEPTIONS
 icon_not_found = 1
 outputfield_too_short = 2
 OTHERS = 3.
ENDMODULE. " SET_ICON OUTPUT 
10、f4搜索帮助
 TYPES:BEGIN OF s_list,
 "需要table字段,默认帮助
 id TYPE spfli-carrid,
 name TYPE C LENGTH 20,
 END OF s_list.
 DATA:lt_list TYPE TABLE OF s_list.
 DATA:ls_list LIKE LINE OF lt_list.
 IF lt_list IS INITIAL.
 ls_list-id = '11'.
 ls_list-name = '重庆'.
 APPEND ls_list TO lt_list.
 ls_list-id = '21'.
 ls_list-name = '北京'.
 APPEND ls_list TO lt_list.
 ENDIF.
 "设置f4 help
 CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
 EXPORTING
 retfield = 'ID'
 value_org = 'S'
 TABLES
 value_tab = lt_list
 EXCEPTIONS
 parameter_error = 1
 no_values_found = 2
 OTHERS = 3.
 IF sy-subrc <> 0.
 WRITE:/ 'error'.
 ENDIF.
11、set cursor 设置焦点
set cursor field 这个是设置鼠标焦点到字段
SET CURSOR <COL> <ROW> 设置到鼠标焦点列还是行
SET CURSOR LINE <ROW> 设置鼠标焦点到行
这个是设置鼠标焦点的。
GET CURSOR  field  这个相对应的获取鼠标焦点得到的字段
12、SAP系统显示多条message函数(C14Z_MESSAGES_SHOW_AS_POPUP)
13、计算行数:l_lines = lines( it_out ). ****l_lines为i类型
14、定义日期类型为:d
15、SORT TABLE BY XXX DESCENDING XX 。
这种情况下就是XXX降序 XX 就是升序。
16、SE93 创建表维护sm30事务代码
SU24 对事务代码分配权限对象
17、SE14删除数据库表数据
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号