SD--va01的屏幕增强

 在销售订单处理中,用户会需要控制屏幕的一些字段是否允许修改,在配置里没有设置,为了实现该要求只能通过sap提供的增强来实现。sap为用户提供了三种增强,用户可以选择任一种来实现。

1)BADI

对应的接口类是:IF_EX_BADI_SD_SALES_BASIC

实现方法参见:http://blog.csdn.net/CompassButton/archive/2006/10/21/1344686.aspx

 

2)函数型增强

对应函数是:FUNCTION EXIT_SAPMV45A_004

FUNCTION EXIT_SAPMV45A_004.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"       IMPORTING
*"             VALUE(I_SCREEN_NAME) LIKE  FELD-NAME
*"             VALUE(I_VBAP) LIKE  VBAP STRUCTURE  VBAP
*"             VALUE(I_VBUP) LIKE  VBUPVB STRUCTURE  VBUPVB
*"             VALUE(I_SCREEN_GROUP4) LIKE  FELD-GRP4
*"             VALUE(I_T180_AKTYP) LIKE  T180-AKTYP
*"       CHANGING
*"             VALUE(C_SCREEN_ACTIVE)
*"             VALUE(C_SCREEN_INVISIBLE)
*"             VALUE(C_SCREEN_INPUT)
*"----------------------------------------------------------------------


INCLUDE ZXVVAU09 .


ENDFUNCTION.
实现参见http://blog.csdn.net/CompassButton/archive/2006/08/31/1150258.aspx

 

3)Form型增强

Form型增强Form对应单元是:MV45AFZZ

代码如下:

FORM USEREXIT_FIELD_MODIFICATION.

* CASE SCREEN-GROUP3.
*   WHEN '900'.
*     IF VBAK-VBTYP NE 'A'.
*       SCREEN-ACTIVE = 0.
*     ENDIF.
* ENDCASE.

* CASE SCREEN-NAME.
*   WHEN 'VBAK-VBELN'.
*     SCREEN-ACTIVE = 0.
* ENDCASE.

ENDFORM.

 

 

你可能感兴趣的:(C,C++,C#,.net,Blog)