首页 > SAP > ABAP > ABAP总结2-常用系统变量及函数等
2019
08-29

ABAP总结2-常用系统变量及函数等

1.      引用类型z_ref数据对象myref在程序中的声明方式:
DATA myref TYPE z_ref.
CREATE DATA myref TYPE z_ref.
2.      参照数据字典中的表类型生成内表对象或结构体:
DATA mytable TYPE z_table,”数据字典表类型,声明内表.
myline TYPE LINE OF z_table.”表类型的行结构,声明结构体.
3.      取系统日期:SY-DATUM,
4.      取系统时间:SY-UZEIT.0
5.      系统字段定位:SY-FDPOS.字符比较结果为真时,此字段将给出偏移量信息.
6.      系统字段SY-FDPOS给出字符的位置信息.(P109)
7.      系统字段SY-INDEX记录循环语句中的循环次数
8.      操作内表行结束后系统字段SY-TABIX返回该行索引.对于所有行操作,如果操作成功,系统变量SY-SUBRC返回0,否则返回非0值.
9.      系统用户名:SY-UNAME.
10.  SY-HOST?屏幕序号:sy-dynnr.
11.  OK代码:SY-UCOMM或SYST-UCOMM
12.  屏幕组ID:SY-DYNGR.
13.  常量声明:CONSTANT const(len) TYPE type|LIKE dobj [DECIMALS dec] [VALUE val].
14.  确定数据对象属性ABAP总结2-常用系统变量及函数等 - 第1张  | 优通SAPESCRIBE FIELD f [LENGTH l] [TYPE t [CONPONENTS n]] [OUTPUT-LENGTH o] [DECIMALS d] [EDIT MASK m] [HELP-ID h].
15.  数据赋值:MOVE source TO destination.或destination = source.
16.  设定初始值:CLEAR F.
17.  检查字段是否为初始值:f IS INITIAL….
18.  检查字段是否被分配:fs IS ASSIGNED…..
19.  检查过程中的参数是否被实参填充:p IS [SUPPLIED|REQUESTED]….
20.  检查数据对象的值是否属于某范围之间:f1 BETWEEN f2 AND f3…..
21.  检查数据对象f的内容是否遵从某个选择表的逻辑条件:f in seltab….
22.  WRITE: /10 g,”在10个空格后输出变量g
/(8) time using edit mask ‘__:__:__’.”输出的变量time保持8位的长度.
23.  将光标移动到下一行:SKIP.
24.  强制结束循环:EXIT,STOP或REJECT.
25.  循环的中止:CONTINUE无条件中止当前循环并开始下一轮循环,CHECK条件为真时循环,为假时结束本次循环并开始下一轮循环,EXIT无条件中止并退出整个循环.
26.  将字符串左移:SHIFT string.
27.  连接字符串:CONCATENATE s1 s2 …..sn INTO s_dest [SEPARATED BY sep].如果结果出现被截断的情况,将SY-SUBRC返回4,否则返回0.符号&用于在字字符串换行时的连接.
28.  根据分隔符sep拆分字符串:SPLIT s_source AT sep INTO s1 s2 ……sn.使用内表操作可以避免被截断的情况:SPLIT s_source AT sep INTO TABLE itab.此语句根据子串数目生成n行的内表.
29.  循环输出内表的每一行数据ABAP总结2-常用系统变量及函数等 - 第2张  | 优通SAPOOP AT itab INTO text.ENDLOOP.
30.  替换字段内容:REPLACE str1 WITH str2 INTO s_dest [LENGTH len]. 字段SY-SUBRC的返回值为0时表示己成功替换.
31.  确定字段长度:[COMPUTE] n = STRLEN( str ).
32.  删除字符串中的多余空格:CONDENSE
33.  字符转换,如将ABC转换为abc:TRANSLATE
34.  创建一个可以排序的格式:CONVERT TEXT.
35.  用一个字符串覆盖另一个字符串:OVERLAY
36.  WRITE TO赋值时将忽略数据对象的类型,而将其视为字符类型数据.
37.  字符串比较中的换码字符:#,用于转换比较时使用的通配符:*或+.及进行区分大小写,空格的比较,如#A表示比较大写的A.
38.  定位操作子串:strName[+0][(1)].
39.  字段符号,数据引用:动态数据对象.
40.  子过程定义:FORM subroutine_name USING parameters1 parameters2…. ….ENDFORM.
41.  子程序调用ABAP总结2-常用系统变量及函数等 - 第3张  | 优通SAPERFORM subroutine_name USING actual_parameters1 p2…. (其中USING可换成CHANGING)
42.  ULINE.输出下划线.
43.  错误查看:ST22
44.  程序打包release:SE01:找到对应的程序,点开后点上面小汽车,再选中上面的后再点小汽车.点check.程序修改后需要重新打包.
45.  制作T-CODE:SE93,TCODE应按顺序编号:ZMF+流水号,我的程序名
46.  创建table:t-code:se11,attributesABAP总结2-常用系统变量及函数等 - 第4张  | 优通SAPelivery class:C.开发类别:ZFI,当自定义Field type时,名称需为Z+…..格式.->设置技术属性(Technical Setting)ABAP总结2-常用系统变量及函数等 - 第5张  | 优通SAPogical storage parameters中Data class:APPL1,Size category:4à创建function group:SE80,创建好后将创建的TABLE挂接到function grouph上去:用se11查出table,点utilites->table maintenance generator:Authorization groups:&NC&,Function group中填刚才创建的功能组名称->one step->overview screen中必须填未使用的number,此处screen number与table是一一对应的关系,也可让点系统上面的按钮:find screen number来自动搜索适合的scr. Number.->create,成功后,找到对应的function group中的screen number双击即可看到生成的代码.需要修改域名可在function group中的element list或layout中.–>se93创建t-code,start object选transaction with parameters(parameter transaction)->default values for->transantion:SM30->Default Values->name of screen field:viewname\update,value:table name\X.
47.  field-sign:,field—option:,field-low:表示选择条件中起始值
48.  在where子句中如果只有一个表的话,可以不用指定表名.
49.  获取用户IP地址及用户名:
  call function ‘TH_USER_INFO’    ” Get user IP,hostname
   importing
     hostaddr = iporg”转化前的IP地址
     terminal = host”计算机名
  exceptions
             others   = 1.
“Conv.IP addr to format ‘xxx.xxx.xxx.xxx’
  call function ‘ZGJ_IPADR2STRING’  “Conv.IP addr
  exporting
   ipadr   = iporg”转化前的IP地址
  importing
   string  = ipdec.”转化后的最终需要的IP地址
50.删除内表中数据完全相同的行,只保留一行:  delete adjacent duplicates from itab1 COMPARING / COMPARING ALL FIELDS.
51.  spro:后台设定
52.  输出选择框write:/ itab1-flag as checkbox
最后编辑:
作者:yangsen
有需要可在文章留言或者邮件yan252@163.com给我。

留下一个回复

你的email不会被公开。

5 + 15 =