Proxies in SAP To Setup
Proxies in SAP To Setup
Proxy model represents a new programming paradigm for SAP systems, and is important element of Enterprise Services Architecture.
Proxies separate Business Application Logic from the Integration logic of the Exchange Infrastructure.
Proxies bypass the adapters and provide adapter less communication with the JAVA/ABAP business systems in landscape.
Proxies are generated from the WSDL description of interface objects and have same attributes as message interface. There are ABAP and
JAVA proxies available.
Prerequisites
For ABAP Proxies the application system should have Web AS 6.20 and XI2.0 add-on.
Along with this, the following configurations are required on the application side to enable the proxy connection:-
1. TCP\IP Connections
1.1 LCRSAPRFC :- To connect to IR and get information of interface Objects
1.2 SAPSLDAPI: - To connect to SLD and get the Business System Information
2. HTTP Connection
For Java Proxies SAP J2EE Engine above SP5 is necessary, on this SAP J2EE engine we need to install Java Proxy Runtime (JPR) along with
Messaging System (MS), which provides services like messaging, queuing, and persistency of XI messages.
In order to compile the java proxy source code we need the following list of libraries, which are located at non-central Adapter Framework
Installation.
1. aii_proxy_xirt.jar
2. aii_msg_runtime.jar
3. aii_utilxi_misc.jar
4. guidgenerator.jar
ABAP Proxies
IDOC is good if its a standard IDOC, so that you don't have under go the pain doing the modifications for the custom
one.
In your case, PROXY might make more sense as you are saying that you have to do some custom processing as
well. So, you can call the BAPI / Function for the standard processing and then do the custom processing in your
Proxy code. And more over, if you have want to have a Synch interface, then you cannot use IDOC.
So, the options in this case boil down to PROXY / RFC.
PROXY will definitely have the advantage as its going to bypass the adapter engine and directly interact with the
Integration server. And moreover, even if you already have a RFC, you can always call that inside your PROXY.
However, the only flip side here compared to IDOC, is that you will have to create all your IR objects manually.
XI sends an IDOC to SAP. IDOC is processed at a later stage. Now a response is sent out to XI ( I think only ALE
audit is out of the box for acknowledgements. ) Now XI reads the original message which was sent to SAP and the
ALE audit message and then builds a response message to the Original Sender
Ans : Let take the case of a ORDERS IDOC, that you are sending to your business partner. Now, in this case if you
get a technical acknowledgement (ALEAUDIT) that the IDOC has been delivered. Now, ideally the business partner
should have configure an IDOC ORDRSP (Order Acknowledgement) to let you know that he has recieved the order
and everything is fine with the data. This is at a functional level.
Apart from this I am not aware of any other options. XI cannot read the IDOC from the target system as you are
expecting, unless the target system initiates the same.
Proxies are mainly used when the size of the input data is huge. For example suppose in ECC we have a table
where we have 1 million records and we need to send this whole data to a third party system using PI.
In these case we will create an structure in PI which will contain the structure of the table records.
Then we will have service interface which will use the structure we have created. Once we have the service
interface , we need to create the proxy structure in ECC using transaction SPROXY.
So in ECC we will write a program which will select all the 1 million rows using select query, then the program will
call the proxy structure and sends the whole data to the integration engine of PI.
We do not need to create a sender communication channel for sending the data to PI.
they are two different objects. A Service Interface is an abstract definition of an interface. An (ABAP) proxy is a
representation of that interface in another (ABAP) system. Technically, this includes generation of ABAP structures
and a Simple Transformation to convert ABAP into XML. You can then have client proxies and server proxies. Client
proxies are called from the backend logic while server proxies need to be implemented and usually call some
predefined background logic like BAPIs.