Skip to Content

Application Enhancement Tool can be used for both Field and Table Enhancement. Recently We had a requirement in my project to enable AET for a Table .This blog would explain on how AET can be used for Table Enhancement.

Field Enhancement : AET Tool can be used to create,update and delete fields in the table that does not belong to standard Delivery.

Table Enhancement : AET Can be used to create,update and delete tables that does not belong to standard delivery , the same table can be linked with an existing table via Parent ID . This table can be made available in the CRM WEB UI as an Assignment Block or in Form View.

Requirement :

There is a Relationship Table which maintains the relationship between the entities .For example we have a Case and Person as two entities and the different relationships can be created between these two entities .For Example : Person can be related as Suspect to a case , or as an Victim.

The requirement was to enable AET for this relationship Table , so that customer can maintain there own fields in a new table and link with this relationship Table.

Customer should be able to create , update and delete entries in this new table from UI .

1) Enabling AET for a Table

  Call transaction AXTREG and create the Table Enhancement Place and also mention the required details like Application Group and the Parent ID .

Parent ID Data Element will be same as the Key field in the Parent Table.

Capture.PNG

Next step is to mention the Parent Business Object under which Extension BO will be created .

In the Transaction AXTREG , under Enhanced Business Objects select the Enhanced Business Object and the the part of Enhanced BO  under which Enhancement place will be included

Untitled.png

Specify the Table Enhancement Place which was created in first step and also Select New Extensions allowed .

2) Creation of Extension Tables From UI

Steps to make Configuration Active

First Enable the Configuration from Personalize settings from the Web UI

Untitled.png

Now go to the page from where Enhanced BO will be called ( For  which Table Enhancement Place is added  ) and select configuration from left Upper corner as shown below.

Untitled.png

Then Select the particular Block and Display the enhancements .

Capture.PNG

From here , you can create a table and this will generate all the Extension BO’s with the structure of Table mentioned by the user.

Capture.PNG

Table Created is as show below

Capture.PNG

Once we Create Table from UI , this will also generate the View under the  UI Component which is mentioned   while creating.

View will have Context node referring the Extension BO Object .

Capture.PNG

3) Enhance the Genil Class to show the Extension Bo’s in BOL Model Brower.

Next step is to Enhance the Genil Class to show the Extension Bo’s which will be created under this root Object.

Below Code can be put in the Get_model Method of Genil class of Parent Object

TRY.

      CALL METHOD cl_axt_extensibility_access=>get_extension_tables

        EXPORTING

          iv_appl_group = ‘ICM’

          iv_ext_tplace = ‘ICM_RELATION’

        IMPORTING

          et_model_il   = lt_model_id.

    CATCH cx_axt_runtime.

  ENDTRY.

  LOOP AT lt_model_id ASSIGNING <fs_model_id>.

    MOVE-CORRESPONDING <fs_model_id> TO ls_relation_det.

    INSERT ls_relation_det INTO TABLE rt_relation_det.

  ENDLOOP.

This will add all the extension BO’s to the Model as shown below.

Capture.PNG

4) Create new Genil Class for Handling CRUD Operation on the new Extension BO’s

Create New Genil Class for the New relation which is created and Read , Modify and Save Methods to handle CRUD operation on the new table.

API’s of Standard class CL_AXT_TABLES_API ( Create,Change,Delete and Save Methods ) can be used for CRUD operations.

Adjust the Genil Class of Parent Object in such a way that New Genil Class will be called for CRUD operation on the new Table.

5) Enhance the Existing UI with the View Created for Table

Creation of a Table would have generated the new view as mentioned in the step 2 . This view can be used in the Existing View for enabling CRUD operation from UI by a User.

This completes the End to End Implementation of AET Enhancement for Table.

Hope this Blog helps the people dealing with AET.

Thank You,

Jayashree

To report this post you need to login first.

1 Comment

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

Leave a Reply