CL_CRM_COMPONENT_UI_MANAGER - UI Service Methods for Complex Objects

Fill RESBD Structure from EBP Component Structure   RFUMSV00 - Advance Return for Tax on Sales/Purchases  
This documentation is copyright by SAP AG.

Functionality

Modification free adaptations to the generated screens for complex objects

The complex objects are shown in an ALV grid control. The subscreen itself only contains a containeron the screen. The relevant flow logic is dispatched to a manager class. This class handles all requests centrally, such as:

  • Build the field catalogue
  • Set excluded function codes
  • Register event handler
  • Handle registered events
  • Get the data to be displayed
  • Get the data to be shown in the input help (F4)

The UI will always use the super class CL_CRM_COMPONENT_UI_MANAGER as an API class. This class knowsall its subclasses and which subclass is responsible for which objects. By default, all calls are dispatchedto a default handler class CL_CRM_COMPONENT_DEF_UI_MAN. A special handler class can be created (forexample, CL_YOUR_UI_MANAGER_CLASS) to change the default behavior. In this class, you can redefine the behavior of the super class and adapt it to your needs.

The flow logic in the screens does not need any knowledge of the specific handler class. All calls fromthe screen are calls to the class CL_CRM_COMPONENT_UI_MANAGER. The class dispatches to the responsiblehandler class (one of its subclasses). All the data is stored here: container instance, grid instance,UI data table number). The class itself also serves as an event handler class for arbitrary events raised by the grid instance (for example, data_changed event).

Relationships

Example

If internal developers or customers need special logic that is not covered by our standard logic (such as a different search help functionality), they must perform the following steps:

  • Copy the default handler implementation class CL_CRM_COMPONENT_DEF_UI_MAN
  • Implement the interface method GET_RELEVANT_OBJECTS
    DATA:
    ,,lv_object_name TYPE crmt_object_name.
    lv_object_name = 'MY_OBJECT_NAME'.
    INSERT lv_object_name INTO TABLE rt_object.

    Add all the objects for which you want to handle the requests.
  • Redefine the methods that are to behave differently (for example get_f4_values)

Notes

Further information



SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   rdisp/max_wprun_time - Maximum work process run time  
This documentation is copyright by SAP AG.


Length: 2444 Date: 20120526 Time: 104746     triton ( 96 ms )