Skip to content

ABAP Keyword Documentation →  ABAP − Reference →  Data Interfaces and Communication Interfaces →  ABAP and OLE 


Quick Reference

Other versions: 7.31 | 7.40 | 7.54




1. ... NO FLUSH


This statement creates the automation object ole of the automation class class. The object ole must be of type ole2_object, which is defined in ABAP Dictionary in the type group OLE2. The automation class class expects a character-like data object is expected that contains the name of the class.

The system automatically executes an authorization check if the column AUTH_CHK in the database table TOLE contains the value "X" for the class. The authorization status can be checked with the function module AUTHORITY_CHECK_OLE.

System Fields

sy-subrc Meaning
0 Automation object created.
1 Error in communication to the SAP GUI
2 Error in function call in the SAP GUI
3 Problems with memory allocation in the presentation layer.


  • For the declaration of ole, exactly the type ole2_object must be specified. It is not sufficient to specify another type declared with a reference to ole2_object.
  • An automation object ole created using CREATE OBJECT ole must also be released by using FREE OBJECT ole to avoid memory bottle necks and terminations of the application to be controlled.
  • CREATE OBJECT for OLE should not be confused with the statement of the same name in ABAP Objects.

Addition 1



When using the addition NO FLUSH, calls from automation methods are collected in the automation buffer until the function module FLUSH (which is provided for this purpose) is called and the FREE OBJECT statement is passed or, at the most, until a change of screen. They are then passed to the automation server in the current presentation layer for asynchronous execution. Without this addition, the flush is executed and the pass takes place as soon as a statement that does not belong to the automation command set is reached. Note that in the ABAP Debugger, the return values of the individual automation statements are not available until after the pass to the presentation layer.

Addition 2



The addition QUEUE-ONLY dictates that, in flushes, the new object is not passed to the specified ABAP data object rc as a return code using methods called by CALL METHOD OF. In this case, the automation buffer can only contain the statements CREATE OBJECT, CALL METHOD, and GET PROPERTY using the addition QUEUE-ONLY. When executing the program in the ABAP Debugger, the return values are passed by default.


In this example, the automation object app is created, which has access to all methods and attributes of the class APPLICATION in the MS Excel Library. This class contains methods with which, for example, an Excel document can be opened or copied.

DATA app TYPE ole2_object. 

CREATE OBJECT app 'Excel.Application' NO FLUSH.