• VALUE

  • MOVE-CORRESPONDING

  • CORRESPOING

  • FOR

  • REDUCE

  • GROUP BY

  • FILTER

VALUE语法:

结构赋值

... VALUE dtype | #(  [BASE dobj] comp1 = dobj1 comp2 = dobj2 ... ) ...

内表赋值

... VALUE dtype | #( [BASE itab] (  (line1-com1 = dobj1) ( line2 ..) ... ) ...

 "内表不能带表头
IT_VKORG = VALUE #( KUNNR = E_KNA1-KUNNR ( VKORG = '3000' )
( VKORG = '6008' ) ) .

 lt_fieldnames = VALUE #(                          ( fieldname = '公司代码' )                          ( fieldname = '供应商编码' )                          ( fieldname = '供应商描述' )                          ( fieldname = '供应商返利值' )                          ( fieldname = '供应商余额' )                          ( fieldname = '供应商余额与返利值差额' )                          ( fieldname = '取数年月' )                          ( fieldname = '实销实结本月总金额' )                          ( fieldname = '上月累积未结算' )                          ( fieldname = '已结算金额' )                          ( fieldname = '未结算金额' )                          ( fieldname = '匹配余额' )                          ( fieldname = '铺底金额' )                          ( fieldname = '供应商库存金额' )​

MOVE-CORRESPONDING语法:

CORRESPONDING语法:把B表里相同字段的值赋值到A表

示例:

itab[ … ]语法

… itab[ … ] …

相当于read table itab ….

u缺点

如果对应没找到,会抛出CX_SY_ITAB_LINE_NOT_FOUND异常

系统变量SY-SUBRC不会记录成功与否

u改进

IF line_exists ( itab[…] )

…..

ENDIF

通过这行语法判断行是否查找到

FOR语法

描述

加强版本的loop at语法,与REDUCE、VALUE关键字配合使用

语法

…FOR i = ... [THEN expr]  UNTIL | WHILE  log_exp ...

…VALUE  itab( FOR i = … [THEN expr]  UNTIL | WHILE  log_exp ... )

…REDUCE  type( INIT FOR  …. NEXT …..

REDUCE语法

GROUP BY语法

FELTER语法

描述

可以根据指定值(一个)或者指定内表(多个)的值过滤itab并返回itab类型的结果集

语法

FILTER  type(  itab   [EXCEPT]   [IN ftab]   [USING KEY keyname ]
                                                                   WHERE c1 op f1  [AND c2 op f2  [...] ]  ) ...

变式

FILTER  type( itab …) 对应一个值过滤

FILTER  type( itab in tab …)对应多个值过滤

其它

EXCEPT如果不指定则表示满足条件的找出来,如果指定则表示不满足条件的找出来

WHERE对应过滤的条件,是必须要指定的

3. OPEN SQL

    SELECT SINGLE @ABAP_TRUE INTO @DATA(EXISTS) FROM KNA1 WHERE KUNNR EQ @I_KNA1-KUNNR.
IF EXISTS <> ABAP_TRUE.

ENDIF.

乐善好施,能学新知!!!
上一个打赏的兄dei已经解锁66种新姿势了

 下一个就看您了

滴赏一下,立马上车

ABAP语法篇2 内表操作语法的更多相关文章

  1. [SAP ABAP开发技术总结]内表操作

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  2. ABAP基础篇1 内表

    内表类型 abap 内表类型有三种: 标准表(一般ABAP程序中用的最多就是这种表) 系统为该表的每一行数据生成一个逻辑索引,自己内部维护着行号(Index)的编码.表的键值不唯一,且没有按照表键自动 ...

  3. ABAP 7.4 新语法-内嵌生命和内表操作(转)

    转自:https://www.cnblogs.com/mingdashu/p/6744637.html ABAP 7.4 新语法-内嵌生命和内表操作   1.内嵌声明 2.内表操作 3.opensql ...

  4. ABAP 7.4 新语法-内嵌生命和内表操作

    1.内嵌声明 2.内表操作 3.opensql ************************************************************************ 1. ...

  5. Abap 内表的语法

    ABAP中的内表相当于其他程序设计语言中的二维数组,存储多行结构相同的数据 不同于二维数组,内表在创建后,列结构与列数是固定不变的,而行数是动态增长的  内表支持循环对每行数据进行操作,也支持整体操作 ...

  6. 介绍一种在ABAP内核态进行内表高效拷贝的方法,和对应的Java和JavaScript版本的伪实现

    内表操作是ABAP开发人员几乎在每个ABAP程序里都会遇到的. 看一个例子:有两个行结构不一样的内表,每个内表的行结构有三列,除了name这一列名字一致外,其他两列的名称都不同,下图用红色和蓝色标注出 ...

  7. Django之模型层第二篇:多表操作

    Django之模型层第二篇:多表操作 一 表关系回顾 ​ 在讲解MySQL时,我们提到,把应用程序的所有数据都放在一张表里是极不合理的. ​ 比如我们开发一个员工管理系统,在数据库里只创建一张员工信息 ...

  8. Django之模型层第一篇:单表操作

    Django之模型层第一篇:单表操作 一 ORM简介 ​ 我们在使用Django框架开发web应用的过程中,不可避免地会涉及到数据的管理操作(如增.删.改.查),而一旦谈到数据的管理操作,就需要用到数 ...

  9. 【ABAP系列】SAP ABAP 取两个内表的交集 比较两个内表的不同

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 取两个内表的交 ...

随机推荐

  1. 从零实现jQuery的extend

    前言 jQuery 的 extend 是 jQuery 中应用非常多的一个函数,今天我们一边看 jQuery 的 extend 的特性,一边实现一个 extend! extend 基本用法 先来看看 ...

  2. 学习Spring-Data-Jpa(一)---JPA、Spring-Data-Jpa简介

    写在前面:在国内使用比较多的ORM框架应该就是Mybatis了,但是现在SpringBoot和SpringCloud这么火爆,而Spring-Data-Jpa同样作为Spring家族的成员,它们无缝的 ...

  3. (三)IDEA使用,功能面板

    IDEA 打开界面后周围有许多的功能面板 常用的界面 1.project:项目的目录结构: 2.Structure:结构界面:在这个界面里可以看到选择的类,接口 的结构,有哪些方法,字段,等: 3. ...

  4. Hive-2.3.6 安装

    本安装依赖Haddop2.8安装 https://www.cnblogs.com/xibuhaohao/p/11772031.html 一.下载Hive与MySQL jdbc 连接驱动 apache- ...

  5. springboot 2.1.6发布

    最新消息: Spring Boot 2.1.6 昨天正式发布了,日常更新一些依赖和修复一些 BUG,没什么硬菜! 重点来了,Spring Boot 1.5 将于今年 8 月结束使命,请尽快迁移到 Sp ...

  6. RookeyFrame 迁移 线下Model 新增属性 迁移 到数据库

    在类库 Rookey.BusSys.Operate(类库) -> InitOperate.cs(类)  -> App_Start(方法) 添加代码(举例): ToolOperate.Rep ...

  7. PHP 鸟哥:我也曾经是“不适合”编程的人

    网名:雪候鸟,大家尊称鸟哥,惠新宸 @Laruence, 是国内最有影响力的 PHP 技术专家,PHP 开发组核心成员,PECL 开发者,Zend 公司外聘顾问.他曾供职于雅虎,百度,现在新浪微博任平 ...

  8. 连接到 redis 服务

    连接到 redis 服务 <?php //连接本地的 Redis 服务 $redis = new Redis(); $redis->connect('127.0.0.1', 6379); ...

  9. subcode

    在思考.查阅subcode时,我发现Magma,Sage Math软件都提供了具体的命令和例子,对subcode的认识比较具象. 例如:Sage Math中有如下命令: C1 = codes.Hamm ...

  10. 微信小程序 图片设置为圆形

    要图片圆形显示,需要设置border-radius:50%,还要设置overflow:hidden,具体如下: Tip:user-avatar是图片控件的class .user-avatar { wi ...