博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【实用】SAP修改记录表开发
阅读量:2035 次
发布时间:2019-04-28

本文共 3814 字,大约阅读时间需要 12 分钟。

首先我们看一下运行效果图:

大部分都是CDHDR表的查询字段。

双击某一行可以查看具体的修改明细字段。

源代码:

REPORT Z_ALV_CDHDR_CDPOS.TYPE-POOLS SLIS.DATA : CDHDR TYPE CDHDR.SELECT-OPTIONS :        S_OBJCLS FOR CDHDR-OBJECTCLAS OBLIGATORY,        S_OBJTID FOR CDHDR-OBJECTID,        S_CHNGNR FOR CDHDR-CHANGENR,        S_USRNAM FOR CDHDR-USERNAME,        S_UDATE FOR CDHDR-UDATE,        S_TIME FOR CDHDR-UTIME,        S_TCODE FOR CDHDR-TCODE,        S_PLNCNR FOR CDHDR-PLANCHNGNR,        S_CHNGNO FOR CDHDR-ACT_CHNGNO,        S_WSPLND FOR CDHDR-WAS_PLANND,        S_CHNGID FOR CDHDR-CHANGE_IND.SELECTION-SCREEN SKIP.PARAMETERS P_MAX TYPE NUMC3 OBLIGATORY DEFAULT '200'.*---------------------------------------------------------------------*TYPES :BEGIN OF TY_S_CDHDR.        INCLUDE STRUCTURE CDHDR.TYPES : CHECKBOX,        END OF TY_S_CDHDR,        BEGIN OF TY_S_CDPOS.        INCLUDE STRUCTURE CDPOS.TYPES : CHECKBOX,END OF TY_S_CDPOS.*---------------------------------------------------------------------*DATA :* Layout for ALV  GS_LAYOUT TYPE SLIS_LAYOUT_ALV,* Change document header  T_CDHDR   TYPE TABLE OF TY_S_CDHDR.*---------------------------------------------------------------------*START-OF-SELECTION.* Read Change document header  SELECT * INTO TABLE T_CDHDR  UP TO P_MAX ROWS  FROM CDHDR  WHERE OBJECTCLAS IN S_OBJCLS  AND OBJECTID IN S_OBJTID  AND CHANGENR IN S_CHNGNR  AND USERNAME IN S_USRNAM  AND UDATE IN S_UDATE  AND UTIME IN S_TIME  AND TCODE IN S_TCODE  AND PLANCHNGNR IN S_PLNCNR  AND ACT_CHNGNO IN S_CHNGNO  AND WAS_PLANND IN S_WSPLND  AND CHANGE_IND IN S_CHNGID.  GS_LAYOUT-ZEBRA = 'X'.  GS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.  GS_LAYOUT-BOX_FIELDNAME = 'CHECKBOX'.* Display ALV  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'    EXPORTING      I_CALLBACK_PROGRAM      = SY-CPROG      I_CALLBACK_USER_COMMAND = 'USER_COMMAND'      I_STRUCTURE_NAME        = 'CDHDR'      IS_LAYOUT               = GS_LAYOUT    TABLES      T_OUTTAB                = T_CDHDR.*---------------------------------------------------------------------** FORM USER_COMMAND **---------------------------------------------------------------------*FORM USER_COMMAND USING U_UCOMM TYPE SYUCOMM      US_SELFIELD TYPE SLIS_SELFIELD.                       "#EC CALLED* Macro definition  DEFINE M_SORT.    ADD 1 TO ls_sort-spos.    ls_sort-fieldname = &1.    ls_sort-UP = 'X'.    APPEND ls_sort TO lt_sort.  END-OF-DEFINITION.  DATA :    LS_CDHDR TYPE TY_S_CDHDR,    LS_SORT  TYPE SLIS_SORTINFO_ALV,    LT_SORT  TYPE SLIS_T_SORTINFO_ALV,* Change document items    LT_CDPOS TYPE TABLE OF TY_S_CDPOS.  CASE U_UCOMM.    WHEN '&IC1'.      PERFORM CHECK_MARKED USING US_SELFIELD.* Read Change document items      LOOP AT T_CDHDR INTO LS_CDHDR WHERE CHECKBOX = 'X'.        SELECT * APPENDING TABLE LT_CDPOS        FROM CDPOS        WHERE OBJECTCLAS = LS_CDHDR-OBJECTCLAS        AND OBJECTID = LS_CDHDR-OBJECTID        AND CHANGENR = LS_CDHDR-CHANGENR.      ENDLOOP.      M_SORT 'CHANGENR'.* Display ALV      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'        EXPORTING          I_STRUCTURE_NAME = 'CDPOS'          IS_LAYOUT        = GS_LAYOUT          IT_SORT          = LT_SORT        TABLES          T_OUTTAB         = LT_CDPOS.  ENDCASE.ENDFORM. " USER_COMMAND*---------------------------------------------------------------------** Form CHECK_MARKED*---------------------------------------------------------------------** What has been marked in t_cdhdr*---------------------------------------------------------------------*FORM CHECK_MARKED USING US_SELFIELD TYPE SLIS_SELFIELD.  FIELD-SYMBOLS : 
TYPE TY_S_CDHDR. READ TABLE T_CDHDR TRANSPORTING NO FIELDS WITH KEY CHECKBOX = 'X'. IF NOT SY-SUBRC IS INITIAL AND NOT US_SELFIELD-TABINDEX IS INITIAL. READ TABLE T_CDHDR INDEX US_SELFIELD-TABINDEX ASSIGNING
.
-CHECKBOX = 'X'. ENDIF.ENDFORM. " CHECK_MARKED

你可能感兴趣的文章
不重新启动计算机更改ssh监听端口
查看>>
apache https反向代理设置方案
查看>>
用于实现Web Services安全性的HTTPS
查看>>
Linux+Apache+PHP+MySQL+SSL配置详解
查看>>
wxzh001,进来看关于APACHE+PHP+MYSQL+SSL的LINUX下安装配置(转自奥索)
查看>>
为Apache增加SSL安全保护
查看>>
zz FC4: Snort+mysql+Apache(with mod_ssl)+php+ACID安装日志
查看>>
安装并使用 SSL
查看>>
linux mount 常见使用方法
查看>>
chown bbs:bbs
查看>>
从 C10K 到 C500K
查看>>
(转载)RHEL/CentOS 5.5使用第三方软件库(EPEL与RPMForge、RPMFusion软件库)
查看>>
[转载]History(历史)命令用法 15 例
查看>>
python的安装和版本选型
查看>>
google app api相关(商用)
查看>>
linux放音乐cd
查看>>
开源im方案之openfire
查看>>
OneNote无法同步问题
查看>>
GridView选择性导出Excel
查看>>
GridView+存储过程实现'真分页'
查看>>