AT END OF 的使用

 在集计时使用AT END OF方便。但是要注意的是,键以外的非数字部分都回变成“*”,为了避免这个问题可以定义一个临时工作区。

 

FORM FRM_EDIT_DATA .        
 DATA:            
      LW_PSPHI       TYPE PRPS-PSPHI,            "プロジェクト定義  
      LW_SUM1        TYPE ZKMEPSV0003-WKGBTR,    "製品保証費
      LW_SUM2        TYPE ZKMEPSV0003-WKGBTR,    "仕掛品本受計
      LTH_SYUKEI     TYPE TYP_DATA.      
             
 LOOP AT TD_SYUKEI INTO TH_SYUKEI.      
    LTH_SYUKEI = TH_SYUKEI.        
             
*- 出力金額の求め(期中)        
    IF RB_KITYU = CNS_FLG_ON.        
*- 原価要素=192          
      IF TH_SYUKEI-KSTAR = CNS_PARA192.    
        LW_SUM1 = TH_SYUKEI-WKGBTR + LW_SUM1.    "製品保証費
      ELSE.            
        LW_SUM2 = TH_SYUKEI-WKGBTR + LW_SUM2.    "仕掛品本受計
      ENDIF.          
      AT END OF BUDAT.                           "転記日付  
*--     プロジェクト定義の取得        
        PERFORM FRM_GET_PROJ USING    LTH_SYUKEI-POSID  
                             CHANGING LW_PSPHI. "プロジェクト  
             
*--     ADRCからデータ抽出        
        PERFORM FRM_GET_ADRC USING LW_PSPHI.    
*--     期中の出力金額        
        PERFORM FRM_EDIT_KITMONEY USING LW_SUM1  
                                        LW_SUM2.      
        CLEAR:LW_SUM1,        
              LW_SUM2.          
      ENDAT.          
* (期末)            

    ELSE.            
      TH_MID1-BUDAT = TH_SYUKEI-BUDAT.           "転記日付  
      TH_MID1-KSTAR = TH_SYUKEI-KSTAR.           "原価要素  
      TH_MID1-WKGBTR = TH_SYUKEI-WKGBTR.         "金額  
      APPEND TH_MID1 TO TD_MID1.      
      AT END OF POSID.        
*--     出荷工場本部の編集        
        TH_OUTTAB-ZZKSY = LTH_SYUKEI-ZZKSY.    
*--     機種          
        TH_OUTTAB-ZZSYUKAKZHNB = LTH_SYUKEI-ZZSYUKAKZHNB_P.
*--     補無償区分          
        TH_OUTTAB-ZZHOMUSYOKBN = LTH_SYUKEI-ZZHOMUSYOKBN.
*--     WBS要素          
        TH_OUTTAB-POSID = LTH_SYUKEI-POSID.    
*--     WBS要素名          
        TH_OUTTAB-POST1 = LTH_SYUKEI-POST1.    
*--     プロジェクト定義の取得        
        PERFORM FRM_GET_PROJ USING    LTH_SYUKEI-POSID  
                             CHANGING LW_PSPHI. "プロジェクト  
             
*--     ADRCからデータ抽出        
        PERFORM FRM_GET_ADRC USING LW_PSPHI.    
*--     期末の出力金額        
        PERFORM FRM_EDIT_MATMONEY.      
      ENDAT.          
             
    ENDIF.            
    CLEAR:            
    LTH_SYUKEI.          
 ENDLOOP.          
             
ENDFORM.                    " FRM_EDIT_DATA    
             

 

你可能感兴趣的:(AT END OF 的使用)