I was once accidentally involved in a small project that required integrating Kenexa recruitment system to SAP ECC(HR) to send users and requisitions(Positions) from SAP into Kenexa system. It was accidental because i got involved as a troubleshooter and ended up redesigning the whole interface. This blog aims to introduce the approach that was taken for the integration.
A brief diagram of the scenario:
Points to note on overall design:
- Kenexa interfaces for user and requisition were synchronous.
- Kenexa user interface was capable of accepting N users at a time. The proxy was called in a loop once for every N users. The result was written to output log using write statements. The log statements indicated success or failure based on the response from Kenexa.
- Kenexa Requisition interface was capable of accepting only 1 requisition at a time. The proxy was called in a loop for each requisition.The result was written to output log using write statements. The log statements indicated success or failure based on the response from Kenexa.
- Redwood scheduler was in the landscape and was leveraged to look at the spool log and email to specific users.
- ABAP programs were scheduled to be run every night. If required they could be run on demand by providing specific input from the emails / abap program log.
- ABAP programs would extract data and call the proxy. The ABAP programs were writing plain logs(write statements). The spool was used by redwood scheduler to email the status of the run to users.
- ABAP Programs were designed to send only the delta changes for users and requisitions.
- A simple java map was used to create the Envelope and put the XML message into the Payload.
Kenexa offers HR-XML based integration. Note that the messages Users and Requisition do not conform to HR-XML standard. HR-XML uses a specific Enveloper format. Please see the diagram below that indicates the Envelope format. The diagram does not contain all the details and is used to highlight the payload piece only.
Other points to note:
- Kenexa Brassring does provide HR-XML standard based integration. Refer their website for further details.
- Kenexa provided only XMLs of the request and response messages that were accepted by their system and not the schema's in spite of request.I was left to create the schema for kenexa system based on their XML instances. This might have changed or may be a one of a case.
- About Us - HR-XML Consortium - Leading the Development of HR Integration Standards
- Kenexa | Recruitment Technology
Note: This blog is based on work that was done a while ago. Some of the details might be missing. If you are in a similar situation and need further info, feel free to post questions. I will try to respond.