自定义表维护程序的修改

    技术2022-05-20  42

      最近有两个需求是对OB52和OB08两个TCODE加入一些自定义逻辑。主要是由于原先标准TCODE有操作的权限,并且没有区分业务组织进行权限控制。

      

      需求:建一个TCODE:ZROB08 仅有读取的权限。

      SE93看OB08是基于SM30调用视图V_TCURR

     

    VIEWNAME       V_TCURRUPDATE         X

     

     

    复制V_TCURR新建了一个视图ZV_TCURR,然后利用SE11中的Table Maintainace Generator新建TABLE MAINTAIN,然后拷贝OB08建立新的TCODE:ZROB08

     

    VIEWNAME       ZV_TCURRUPDATE         X

     

    执行时发现ZROB08和OB08的屏幕不一样,表和视图的复制并不会将相应的Table Maintainace也复制过来。而ZROB08按同一个视图建出来的维护界面不同,说明OB08在PBO和PAI中写了其它的处理逻辑。

     

     

     

     

    利用table maintainace generator 创建的是0001屏幕,由于跟V_TCURR的维护界面有差异,所以把FUNCTION GROUP 0SAP中的0020屏幕拷贝过来,将原来的0001删除,然后0020再COPY后保存为0001屏幕。

     

    这样基本保存了原有的OB08的SM30维护界面, PBO和PAI中原来的V_TCURR,有很多地方要修改为ZV_TCURR。

     

     

     

    自定义的逻辑可以写在这两个地方

     

     

     

     

     

    VIEWFRAME_ZV_TCURR 就是用不同的参数调用VIEWPROC_ZV_TCURR' ,从而来控制修改、后退、保存等功能。 

     

     CALL FUNCTION 'VIEWPROC_ZV_TCURR'

     

     


    最新回复(0)