In the SAP system, you can use ABAP to control desktop applications (custom controls). The application logic runs on the SAP application server (automation client), which drives the custom control (automation server) at the frontend.
The frontend functions as a container for custom controls at the frontend. A custom control can be either an ActiveX control or a JavaBean, depending on the version of SAP GUI currently in use.
The following graphic illustrates an SAP Tree Control in use together with an SAP Textedit Control:
The Control Framework supports controls (ActiveX and JavaBeans) that are implemented within the SAP GUI.
The Automation Controller is run from ABAP using the classes CL_GUI_CFW, CL_GUI_OBJECT, and CL_GUI_CONTROL. These allow you to create and destroy custom controls, set and get their attributes, and call their methods.
To assure adequate performance in the client/server environment, the system provides a buffer mechanism called the automation queue, which buffers a series of method calls to different instances of custom controls before sending them all to the frontend in a single step.
Events that are triggered in a custom control are processed in two steps:
· Irrelevant events are filtered out.
· Relevant events are forwarded to the application server. An ABAP Objects event is then triggered, returning control to the ABAP program, which can then react to the event.
The lifetime of a control is regulated by the lifetime management. Lifetime management automatically destroys controls at the frontend when they are no longer needed. However, you can, of course, destroy a control explicitly in your application program.
Certain methods and events in some of the individual controls are not supported in the SAP GUI for HTML environment. Others are only available in a restricted form. For precise details, refer to the individual control documentation.