LOOP AT td_table INTO th_table WHERE

来源:互联网 发布:电影资源整站源码 编辑:程序博客网 时间:2024/06/08 07:04

通过该语句可以将表中符合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