[收藏]Demo on Enhancement FrameworkBy Jagadeshwar Gollap

Restrict users (sales persons) to view or change Sales order data - Using Enhancement framework:
Source Code Enhancement is one of the enhancement technologies available under Enhancement Framework. Implementing this technology is also called as Source Code Plug-In. Technically the source code plug-in implementations are stored in a separate include program and not as part of the original source program.
There are two types of Source Code enhancements possible.

    Implicit enhancement option
  • Explicit enhancement option

Example Scenario:
One sales person can’t see or change another sales person’s sales orders.
In my program, I have used following users.
Sales person1 (user 1): lz8xzf
Owner for Sales order no: 174.

Sales person2 (user 2): lzn4rm
Steps to Implement the Implicit enhancement option:
Step1:
Go to SE38 and Open include MV45AFZB

Step2:

In order to implement any of these Source code enhancements, you need to be in
‘change Enhancement mode’ (the spiral icon available in the editor).


Step3: Go to EDIT option in the menu and choose Enhancement Operations -> Show implicit Enhancement Options

All Implicit Enhancement option will be displayed. All yellow lines indicate Implicit Enhancement options. In ABAP programs, implicit enhancement options are predefined at the following places:

Begin/End of an include.

Begin/End of Method/Function Module/Form Routine

End of a structure

End of Private/Protected/Public Section of a local class


Step4: Place the cursor on the yellow line and choose
Enhancement implementation à Create.

Step5: Give Implementation name and then create.

Step6: Here Editor will be enabled to write the code. Write your own code save and activate it.

Step 7:
Once the development is completed you can test the scenario.
When Sales person (lzn4rm) tries to Open Sales order no 174, it gives error message ’Access Denied’.

Note: Sales order 174 is created by another sales person (lz8xzf).


(0) 评论    (91) 引用   

与variant有关的几个FUNCTION

  • VARI_USER_VARS_GET

Reads existing variable values

  • VARI_USER_VARS_SET

Changes existing variable values

  • RS_VARIANT_VALUES_TECH_DATA

Get variant data

  • RS_CHANGE_CREATED_VARIANT

Change variant data

  • VARI_USER_VARS_COPY
Copies variable values
  • VARI_USER_VARS_DELETE
Deletes variable values
  • VARI_USER_VARS_RENAME
Renames variable values
  • VARI_USER_VARS_DIALOG
Dialog for entering variable values

(0) 评论    (18) 引用