欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

【测试】批量删除供应商配额(Quota )

发布时间:2025/3/20 36 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【测试】批量删除供应商配额(Quota ) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

【测试代码】

 

查询代码:

主要涉及Table:EQUK(配额文件: 标题)和 EQUP(配额文件:项目)

 

***选择屏幕 SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001. PARAMETERS: P_WERKS TYPE EQUK-WERKS DEFAULT '1200' OBLIGATORY. SELECT-OPTIONS: S_MATNR FOR EQUK-MATNR MODIF ID G2. SELECTION-SCREEN END OF BLOCK B1.*** 定义内表 TYPES:BEGIN OF TY_DISPLAY,MATNR TYPE EQUK-MATNR,WERKS TYPE EQUK-WERKS,BDATU TYPE EQUK-BDATU,VDATU TYPE EQUK-VDATU,QUNUM TYPE EQUK-QUNUM,ERDAT TYPE EQUK-ERDAT,ERNAM TYPE EQUK-ERNAM,SCMNG TYPE EQUK-SCMNG,MESSAGE TYPE BAPI_MSG, END OF TY_DISPLAY. DATA: GT_EQUP TYPE EQUP OCCURS 0 WITH HEADER LINE,GT_DISPLAY TYPE TY_DISPLAY OCCURS 0 WITH HEADER LINE.*** 查询数据SELECT * FROM EQUKINTO CORRESPONDING FIELDS OF TABLE GT_DISPLAY WHERE WERKS = P_WERKSAND MATNR IN S_MATNR.IF GT_DISPLAY[] IS NOT INITIAL.SORT GT_DISPLAY BY QUNUM.SELECT * FROM EQUPINTO CORRESPONDING FIELDS OF TABLE GT_EQUPFOR ALL ENTRIES IN GT_DISPLAY WHERE QUNUM = GT_DISPLAY-QUNUM.SORT GT_EQUP BY QUNUM.LOOP AT GT_DISPLAY .LV_INDEX = SY-TABIX.READ TABLE GT_EQUP WITH KEY QUNUM = GT_DISPLAY-QUNUM BINARY SEARCH.IF SY-SUBRC <> 0.DELETE GT_DISPLAY INDEX LV_INDEX.ENDIF.ENDLOOP.ENDIF.

删除代码:

*** 定义内表 DATA: T_XEQUK TYPE EQUKU OCCURS 0 WITH HEADER LINE,"T_XEQUP TYPE UEQUP OCCURS 0 WITH HEADER LINE,"T_YEQUK TYPE EQUKU OCCURS 0 WITH HEADER LINE,"T_YEQUP TYPE UEQUP OCCURS 0 WITH HEADER LINE."*** 删除配额LOOP AT GT_DISPLAY INTO GW_DISPLAY.READ TABLE GT_EQUP WITH KEY QUNUM = GW_DISPLAY-QUNUM BINARY SEARCH.IF SY-SUBRC = 0.LV_INDEX = SY-TABIX.*** 配额抬头信息CLEAR : T_XEQUK,T_YEQUK.MOVE-CORRESPONDING GW_DISPLAY TO T_XEQUK.APPEND T_XEQUK.MOVE-CORRESPONDING GW_DISPLAY TO T_YEQUK.T_YEQUK-KZ = 'U'. "更改类型 (U, I, E, D)APPEND T_YEQUK.*** 项目明细信息CLEAR GT_EQUP.LOOP AT GT_EQUP FROM LV_INDEX.IF GT_EQUP-QUNUM <> GW_DISPLAY-QUNUM.EXIT.ENDIF.CLEAR T_YEQUP.MOVE-CORRESPONDING GT_EQUP TO T_YEQUP.APPEND T_YEQUP.CLEAR: GT_EQUP.ENDLOOP.ENDIF.CLEAR W_DISPLAY.ENDLOOP.CALL FUNCTION 'ME_UPDATE_QUOTA'TABLESXEQUK = T_XEQUKXEQUP = T_XEQUPYEQUK = T_YEQUKYEQUP = T_YEQUP.IF SY-SUBRC = 0. *** 删除成功ELSE. *** 删除失败ENDIF.

总结

以上是生活随笔为你收集整理的【测试】批量删除供应商配额(Quota )的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。