SAP小技巧之 查看系统隐藏代码

2021-10-30 18:47发布


          点击此处--->   EasySAP.com 群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)

前言:

    SAP小技巧系列主要是记录一些项目中碰到的问题及解决思路与方式.这些问题可能你也碰到过,希望能给你一些帮助.

正文:

    最近解决一个问题时需要查看SAP登录的处理代码, (程序名 SAPMSYST 中整合了SAP的登录处理逻辑). 但是发现这个程序无法用SE38查看. 

跟踪SE38的过程发现,  REPORT SOURCE 语句无法获取这个程序的内容. 估计SAP在底层通过特殊方式屏蔽了这个程序代码的读取. 

    解决办法.如下: 

  • 创建一个程序 ZSAPMSYST

  • 通过DB02 SQL语句把SAPMSYST的代码写入到 ZSAPMSYST .

  • UPDATE REPOSRC SET DATA = ( SELECT DATA FROM REPOSRC WHERE PROGNAME = 'SAPMSYST' )

    WHERE PROGNAME = 'ZSAPMSYST'

    这样用SE38 查看ZSAPMSYST 代码就可以看到标准程序SAPMSYST的代码了. 

    这个技巧也可以解决一些因为SAPMSYST代码丢失(可以是因为使用了 READ REPORT 'SAPMSYST' INTO INT_TAB.INSERT REPORT 'SAPMSYST' FROM INT_TAB.之类的语句,因为之前的READ REPORT 语句读取不到这个程序的内容, 所以导致写入了一个空代码到SAPMSYST中.) 这样导致的后果是整个系统无法登陆了. 

    此时可以登录HANA数据库, 用SQL语句把另外一个SAP系统的SAPMSYST代码内容 REPOSRC-DATA 写入到无法登录的SAP系统. 从而解决这个问题. 

    最后慎重提示一下: SAPMSYST是系统很核心的程序,所以SAP要隐藏该代码,避免用户编辑. 大家可以通过这个技巧查看它的内容. 理解一些SAP的标准登录逻辑. 但一定不要尝试修改它. 因为你可能面对无法登录系统的风险. 



    如果你对这篇文章感兴趣,请帮忙转发分享, 并且勾选微信 <看一看>.文章右上角的按钮点击后,点击<在看>(或者文章末尾的右下角<在看>),即可.       (如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利. 毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.)

扫码关注公众号,获取更多好用的SAP应用程序


赞赏支持