下面介绍如何在在表维护视图(maintenance view)的工具栏上添加自定义按钮,如下红框内的眼睛按钮。
<img class="alignnone size-full wp-image-3435" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42km6SPaf690.jpg" alt="003wFBDZgy6W42km6SPaf&690" width="397" height="163" />步骤如下:
1, 创建表维护视图
SE11,输入自定义表名 ZLM_TEST_MT,通过菜单进入table maintenance generator或者直接SE54进入
<img class="alignnone size-full wp-image-3433" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42kpOkX13690.jpg" alt="003wFBDZgy6W42kpOkX13&690" width="690" height="421" />如下输入相关信息,
<img class="alignnone size-full wp-image-3438" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42pNPGZfd690.jpg" alt="003wFBDZgy6W42pNPGZfd&690" width="598" height="487" />2, 创建表维护视图事件
菜单 environment->modification->events,进入事件创建屏幕。
<img class="alignnone size-full wp-image-3440" src="https://i-blog.csdnimg.cn/blog_migrate/9d675cbbfe704c0791e0ec1cdce492e8.jpeg" alt="003wFBDZgy6W42kx9Tm84&690" width="686" height="311" />选择表维护视图事件(maintenance view event)ST,GUI menu main program name,然后输入form routine的名字,
一定要是 'SAPL + function group名字‘。点击Editor按钮创建routine。
<img class="alignnone size-full wp-image-3441" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42kAPee1e690.jpg" alt="003wFBDZgy6W42kAPee1e&690" width="690" height="305" />如果form routine的名字不符合规则,则会有下面的错误消息。
<img class="alignnone size-full wp-image-3442" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42kDcyy56690.jpg" alt="003wFBDZgy6W42kDcyy56&690" width="510" height="54" />3, 创建GUI status
还要搞清楚SM30的GUI status。通过SM30界面的菜单上如下,
<img class="alignnone size-full wp-image-3443" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42kJVzQ2a690.jpg" alt="003wFBDZgy6W42kJVzQ2a&690" width="631" height="346" />找到GUI status EULG
<img class="alignnone size-full wp-image-3444" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42kNbJd97690.jpg" alt="003wFBDZgy6W42kNbJd97&690" width="413" height="165" />然后copy EULG,创建一个新的GUI status,
<img class="alignnone size-full wp-image-3445" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42kQSSf5b690.jpg" alt="003wFBDZgy6W42kQSSf5b&690" width="620" height="420" />copy到刚才创建的那个form routine 'SAPLZLM_FG_TEST_MT'上。
<img class="alignnone size-full wp-image-3446" src="http://www.baidusap.com/wp-content/uploads/003wFBDZgy6W42kTKwpd9690.jpg" alt="003wFBDZgy6W42kTKwpd9&690" width="369" height="118" />函数组SVIM中能查看到gui status EULG。
<img class="alignnone size-full wp-image-3447" src="https://i-blog.csdnimg.cn/blog_migrate/b51c863cd8ecc790db680f48af75afec.jpeg" alt="003wFBDZgy6W42kXHdC20&690" width="642" height="411" />copy完成之后,点击change按钮,在gui status上添加一个自定义按钮POP,
<img class="alignnone size-full wp-image-3448" src="https://i-blog.csdnimg.cn/blog_migrate/8a3c8548d42aa5b3e4e351831661240e.jpeg" alt="003wFBDZgy6W42l2UGy2e&690 (1)" width="620" height="420" /> <img class="alignnone size-full wp-image-3449" src="https://i-blog.csdnimg.cn/blog_migrate/dbab198c733b8b95a4cb0dbf47299bc0.jpeg" alt="003wFBDZgy6W42l6gJb11&690" width="690" height="181" />然后保存激活。
4, 修改表维护视图的屏幕
通过下面菜单路径,或者直接双击 9001屏幕号,在9001的流逻辑中编写代码,
<img class="alignnone size-full wp-image-3451" src="https://i-blog.csdnimg.cn/blog_migrate/73abdca14467ffdc618fa81f93809b9c.jpeg" alt="003wFBDZgy6W42lbG1Ac2&690" width="690" height="427" />代码如下:添加一个module mod_set_status
MODULE MOD_SET_STATUS INPUT. DATA COUNT_ER TYPE I. CASE FUNCTION. WHEN 'POP'. CALL FUNCTION 'POPUP_TO_INFORM' EXPORTING TITEL = 'Information' TXT1 = 'HELLOOOOOOOOOO............' TXT2 = COUNT_ER. ENDCASE. ENDMODULE.
5, SM30测试
点击自定义按钮,
<img class="alignnone size-full wp-image-3454" src="https://i-blog.csdnimg.cn/blog_migrate/9c796264b40db09b5d1449fa7c54ebdd.jpeg" alt="003wFBDZgy6W42km6SPaf&690" width="397" height="163" />弹出 hellooooooooo.....窗口
<img class="alignnone size-full wp-image-3455" src="https://i-blog.csdnimg.cn/blog_migrate/2c43dc050a189f2e6b88e91a29bf1be1.jpeg" alt="003wFBDZgy6W42C0KnA8e&690" width="650" height="221" />以上。