ABAP 每日随笔 day1

作者:SAPTAB 约 3 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, Data Engineering, 开发, 数据工程
ABAP 每日随笔 day1 - 封面图
ABAP 每日随笔 day1 - 封面图

Tab [ SAP TAB ](javascript:void\(0\);)

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

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

今天学习内联申明 inline

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

所以 划重点: 内联函数 加快了速度,但是空间占用了更多 。

ABAP 每日随笔 day1 - 封面图
ABAP 每日随笔 day1 - 封面图

内联申明:

描述 | 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 学习技术,热爱生活

SAPTAB

关于作者:SAPTAB

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「ABAP每日随笔day1.md」整理生成,仅用于内部技术分享与学习交流。