实战SAP程序开发-从实例学ABAP 4.7.1

2021-12-12 23:51发布


          点击此处--->   EasySAP.com 群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)

image.png

*&------------------------------------------------------------*
*&程序名:ZSAP900121201                                                *
*&程序描述:this is for read  table from inner   table or workarea                                                  *
*&创建人:                                                    *
*&创建时间:     2021 121223:42                                             *
*&------------------------------------------------------------*
REPORT ZSAP900121201."NO STANDARD PAGE HEADING "LINE-SIZE  80
             "LINE-COUNT 65(0)        "MESSAGE-ID

* define  workarea

data a_spfli type  spfli.

* *定义内表,请注意有HEADER LINE.
DATA TA_SPFLI TYPE TABLE OF SPFLI WITH HEADER LINE.

*分隔线
ULINE.
WRITE '1使用工作区 table--->work --output'.
ULINE.

*将数据表逐行转移至工作区,只读首5行  table----->workarea
*对于自定义结构(字段少于数据表字段)CORRESPONDING FIELDS OF非常重要, *在本例中不使用CORRESPONDING FIELDS OF也是正确的,因为结构完全一样。

SELECT INTO CORRESPONDING FIELDS OF A_SPFLI FROM SPFLI UP TO ROWS.
WRITE/ a_spfli-CONNID A_SPFLI-CARRID A_SPFLI-CITYFROM A_SPFLI-CITYTO.
ENDSELECT.
ULINE.
WRITE '2.使用内表 table--->innertable--->output'.
ULINE.


*从数据表读数据至内表,直接从内表输出   table--->innertable(with header line)
*如果TA.SPFLI没有定义HEADER LINE,会出错
SELECT INTO CORRESPONDING FIELDS OF
TABLE TA_SPFLI FROM SPFLI UP TO ROWS.
LOOP AT TA_SPFLI.
WRITE / TA_SPFLI-CONNID TA_SPFLI-CARRID TA_SPFLI-CITYFROMTA_SPFLI-CITYTO.
ENDLOOP.

ULINE.
WRITE '3.将内表数据转移至工作区,innertable----> workarea'.
ULINE.

LOOP AT TA_SPFLI INTO A_SPFLI.
WRITE / A_SPFLI-CONNID A_SPFLI-CARRID A_SPFLI-CITYFROM A_SPFLI-CITYTO.
ENDLOOP.

赞赏支持