Skip to Content

In part I , we have seen about enhancing the view and window of the standard web Dynpro ABAP component, in this Part we will be seeing about Enhancement of controller and deleting an Enhancement.


Enhancement of controller:


Enhancement of controller consist of enhancements of Context Nodes, Attributes, methods and actions.


Context Node Enhancement:


Each controller will be having the context assigned to it, Context nodes/attributes can be enhanced or new nodes/Attributes can be assigned to the context.


There will be two kinds of nodes,


  • Nodes without Dictionary structure mapping
  • Nodes with Dictionary structure mapping


IF the node is without DD mapping then you can add the attributes to it by right click on it -> create – > attribute.


Before to this step enable the enhancement implementation.

Untitled1.png

Untitled2.png


   IF the node is with DD mapping then you can add the attributes to it by right click on it -> create using wizard- > attributes
from components of structure. 

Untitled3.png

   Similarly you can add new nodes or attributes also to the same context by right click on the root context.

Untitled4.png

Attribute Enhancement:


To enhance the attributes tab go to the required controller, and enable the enhancement implementation.

Untitled5.png

Then the attributes tab will be enabled with Edit mode hence whatever the new additions are required or Existing attribute Edit( Except standard WD attribute) we can do here.

Untitled6.png

Enhancements of method and actions:


There will be two possible things we can do in methods, Enhancing the existing method or adding new method


First enable enhancement implementation for the methods tab.


Then the tab will be converted into Edit mode hence we can add new methods here like normal Edit.


Enhancement of the existing methods can be done in any of the following 3 ways.


  • Pre Exit
  • Post Exit
  • Overwrite Exit

Untitled7.png

We are not going to change the code of the existing method, instead we will select the Exit option & a new method will be created there we can write our business logic’s.


Pre Exit:


This method will be called before the execution of actual method, this will be called by wd_this reference by the controller and later actual method will be called.


Post Exit:


This is just an opposite of Pre Exit, this method will be called after the execution of actual method with wd_this reference by the controller.


Overwrite Exit:


Overwrite method will replace the execution of actual method hence in this case actual method will not even get called.


Similarly if you wants to delete the newly created methods you can use the delete options which will be available just above to the methods.

Untitled8.png

Deleting Enhancement Implementation


To delete the Enhancement implementation, follow these steps


  • Go to transaction SE80
  • Select the package which you have saved the Enhancement object
  • Select the implementation and delete it like it showed here.


Untitled9.png

Untitled10.png


– Gowtham

To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply