最近看同事使用ABAP新语法贼溜,省了好多的功夫,还在使用老语法的我眼红了。

所以就自己补一补7.40之后语法,能够让自己写代码更顺畅吧。

今天学习内联申明 inline

意思是:当编译器发现某段代码在调用一个内联函数时,它不是去调用该函数,而是将该函数的代码,整段插入到当前位置。这样做的好处是省去了调用的过程,加快程序运行速度。(函数的调用过程,由于有前面所说的参数入栈等操作,所以总要多占用一些时间) 所以 划重点: 内联函数 加快了速度,但是空间占用了更多。

当你使用如下代码时:

内联申明:

描述  7.40之前  7.40之后
变量申明赋值 

Data text type string.

text = 'TAB'.

DATA(text) = 'TAB'
循环工作区

DATA wa LIKE LINE OF itab.

FIELD-SYMBOLS <FS> LIKE LINE OF itab.

LOOP AT itab INTO wa.

ENDLOOP.

LOOP AT itab ASSIGNING <FS>.

ENDLOOP.

LOOP AT itab into data(wa).

...

ENDLOOP.

LOOP AT itab ASSIGNING FIELD-SYMBOLS(<FS>).

...

ENDLOOP.

调用方法

DATA: a1 TYPE CHAR1.

oref->method_a1(

IMPORTING

  P1 = a1).

oref->method_a1(

  IMPORTING P1 = DATA(a1) ).

READ TABLE

DATA wa LIKE LINE OF itab.

FIELD-SYMBOLS <FS> LIKE LINE OF itab.

READ TABLE itab INTO wa INDEX 1.

READ TABLE itab ASSIGNING <FS> INDEX 1.

READ TABLE itab INTO DATA(WA) INDEX 1.

READ TABLE itab ASSIGING FIELD-SYMBOLS(<FS>) INDEX 1.

SQL 

DATA itab TYPE TABLE OF MARA.

SELECT * FROM MARA INTO TABLE itab

WHERE matnr = lv_matnr.

SELECT * FROM mara INTO TABLE @DATA(itab)
  WHERE matnr = lv_matnr.
SQL 2 

DATA:lv_matnr TYPE mara-matnr.
DATA:lv_matkl TYPE mara-matkl.

SELECT SINGLE matnr matkl INTO (lv_matnr,lv_matkl)
  FROM mara.

 SELECT SINGLE matnr,matkl INTO @DATA(lv_structue)
  FROM mara.

- TAB  学习技术,热爱生活。

2019.11.06 【每天学点SAP小知识】Day1 - ABAP 7.40新语法的更多相关文章

  1. 2019.11.18【每天学点SAP小知识】Day4 - ABAP 7.40新语法 FOR

    "今天学习一下FOR的语法,常用的2个语法. FOR wa|<fs> IN itab [INDEX INTO idx] [cond] "FOR i = … [THEN ...

  2. 2019.11.10【每天学点SAP小知识】Day3 - ABAP 7.40新语法 值转化和值赋值

    1.语法为 CONV dTYPE|#(...)\ # 代表任意类型 "7.40之前表达式 . DATA helper TYPE string. DATA xstr TYPE xstring. ...

  3. 2019.11.07【每天学点SAP小知识】Day2 - ABAP 7.40新语法 - 内表

    今天学习一下内表的表达式在ABAP 7.4之后的语法: SELECT * FROM mara INTO TABLE @DATA(gt_mara)UP TO 10 ROWS. DATA gt_mara_ ...

  4. 【ABAP系列】SAP ABAP7.40新语法简介第一篇

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...

  5. 【ABAP系列】SAP ABAP7.40新语法简介第二篇

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...

  6. 2019/11/12 CSP模拟赛&&考前小总结

    写在前面的总结 离联赛只有几天了,也马上就要回归文化课了. 有点舍不得,感觉自己的水平刚刚有点起色,却又要被抓回文化课教室了,真想在机房再赖几天啊. 像19/11/11那场的简单题,自己还是能敲出一些 ...

  7. 【2019.11.06】SDN上机第2次作业

    参考资料网址:https://www.cnblogs.com/TITIN24/p/11794970.html 利用mininet创建如下拓扑 要求拓扑支持OpenFlow 1.3协议,主机名.交换机名 ...

  8. 猫猫学iOS之小知识iOS启动动画_Launch Screen的运用

    猫猫分享,必须精品 原创文章.欢迎转载.转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243? viewmode=contents 看下效果吧 比如新浪微博的 ...

  9. 每天学点Java小知识【1】

    一 Java标识符和关键字 1.标识符 作用:用来标识类名.变量名.方法名.类型名.数组名.文件名的有效字符序列. 组成规则:由字母.下划线.美元符号和数字组成,且第一个字符不能是数字字符.注意:标识 ...

随机推荐

  1. Selenium3-浏览器与驱动对照

    在学selenium自动化测试时,遇到的第一个大问题便是浏览器版本.浏览器驱动版本与selenium的版本不对应,而无法驱动浏览器进行自动化操作. 收集了网上的一些技术文档,决定也整理一份相对较全面的 ...

  2. 数据库——Oracle(8)

    1 标准SQL外连接(二) 1) 全外连接:查询所有表所有的数据 格式: select 别名1.*/列名,别名2.*/列名 from 表1 别名1 full outer join 表2 别名2 on ...

  3. TCP的ACK原理和延迟确认机制

    某天晚上睡觉前突然想到 tcp的ACK确认是单独发的还是和报文一起发的,下面看一下别人的解答 一.ACK定义TCP协议中,接收方成功接收到数据后,会回复一个ACK数据包,表示已经确认接收到ACK确认号 ...

  4. Angular与Vue

    最近在考虑对前端js框架的选择 根据前人的总结,就总结一下 Angular与Vue 的特点与区别 速度/性能 虽然 Angular 和 Vue 都提供了很高的性能,但由于 Vue 的虚拟 DOM 实现 ...

  5. IDEA部署Tomcat报错:No artifacts marked for deployment

    刚开始碰到这个问题还被坑了,搞了好半天...所以我准备记录一下,走的弯路就不说了,因为我没图

  6. angular8 集成swiper, 并将swiper封装成公共组件

    安装Swiper npm install swiper --save 或者 yarn add swiper --save 在angular.json文件添加swiper.js和swiper.css   ...

  7. MySQL 异地 双机房同步之otter

    一.背景: 阿里巴巴B2B公司,因为业务的特性,卖家主要集中在国内,买家主要集中在国外,所以衍生出了杭州和美国异地机房的需求, 同时为了提升用户体验,整个机房的架构为双A,两边均可写,由此诞生了ott ...

  8. 报表开发工具!DevExpress Reporting v19.1:WPF/Web平台报表

    行业领先的.NET界面控件DevExpress Reporting全新发布了v19.1版本,本文主要为大家介绍WPF.Web平台中DevExpress Reporting发布的一些新功能及增强部分功能 ...

  9. PHP swoole UDP服务端和客户端

    服务端 <?php $serv = ,SWOOLE_PROCESS,SWOOLE_SOCK_UDP); $serv->on('Packet',function ($serv,$data,$ ...

  10. js数据持久化本地数据存储-JSON.parse和JSON.stringify的区别

    JSON.stringify()的作用是将 JavaScript 值转换为 JSON 字符串, 而JSON.parse()可以将JSON字符串转为一个对象. 简单点说,它们的作用是相对的,我用JSON ...