|
Control Frameworks is like a technology framework that controls the desktop applications. In a SAP R/3 system you can use ABAP to control your desktop applications. This means that you can build up an application with custom controls like a Tree control, a docking control, a split screen etc. SAP is not all about having form like screens, press enter and navigate. You can have desktop applications built that allow features like drag drop and many more and have them connected to your SAP R/3 back end. The application logic runs at the back end that controls the front end.The SAP GUI acts as a custom container for the controls on the front end. These controls could be a Active-X or a JAVA Beans control.
ABAP Objects & Control Frame works When you use a control in ABAP program, there are mainly 2 objects involved. One instance of this control is created in the ABAP program and another one is created on the presentation server (your desktop PC). The ABAP program communicates to the presentation server using the CFW and executes the operation on the presentation server where you see the screen and the controls. When a action is performed on the presentation server (like a double click) this information is sent via CFW to the application server where the program handles the logic to handle 'Double Click'. Now, these controls are not communicated in every step between backend application and presentation server. This is to improve the performace. Otherwise it will take few seconds for each operation which is definetely not desired. This communication is done via 'Automation Queue'. These method calls are buffered in this automation queue and are sent to front end once you reach a sysnchronization point. At this point the queue is flushed. The control on the presentation server can have events (like double click). All the events are not sent to the application server from the presentation server. A lot of these are filtered by the CFW. This is because most of them might not be relevent for your program. If you want to handle events, then you must construct your own filter and then this event will be sent to the application server where you can handle it.
|