Академический Документы
Профессиональный Документы
Культура Документы
Establish the connection between WAS and Integration Builder, this allows the application system to
retrieve WSDL description of the interface as the basis of proxy generation.
Create a source data type and a target data type.
Create Message types for the source and target data types.
Create Message Interfaces includes Inbound Message interface and Outbound Message interface.
Create message mapping between the source and target message types.
Create Interface mapping.
Create ABAP proxies using the transaction SPROXY in the application system.
Create Collaboration agreements and Collaboration profiles in Integration directory.
Write a program in the application system for creating the client proxy request.
Save it.
Now activate all the objects that are developed in IR.
Before starting the configurations in the Integration directory, let us complete the creation of client
proxies in source R/3 system.
Creating ABAP Proxies in Application system
Go to SPROXY transaction in R/3 system.
Here we can see all the Integration Repository objects. Select the outbound interface for which we want to
create the proxy. Right click on the interface and select create option.
We can observe the Structures resembling outbound data types, message types get created in the system.
As the source structure can send multiple records of Employee, observe that a Table type of
ZTDT_EMPDET_OB_EMPLOYEE_TAB getting created. This can be transferred to FTP.
The next step in the Integration directory is we need to create Sender agreement, receiver agreement,
interface determination and Receiver determination. But in our scenario it is not required to create
sender agreement.
"
"
"
"
"
"
"
"
"
Wage Type
Wage Type Amount for Payments
Number
Wage Type
Wage Type Amount for Payments
Number
Wage Type
Wage Type Amount for Payments
Number
"
"
"
"
"
Payment Method
Bank country key
Bank Keys
Bank account number
Bank Control Key
"
"
"
"
"
"
"
"
"
Personnel number
Personnel Area
Employee Group
Employee Subgroup
Personnel Subarea
Payroll Area
Cost Center
Organizational Unit
Position
"
"
"
"
"
Personnel number
Last Name
First Name
Gender Key
Date of Birth
FS_EMPLOYEE-WORK_SCHEDULE_RULE = I_PA0007-SCHKZ.
FS_EMPLOYEE-DAILY_WORKING_HOURS = I_PA0007-ARBST.
ENDIF.
READ TABLE I_PA0008 WITH KEY PERNR = I_PA0000-PERNR BINARY SEARCH.
IF SY-SUBRC EQ 0.
FS_EMPLOYEE-PAY_SCALE_TYPE = I_PA0008-TRFAR.
FS_EMPLOYEE-PAY_SCALE_AREA = I_PA0008-TRFGB.
FS_EMPLOYEE-PAY_SCALE_GROUP = I_PA0008-TRFGR.
FS_EMPLOYEE-PAY_SCALE_LEVEL = I_PA0008-TRFST.
FS_EMPLOYEE-INCREASE_DATE = I_PA0008-STVOR.
FS_EMPLOYEE-CURRENCY = I_PA0008-WAERS.
FS_EMPLOYEE-ANNUAL_SALARY = I_PA0008-ANSAL.
FS_EMPLOYEE-WAGE_TYPE1 = I_PA0008-LGA01.
FS_EMPLOYEE-AMOUNT1 = I_PA0008-BET01.
FS_EMPLOYEE-NUMBER1 = I_PA0008-ANZ01.
FS_EMPLOYEE-WAGE_TYPE2 = I_PA0008-LGA02.
FS_EMPLOYEE-AMOUNT2 = I_PA0008-BET02.
FS_EMPLOYEE-NUMBER2 = I_PA0008-ANZ02.
FS_EMPLOYEE-WAGE_TYPE3 = I_PA0008-LGA03.
FS_EMPLOYEE-AMOUNT3 = I_PA0008-BET03.
FS_EMPLOYEE-NUMBER3 = I_PA0008-ANZ03.
ENDIF.
READ TABLE I_PA0009 WITH KEY PERNR = I_PA0000-PERNR BINARY SEARCH.
IF SY-SUBRC EQ 0.
FS_EMPLOYEE-PAYMENT_METHOD = I_PA0009-ZLSCH.
FS_EMPLOYEE-BANK_COUNTRY = I_PA0009-BANKS.
FS_EMPLOYEE-BANK_KEYS = I_PA0009-BANKL.
FS_EMPLOYEE-BANK_ACCOUNT_NUMBER = I_PA0009-BANKN.
FS_EMPLOYEE-BANK_CONTROL_KEY = I_PA0009-BKONT.
ENDIF.
APPEND FS_EMPLOYEE TO T_EMPLOYEE.
ENDLOOP.
TRY.
FS_EMPLOYEE_MT-MT_EMPDET_OB-EMPLOYEE = T_EMPLOYEE.
CALL METHOD PRXY->EXECUTE_ASYNCHRONOUS
EXPORTING
OUTPUT = FS_EMPLOYEE_MT.
COMMIT WORK
.
CATCH CX_AI_SYSTEM_FAULT .
DATA FAULT TYPE REF TO CX_AI_SYSTEM_FAULT .
CREATE OBJECT FAULT.
WRITE :/ FAULT->ERRORTEXT.
ENDTRY.
When this report is executed, we can see the file in the FTP server
with the employee details.
<?xml version="1.0" encoding="UTF-8" ?>
- <ns0:MT_Empdet_ib xmlns:ns0="http://yash-clientproxies">
- <Employee>
<Personnel_number>00001002</Personnel_number>
<Action_Type>52</Action_Type>
<Emp_Group>1</Emp_Group>
<Emp_Subgroup>DT</Emp_Subgroup>
<Personnel_Subarea />
<Payroll_Area>D2</Payroll_Area>
<Cost_Center>0000002100</Cost_Center>
<Organizational_Unit>50000563</Organizational_Unit>
<Position>50000083</Position>
<Name>Ulrike Zaucker</Name>
<Gender>2</Gender>
<DOB>19600905</DOB>
<Work_Schedule_Rule>FLEX</Work_Schedule_Rule>
<Daily_Working_Hours>7.50</Daily_Working_Hours>
<Pay_scale_type>40</Pay_scale_type>
<Pay_Scale_Area>02</Pay_Scale_Area>
<Pay_Scale_Group>AT</Pay_Scale_Group>
<Pay_Scale_Level />
<Increase_date>00000000</Increase_date>
<Currency>EUR</Currency>
<Monthly_salary>0</Monthly_salary>
<Wage_Type1>MA90</Wage_Type1>
<Amount1>4601.63</Amount1>
<Number1>0.00</Number1>
<Wage_Type2 />
<Amount2>0.00</Amount2>
<Number2>0.00</Number2>
<Wage_Type3 />
<Amount3>0.00</Amount3>
<Number3>0.00</Number3>
<Payment_Method>U</Payment_Method>
<Bank_country>DE</Bank_country>
<Bank_Keys>23984899</Bank_Keys>
<Bank_account_number>253571587</Bank_account_number>
<Bank_Control_Key />
</Employee>
</ns0:MT_Empdet_ib>