LOOP AT td_table INTO th_table WHERE

通过该语句可以将表中符合WHERH条件的数据读出来。

*&---------------------------------------------------------------------*

*&      Form FRM_GET_GENKA192   
*&---------------------------------------------------------------------*
*       原価要素=192のデータの抽出   
*----------------------------------------------------------------------*
FORM FRM_GET_GENKA192 .    
       
* 集計テーブルのループ
      
 LOOP AT TD_SYUKEI INTO TH_SYUKEI WHERE KSTAR = CNS_PARA192.
       
        TH_KIT192 = TH_SYUKEI.
        APPEND TH_KIT192 TO TD_KIT192.
        CLEAR: TH_KIT192.                          "ワーククリア
 ENDLOOP.
       
ENDFORM.                    " FRM_GET_GENKA192  

*&---------------------------------------------------------------------*

*&      Form FRM_DELETE_ZERO    
*&---------------------------------------------------------------------*
*       期中対象外データの削除     
*----------------------------------------------------------------------*
FORM FRM_DELETE_ZERO .     
 DATA:       
    LTD_SYUKEI    TYPE TABLE OF TYP_DATA,        "集計後テーブル 
    LW_SUM   TYPE P DECIMALS 2.                  "金額の累計  
* 原価要素=192のWBS要素が存在しない場合   
 IF TD_KIT192 IS INITIAL.     
*- テーブルのリフレッシュ     
    REFRESH TD_SYUKEI.     
 ENDIF.       
        
 LTD_SYUKEI = TD_SYUKEI.     
        
 LOOP AT LTD_SYUKEI INTO TH_SYUKEI.    
    READ TABLE TD_KIT192 INTO TH_KIT192   
               WITH KEY POSID = TH_SYUKEI-POSID.   
*- リータンコード判断      
    IF SY-SUBRC <> 0.     
*--   処理対象外として削除     
      DELETE TD_SYUKEI WHERE POSID = TH_SYUKEI-POSID.  
        
    ELSE.       
*--   WBS要素単位で集計     
      LOOP AT TD_KIT192 INTO TH_KIT192 WHERE POSID = TH_SYUKEI-POSID.
        LW_SUM = TH_KIT192-WKGBTR + LW_SUM.      "累計値  
      ENDLOOP.      
*--   累計金額の判断     
      IF LW_SUM = 0.      
*---    対象外のデータを削除する     
        DELETE TD_SYUKEI WHERE POSID = TH_KIT192-POSID.  
      ENDIF.      
      CLEAR:LW_SUM.      
    ENDIF.       
 ENDLOOP.      
        
ENDFORM.                    " FRM_DELETE_ZERO   
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值