ABAP内表汇总数据的方法汇总

ABAP内表汇总数据的方法汇总

本文主要介绍ABAP中使用内表统计的几种方式

四种统计方式

内表统计执行数据统计大致有下述几种方式, 这些方式本身没有优劣差异,根据实际情况选择一种使用就好.

COLLECT 语句实现

AT NEW 语句实现

LOOP AT GROUP 语句实现

READ 哈希表语句实现. SELECT SUM 也能汇总内表

数据准备

如图: 给出了内表定义及示例数据.

目标:原内表LT_DATA 结果按字段MATNR统计到内表LT_SUM中. 统计表中的WERKS 字留空或者保留第一行或最后一行的内容

COLLECT 语句实现

该语句的局限性: 目标内表中所有字段区分为关键字和指标(数字型).系统底层会是所有关键字创建临时哈希表,解决汇总的性能问题该方式另外的局限是: 不参与统计的字段必须清空.

AT NEW 语句实现

该语句的局限性: 参与统计的字段必须是内表前面的字段,并且需要先排序.如果统计结果中的地点需要放第一行或最后一行的地点, 可以通过特定逻辑实现.

LOOP AT GROUP实现

该语句无需排序,字段无需作为内表前面的字段, 但是性能比AT NEW 方式稍差.且无关字段只能使用第一行的.

备注: 如果统计表有多关键字,多关键字并列呈现即可

( MATNR = LW_GP-MATNR WERKS = LW_GP-WERKS ).

READ哈希表实现

需要定义一个哈希内表.循环内表读取哈希表.

总结

上述给出的四种常用的内表统计的方式.其中方式三的性能稍差,其它性能差不多. 实际应用中根据实际情况确定使用一种方式即可.

实际应用中,方式四使用更灵活. 方式一最简单,但是对汇总表结构要求较高.

相关推荐
爱喝水的鱼丶12 小时前
SAP-ABAP:SAP视图开发入门:四类标准视图的适用场景与创建步骤详解
服务器·数据库·性能优化·sap·abap
爱喝水的鱼丶1 天前
SAP-ABAP:SAP多表连接视图实战:内连接/外连接配置逻辑与性能优化技巧
运维·开发语言·学习·性能优化·sap·abap
爱喝水的鱼丶7 天前
SAP-ABAP:SAP基础数据校验工具开发系列博客(共5篇)第五篇:性能优化与上线运维:保障高并发场景下的工具稳定运行
运维·学习·性能优化·sap·abap·erp·经验交流
爱喝水的鱼丶7 天前
SAP-ABAP:SAP 内存管理详解:从架构到优化
开发语言·学习·架构·sap·abap·内存管理
爱喝水的鱼丶9 天前
SAP-ABAP:SAP基础数据校验工具开发系列博客(共5篇)第三篇:SAP接口对接开发:实现数据的实时/批量校验交互
运维·数据库·学习·性能优化·sap·abap·经验交流
duangww9 天前
IDCNACCTBLN 增强实现负号提前
abap
爱喝水的鱼丶10 天前
SAP-ABAP:SAP 简单报表输出开发系列(共6篇) 第四篇:SAP 报表异常处理机制:数据校验与消息提示规范落地
开发语言·数据库·学习·算法·sap·abap
duangww10 天前
FBL3N和FAGLL03升级S4 2023之后不显示供应商问题修复
abap
爱喝水的鱼丶10 天前
SAP-ABAP:SAP 简单报表输出开发系列(共6篇) 第五篇:SAP 报表多格式输出:Excel/PDF 批量导出功能实现
学习·性能优化·pdf·excel·sap·abap
风_沙10 天前
AI + SAP ADT实战案例(一):用 Codex 只读排查领料接口里的物料错位
人工智能·ai·sap·abap·erp