Академический Документы
Профессиональный Документы
Культура Документы
Starting with a cross-system integration process, you can then derive the
corresponding interfaces required. SAP Exchange Infrastructure supports
this process by using an integration
scenario to describe the collaborative process. The integration scenario
summarizes the interfaces required for this collaborative process.
You can use SAP interfaces that already exist in systems, non-SAP
interfaces that are connected to SAP Exchange Infrastructure using
adapters, or define new interfaces called message interfaces in the
Integration Repository. Both worlds can also be interconnected in a
collaborative process.
This class must be recognized by the ABAP proxy runtime so that it can
call the appropriate method when a message arrives. The proxy generation
function enters an implementing class as the default setting on the tab
page Properties; this class is generated after the proxy has been activated.
If you want to use a class that already exists, enter it in this field.
The system generates methods with the following names, depending on
the type of communication:
The output message type becomes a parameter with the name OUTPUT.
The input message type becomes a parameter with the name INPUT.
OUTPUT refers to an outbound message, INPUT to an inbound message.
Both parameters are structures of the respective message type with a field
for the data component of the message.
The data component of the message is communicated with by using the
message type name. For example, if the message type is Report and it
references the data type InvoiceData, then a structure Report of type
InvoiceData is generated.
Proxy generation saves a reusable data type in the ABAP Dictionary for
global XSD data types, for example data elements or structures. It
generates fields of a structure for local elements or attributes. The reuse of
data types in the Integration Repository is reflected in the data types
created in the system.
Integration
You cannot change ABAP proxy objects manually in the SAP system. You
can only change an ABAP proxy object by using the ABAP proxy
generation function. ABAP proxy objects only map data structures defined
in the Integration Repository. Therefore, they are not supported and must
not be used on the interface.
Example
The following graphic illustrates how an interface from the Integration
Repository is mapped to an ABAP proxy:
The Object Navigator displays proxy objects created in the system in the
navigation tree under Enterprise Services ® Web Service Library (client
proxies, server proxies, and proxy Dictionary-objects). When you create new
proxy objects, the hierarchy of software component versions from the
Integration Repository is displayed in a dialog box.
You can display the interface objects from the Integration Repository by
using the navigation tree in transaction SPROXY. If no connection to the
Integration Repository exists, the tree presents an overview of those
interface objects for which a proxy object already exists in the system.
This tab is only displayed immediately after the proxy is generated. It allows you
Name conflicts to correct names that were truncated during generation, or that needed to be
changed because a collision occurred.
This tab is similar to the Generation tab, except that here the objects are sorted
according to their use in a tree structure.
Example:
Structure
Class CO_X
->Method MYMETHOD
->Importing OUTPUT
The system displays the documentation from the Integration Repository for the
Documentation
outbound object.
Even if a proxy was generated successfully, there are cases when generation
Type was only possible due to implicit acceptance (for example, restrictions to the
mappings value range are checked by the programmer). If such situations arose during
generation, they are listed in an application log.
You can access all proxy objects that have ever been created in the system.
All Generated You only require this view if namespaces or software component versions have
Objects been deleted in the Integration Repository. All generated objects are displayed
in the navigation tree in transaction SE80.
Integration
Repository
Objects
(Default Setting)You can access all interface objects that are currently
visible in the Integration Repository, as well as the corresponding proxy
objects.
Activities..
Generate ABAP proxy objects for an interface or for other interface.
Check whether you need to make any changes following the automatic
naming of proxy objects.
If the description was changed in the Integration Repository, you must
regenerate the proxy objects:
Call transaction SPROXY and in the navigation tree, either choose the
changed interface object itself, or an object that contains the changed
object. Call the context menu for this interface object and choose Change
Proxy.
DESIGN & CONFIGURATION
DESIGN TIME
Data Type:
Message Type:
Interface Mapping:
CONFIGURATION TIME:
Sender Agreement
Interface Determination:
CLIENT PROXIES
Client Proxies are generated for Outbound Message Interfaces. These are
used to send out Data from SAP system to external Application. Sproxy is
the transaction to generate Proxies.
PREPARATIONS BEFORE CREATING PROXIES IN ANY SYSTEM
The package structure is the most important. The following URL’s will help
in understanding the package structure in a better manner.
http://help.sap.com/saphelp_nw04/helpdata/en/ea/c05d92f01011d3964000
a0c94260a5/frameset.htm
Structure Package(ZXI_PACKAGE)———————————-Level1
Main Package(ZSCSLSAP)————————————Level2
Sub Package(ZSIVA_SCSLCOMP)——————Level3
SubPackages(ZSIVA_SCSLCOMP_PROXY2PROXY)–Level4
(All the objects that are created should be assigned only at level4)
Interface
Message Type
Data Type
Click on ABAP Class to see its methods and parameters
Click on MessageType
to see the Data Elements
How to Test the Interface that has been
generated
How to Send Data from SAP to an
Outbound Proxy
We need to create a Program (in se38) which sends the data out to the
class that has been generated. The class that is generated will send data to
the Integration server
The following link refers to “Sending a message using ABAP Proxy
Runtime”
http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000
000a11402f/frameset.htm
To send a message using the ABAP proxy runtime, call the corresponding
client proxy in your application program.
1. Declare the following variables:
DATA:
* Error handling
ENDTRY.
REPORT ZPROXY_FLIGHT_DATA.
It_request-FLIGHT_DATA_MT-CARRID = 'AA'.
It_request-FLIGHT_DATA_MT-CONNID = '0017'.
It_request-FLIGHT_DATA_MT-FLDATE = '20040404'.
TRY.
CREATE OBJECT prxy.
COMMIT WORK.
WRITE :/ fault->errortext.
ENDTRY.
SERVER PROXIES
Server Proxies are generated for Inbound Message Interfaces. These are
used to Process the Data coming into SAP System from an external
application. Sproxy is the transaction to generate Proxies.
PREPARATIONS BEFORE CREATING PROXIES IN ANY SYSTEM
The package structure is the most important.
The following URL’s will help in understanding the package structure in a
better manner.
http://help.sap.com/saphelp_nw04/helpdata/en/ea/c05d92f01011d3964000
a0c94260a5/frameset.htm
Structure Package(ZXI_PACKAGE)———————————-Level1
Main Package(ZSCSLSAP)————————————Level2
Sub Package(ZSIVA_SCSLCOMP)——————Level3
SubPackages(ZSIVA_SCSLCOMP_PROXY2PROXY)–Level4
(All the objects that are created should be assigned only at level4)
Export Parameters
The following screen is displayed if there are any conflicts with the
generated names and already existing names in the system. Go to
generation Tab to change the names of the Objects manually. Else the
system will take care of the Object naming.
The following Objects are generated for an ABAP Server Proxy
Interface
Message Type
DataType
Click on MessageType
to see the Data Elements
Click on the method (____Execute_Asynchronous) to write the code to
handle the data.
*These are local variables used to capture the values that are received as
import parameters.
data :
lv_CARRID = input-FLIGHT_DATA_MT-CARRID.
lv_CONNID = input-FLIGHT_DATA_MT-CONNID.
lv_FLDATE = input-FLIGHT_DATA_MT-FLDATE.
EXPORTING
CARRID = lv_CARRID
CONNID = lv_CONNID
FLDATE = lv_FLDATE.
ENDMETHOD.