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

DATA gs_mara TYPE mara.
SELECT * FROM mara INTO TABLE @DATA(gt_mara) UP TO ROWS. *FOR wa|<fs> IN itab [INDEX INTO idx] [cond]
TYPES:ty_matnr TYPE mara-matnr,
ty_t_matnr TYPE TABLE OF ty_matnr WITH EMPTY KEY. "1 将gt_mara 赋值给 gt_maktx
*旧语法:
DATA gt_matnr1 TYPE ty_t_matnr.
DATA gs_matnr1 TYPE ty_matnr.
LOOP AT gt_mara INTO gs_mara WHERE mtart = 'ROH'.
.
gs_matnr1 = gs_mara-matnr.
APPEND gs_matnr1 TO gt_matnr1.
ENDLOOP.
*新语法 ls_mara仅为临时变量,程序会临时定义并赋值,ls_matnr-matnr 和 ty_t_matnr的行类型一定要保持一致
"功能是将 gt_mara中的物料号赋值给gt_matnr2
DATA(gt_matnr2) = VALUE ty_t_matnr( FOR ls_mara IN gt_mara ( ls_mara-matnr ) ). *当加上where条件时
DATA(gt_matnr3) = VALUE ty_t_matnr( FOR ls_mara IN gt_mara WHERE ( mtart = 'ROH' ) ( ls_mara-matnr ) ). "for with THEN and UNTIL | WHERE *旧语法:
TYPES:BEGIN OF ty_line,
a TYPE i,
b TYPE i,
c TYPE i,
END OF ty_line,
ty_t_line TYPE TABLE OF ty_line WITH EMPTY KEY.
DATA j TYPE i.
DATA gt_lines1 TYPE ty_t_line.
FIELD-SYMBOLS <ls_line1> TYPE ty_line.
j = . DO.
j = j + .
IF j > . EXIT. ENDIF.
APPEND INITIAL LINE TO gt_lines1 ASSIGNING <ls_line1>.
<ls_line1>-a = j.
<ls_line1>-b = j + .
<ls_line1>-c = j + .
ENDDO. *新语法 x未表达式中隐式定义的变量
DATA(gt_lines2) = VALUE ty_t_line( FOR x = THEN x + UNTIL x >
( a = x b = x + c = x + ) ).

for ls_data in gt_data 相当于 用一个临时变量 来 循环gt_data.

-Tab

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

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

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

  2. 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_ ...

  3. 2019.11.06 【每天学点SAP小知识】Day1 - ABAP 7.40新语法

    最近看同事使用ABAP新语法贼溜,省了好多的功夫,还在使用老语法的我眼红了. 所以就自己补一补7.40之后语法,能够让自己写代码更顺畅吧. 今天学习内联申明 inline 意思是:当编译器发现某段代码 ...

  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.18】SDN阅读作业

    为什么需要SDN?SDN特点? 随着网络的快速发展,传统互联网出现了如传统网络配置复杂度高等诸多问题,这些问题说明网络架构需要革新,可编程网络的相关研究为 SDN 的产生提供了可参考的理论依据 SDN ...

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

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

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

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

随机推荐

  1. AIX文件系统/var空间100%的问题

    一.问题说明/var/spool/mqueue目录下出现了多个df打头的文件,导致/var空间最终100% EBANK_P570_MAIN/var/spool/mqueue#ls -l total 8 ...

  2. 《编译原理》LR 分析法与构造 LR(1) 分析表的步骤 - 例题解析

    <编译原理>LR 分析法与构造 LR(1) 分析表的步骤 - 例题解析 笔记 直接做题是有一些特定步骤,有技巧.但也必须先了解一些基本概念,本篇会通过例题形式解释概念,会容易理解和记忆,以 ...

  3. cookie实例---显示上一次访问的时间与java.lang.IllegalArgumentException: An invalid character [32] was present in the Cookie value

    创建Cookie,名为lasttime,值为当前时间,添加到response中: 在A.jsp中获取请求中名为lasttime的Cookie: 如果不存在输出“您是第一次访问本站”,如果存在输出“您上 ...

  4. Vim常用插件命令手册

    此文章记录了,笔者使用的插件中的主要命令. junegunn/vim-plug :PlugInstall 安装插件 :PlugClean 清理插件 :PlugUpgrade 升级插件管理器 :Plug ...

  5. Java mongodb api疑问之MongoCollection与DBCollection

    在学习Java mongodb api时发现,可以调用不同的java mongodb api来连接数据库并进行相关操作. 方式一: 该方式使用mongoClient.getDB("xxx&q ...

  6. 【51nod 2004】终结之时

    题目大意 "将世界终结前最后的画面,深深刻印进死水般的心海." 祈愿没有得到回应,雷声冲破云霄,正在祈愿的洛天依受到了极大的打击. 洛天依叹了口气,说:"看来这个世界正如 ...

  7. CentOS 7 下Emacs无法录入中文的问题

    Emacs下的各种快捷键操作,实在是太方便了,像毒药一样让人上瘾! 问题描述: 最近重装了系统以及各种软件,但是碰到一个奇怪的问题,安装了极点五笔中文输入法,系统语言也设置为中文,结果在vim.ged ...

  8. Python之hashlib模块的使用

    hashlib模块主要的作用: 加密保护消息安全,常用的加密算法如MD5,SHA1等. 1.查看可用的算法有哪些 #!/usr/bin/env python # -*- coding: utf-8 - ...

  9. removeAttr(name)

    removeAttr(name) 概述 从每一个匹配的元素中删除一个属性 1.6以下版本在IE6使用JQuery的removeAttr方法删除disabled是无效的.解决的方法就是使用$(" ...

  10. .Net面向对象(OOP)

    序言 virtual虚方法 virtual 关键字用于在基类中修饰方法.virtual的使用会有两种情况: 情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法.那么在对派生类实例的 ...