sap Status状态栏设计生成

(1). 用TCODE:se41,se80,se90(Programming Library-->Programming SubObjects--> Gui Status.)等都可以,拷贝一个标准的GUI status( 拷贝程序SAPLKKBL中的'STANDARD' GUI status)到你的程序.
然后写PBO写代码:
DATA: I_QMEL LIKE MAKT OCCURS 0.
DATA V_REPID TYPE REPID.
SELECT * FROM MAKT INTO TABLE I_QMEL.
V_REPID = SY-REPID.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = V_REPID
I_CALLBACK_PF_STATUS_SET = 'SET_PF_STATUS'
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
I_STRUCTURE_NAME = 'MAKT'
TABLES
T_OUTTAB = I_QMEL
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
然后可以通过修改gui_status删除按扭或着增加按扭

在 'REUSE_ALV_GRID_DISPLAY' 中有
I_CALLBACK_PF_STATUS_SET = 'SET_PF_STATUS'
。这里的I_CALLBACK_PF_STATUS_SET 是否是类似语句:SET PF_STATUS ‘STATUS1’ ?
如果是的话,那么自己创建一个用户STATUS1,不就可以替代那个标准的状态栏了吗?


(2).通过代码写,要自己建类和方法.可以通过示例代码学习.BCALV_GRID_08.
然后要在pbo里调用下再激活下gui_status就可以了.

 

 

还有一个程序里也有GUI STATUS可以参考 :RSSYSTDB

================================================================ 

其它方法:或者新创建一个Gui Status,然后选择Menu->Extras->Adjust Template,在弹出的对话框中输入标准alv状态的程序是SAPLKKBL,然后在Status里面输入标准(Standard)即可.里面有好多状态可以选择.

 

 

转自:http://hi.baidu.com/bhwang/blog/item/64e831a4c74081f19152ee68.html

### SAP MB25事务代码状态栏的增强或自定义 对于SAP中的MB25事务代码,如果想要对其状态栏进行增强或者自定义开发,通常可以通过使用Enhancement Point来实现这一点[^1]。由于Enhancement Point允许用户按照一定规则对现有SAP代码执行诸如插入、替换等操作,因此非常适合用于此类场景。 当考虑具体实施时,建议采用BADI(Business Add-In),这是一种基于类的方法来进行增强而不必改动核心程序逻辑[^3]。通过这种方式可以在不影响原有系统的前提下增加新的业务逻辑到特定位置上,比如更改显示于屏幕上的某些字段属性或是控制按钮可用性等行为。 为了更好地理解如何应用这些工具和技术,在实际动手之前应该熟悉相关对象的具体结构及其工作原理;同时也要注意遵循公司内部关于变更管理和测试流程的规定以确保项目顺利推进并减少风险。 另外值得注意的是,任何后台配置均能映射为前端可交互的操作形式,这不仅限于单一事物码还包括SM30维护视图等形式[^4]。这意味着即使涉及到较为复杂的调整也可以借助图形界面完成大部分工作,从而降低了直接编辑源文件所带来的潜在错误几率。 最后提醒一点,虽然可以直接利用上述提到的技术手段去改变UI层面的表现方式,但在做决定前最好先评估一下是否有更简单有效的途径达成目标——有时候仅需调整参数设定就能满足需求了。 ```abap REPORT zmb25_status_bar_enh. CLASS lcl_mb25_handler DEFINITION. PUBLIC SECTION. METHODS on_modify FOR EVENT modify OF cl_gui_control IMPORTING e_modified_data. ENDCLASS. CLASS lcl_mb25_handler IMPLEMENTATION. METHOD on_modify. DATA: ls_mod TYPE TABLE OF modified_data, lv_fieldname TYPE fieldname VALUE 'STATUSBAR'. READ TABLE e_modified_data INTO CORRESPONDING FIELDS OF ls_mod WITH KEY field_name = lv_fieldname. IF sy-subrc EQ 0. " Implement custom logic here to enhance or customize the status bar of transaction code MB25 ENDIF. ENDMETHOD. ENDCLASS. ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值