SAP ABAP——内表(七)【追加内表数据—COLLECT】

💬个人网站:【芒果个人日志】​​​​​​

💬原文地址:SAP ABAP——内表(七)【追加内表数据—COLLECT】 - 芒果个人日志 (wyz-math.cn)


💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后端的开发语言ABAP,SQL进行任务的完成,对SAP企业管理系统,SAP ABAP开发和数据库具有较深入的研究。


💅文章概要:本文主要介绍一下SAP ABAP中内表的增删查改语句中的追加内表数据的COLLECT相关语句


🤟每日一言:黄金时代是在我们的前面,而不在我们的后面。

目录

COLLECT语句

- 案例代码演示(关键字相同)

- 效果演示(关键字相同)

- 案例代码演示(关键字不同)

- 效果演示(关键字不同)


COLLECT语句

对内表使用COLLECT语句时,除了关键字以外的数据类型必须为数字类型(f,i,p)。SAP ABAP中COLLECT语句以关键字为基准合计内表中数字类型的字段,如果内表没有定义关键字,则会自动以字符串类型的字段为关键字。

COLLECT wa INTO itab.

- 案例代码演示(关键字相同)

TYPES:BEGIN OF TY_ITAB,
    COL1 TYPE CHAR20,
    COL2 TYPE F,
    COL3 TYPE I,
    COL4 TYPE P,
END OF TY_ITAB.

DATA:GT_ITAB TYPE TABLE OF TY_ITAB,
     GS_ITAB TYPE TY_ITAB.

GS_ITAB-COL1 = 'A'.
GS_ITAB-COL2 = 2.
GS_ITAB-COL3 = 5.
GS_ITAB-COL4 = 6.
COLLECT GS_ITAB INTO GT_ITAB.
CLEAR GS_ITAB.

GS_ITAB-COL1 = 'A'.
GS_ITAB-COL2 = 4.
GS_ITAB-COL3 = 5.
GS_ITAB-COL4 = 8.
COLLECT GS_ITAB INTO GT_ITAB.
CLEAR GS_ITAB.

GS_ITAB-COL1 = 'A'.
GS_ITAB-COL2 = 3.
GS_ITAB-COL3 = 4.
GS_ITAB-COL4 = 9.
COLLECT GS_ITAB INTO GT_ITAB.
CLEAR GS_ITAB.

LOOP AT GT_ITAB INTO GS_ITAB.
  WRITE:/ GS_ITAB-COL1,GS_ITAB-COL2,GS_ITAB-COL3,GS_ITAB-COL4.
ENDLOOP.

- 效果演示(关键字相同)

关键字相同COLLECT


- 案例代码演示(关键字不同)

TYPES:BEGIN OF TY_ITAB,
    COL1 TYPE CHAR20,
    COL2 TYPE F,
    COL3 TYPE I,
    COL4 TYPE P,
END OF TY_ITAB.

DATA:GT_ITAB TYPE TABLE OF TY_ITAB,
     GS_ITAB TYPE TY_ITAB.

GS_ITAB-COL1 = 'A'.
GS_ITAB-COL2 = 2.
GS_ITAB-COL3 = 5.
GS_ITAB-COL4 = 6.
COLLECT GS_ITAB INTO GT_ITAB.
CLEAR GS_ITAB.

GS_ITAB-COL1 = 'B'.
GS_ITAB-COL2 = 4.
GS_ITAB-COL3 = 5.
GS_ITAB-COL4 = 8.
COLLECT GS_ITAB INTO GT_ITAB.
CLEAR GS_ITAB.

GS_ITAB-COL1 = 'C'.
GS_ITAB-COL2 = 3.
GS_ITAB-COL3 = 4.
GS_ITAB-COL4 = 9.
COLLECT GS_ITAB INTO GT_ITAB.
CLEAR GS_ITAB.

LOOP AT GT_ITAB INTO GS_ITAB.
  WRITE:/ GS_ITAB-COL1,GS_ITAB-COL2,GS_ITAB-COL3,GS_ITAB-COL4.
ENDLOOP.

- 效果演示(关键字不同)

关键字不同COLLECT

  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ThundersArk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值