SAP BW/ ABAP 内表操作记录

TYPES:           //定义结构体
      BEGIN OF   S_PRIC,
              MATERIAL  TYEP  /BIO/0IMATERIAL,
              PURCH_ORG  TYPE   /BIO/0IPURCH_ORG,
              /BIC/ZDP_SCAT  TYPE /BIC/0IZDP_SCAT,
      END OF    S_PRIC.
 
     BEGIN OF S_MAT
              MATERIAL  TYPE  /BIO/0IMATERIAL,
              MAT_GROUP  TYPE /BIO/0IMATL_GROUP,
      END OF S_MAT.


DATA:        //定义内表 的结构与结构体一致
           T_PRIC   TYPE   STANDARD  TABLE   OF   S_PRIC .   
           T_MAT   TYPE   STANDARD  TABLE   OF   T_MAT.

FIELDS-SYMBOLS:   //定义指针指向结构体
            <PRIC> TYPE S_PRIC,
            <MAT> TYPE S_MAT.
            
            
DATA:  zdata  TYPE  ZSETVAL  //定义一个字段

SELECT SINGLE MMVAL FROM ZDBW_MM_SETING
        INTO zdata  WHERE MMSET = 'NPRC_JZDAT'.        //将seting表中的mmval字段插到zdata字段中
        
        
SELECT   MATERIAL   PURCH_ORG     /BIC/ZDP_SCAT        
        INTO  CORRESPONDING FIELDS OF TABLE T_PRIC
        FROM  /BIC/AZDPN_O8100
        FOR ALL ENTRIES IN SOURCE_PACKAGE
        WHERE MATERIAL = SOURCE_PACKAGE-MATERIAL
              AND PURCH_ORG = SOURCE_PACKAGE-PURCH_ORG
              AND /BIC/ZDP_SCAT = SOURCE_PACKAGE-/BIC/ZDP_SCAT
              AND CALMONTH = zdata+0.
            
SELECT MATERIAL   MAT_GROUP
        INTO CORRESPONDING FIELDS OF TABLE T_MAT
        FROM /BIO/PMATERIAL
        FOR ALL ENTRIES IN SOURCE_PACKAGE
        WHERE MATERIAL = SOURCE_PACKAGE-MATERIAL
        AND OBJVERS = 'A'.

SORT T_MAT BY MATERIAL.          将T_MAT内表中按物料排序
            
LOOP AT SOURCE_PACKAGE ASSINGING <SOURCE_FIELDS>.
      //将内表中的数据读出来用指针来实现,而指针定义于结构体
      READ TABLE T_PRIC ASSIGNING <PRIC> WITH KEY
      MATERIAL = <SOURCE_FIELDS>-MATERIAL
      PURCH_ORG = <SOURCE_FIELDS>-PURCH_ORG
      /BIC/ZDP_SCAT = <SOURCE_FIELDS>-/BIC/ZDP_SCAT  BINARY SEARCH.    //BINARY SEARCH :二分搜索法法

      IF-SUBRC = 0.
         DELETE SOUCE_PACKAGE.
      ELSE.
         READ TABLE T_MAT ASSIGNING  <MAT> WITH KEY 
         MATERIAL = <SOURCE_FIELDS>-MATERIAL BINARY SEARCH.
         ........
         ........
         ........
ENDLOOP

猜你喜欢

转载自blog.csdn.net/qq_38353191/article/details/86597359
今日推荐