Show TOC

Function documentationThe Application Component Controller and its Events


You could regard the Application Component Controller (APPCC) as a helpmeet that is able to do things for you outside your feeder class.

HR Reporting provides the reuse APPCC, HRGRT_C_REPORTING_CONFIG which we recommend you use, but you can also build and assign your own.

The purpose of this reuse component is to hold the processing of what is referred to in this documentation as 'internal events' (that is, internal to the application, and triggered by super class code, not the user) that you might want to trigger from your feeder class.

You might want to do this because inside your feeder class you have the information to trigger the event, but you must catch and handle them outside the class, because some of the events make changes to elements of the UI that are not part of your configured Form or List GUIBB. Further, this processing is deliberately held outside the feeder class, because it is FPM-specific (in this case OVP), whereas the feeder class could feasibly be reused in other floor plans.

While, the feeder class can trigger internal events, the APPCC can catch and process them in the event loop.

Example Example

An example for using the reuse APPCC is the Salary Statement scenario. There are a list of payroll periods and two buttons at the top of the screen called Previous Statement and Next Statement. You wish to toggle along the sequence of periods, and once you have reached the last period in the sequence, you want to deactivate the Next button.

Likewise you want to deactivate the Previous button when you have chosen the first period in the list. This is an example of having the information to trigger an internal event (activation/deactivation of button) inside the GUIBB (for example, what line has the user selected?) but the internal event itself must be handled outside, in the application, because the buttons are in the OVP application.

End of the example.

Caution Caution

The internal events handled by the APPCC are different and not to be confused with the events that are triggered by the end user, who chooses the buttons Previous and Next in the UI.

These buttons in the UI have different events to choose the next or previous entry in the list assigned to them, and these events are handled in your feeder class.

End of the caution.


The reuse classes and interfaces provide all the building blocks for you:

The super class of your feeder class has in its attributes all the user events (for example, AC_HRGRT_REPORTING_LIST_FEEDER=>gc_event_next) that you assign to your buttons in your configuration. You react to these user events in your redefinition GET_DATA by fetching data and producing the form.

Also in GET_DATA you call super methods, which raise internal events (for example, IF_HRGRT_REPORTING_C=>gc_event_enable_event) which are then caught by the APPCC and processed.

These internal events are stored in interface IF_HRGRT_REPORTING_C and are used only by the super feeder classes and the APPCC.

Caution Caution

End of the caution.

You should not address them directly in your feeder class!


Decide if you need such processing of internal events that should be outside your feeder class, and if so, there are two steps: Firstly you must assign HR Reporting APPCC HRGRT_C_REPORTING_CONFIG to your application in the global settings. Secondly, you must call the super methods from your feeder class code in method GET_DATA:

  1. At the end of GET_DATA in your feeder class, call service method AC_HRGRT_REPORTING_LIST_FEEDER-> HANDLE_PREV_NEXT_ACTIVATION.

    In the case of LIST GUIBB you must pass the index of the table, and the number of lines in the table. For FORM GUIBB similarly, you must pass the table of values and the current value. The super method raises the internal event and takes care of the active/ not active settings. In the APPCC method OVERRIDE_EVENT_OVP, these events are caught and processed.

  2. Go to your OVP component configuration, in change mode.

  3. Above the hierarchy (on the left side of the screen), choose Start of the navigation path Change Next navigation step Global settings End of the navigation path.

    The dialog box Global Settings is displayed.

  4. In the field Web Dynpro Component, enter the reuse component HRGRT_C_REPORTING_CONFIG.

  5. Choose OK.

  6. Choose Save.