Wednesday, December 30, 2015

SAP ABAP Connector (ACO)

Within SAP NetWeaver 7.4 there were some new features introduces in case of ABAP. One of them is so called SAP ABAP Connector (ACO). It is an ABAP component designed to consume RFC Services on remote ABAP systems. The things that it tries to solve are related to different dictionary types that one remote function (RFM) may have. These can be either a case that dictionary types are not available at all, or are available in different versions on different systems.

Basically using the ACO a consumer proxy can be generated and used for RFC scenarios. If for any reason an interface of RFM changes a call from ABAP with the old interface doesn’t make a dump. But the proxy will be regenerated instead if any change in the RFM interface happens.
The ACO leverages SAP Connectors like SAP Java Connector 3 (JCo) or SAP .Net Connector 3 (NCo). It uses them first to retrieve metadata via APIs, them it performs dynamic RFC call of any RFM while it dynamically sets/gets the parameter values.

While the ACO access the remote RFM following two paradigms are supported:

1. Generation of a static proxy - proxy class is generated once for specific remote system and the RFM. Client program will regenerate the class when the RFM’s interface is changed.

2. Dynamic access to the values and metadata of all parameters – Values of the RFM param can be read/set by using get/set methods. The params (plus its types) are determined at runtime by the ACO.

One drawback here is that the ACO doesn’t support bgRFC or or t/qRFC.

More information:

No comments: