Thursday, 12 May 2016

Data Hub Overview in hybris

Data Hub Overview

The hybris Data Hub enables end users to easily feed data from external systems into any hybris system.
The complexity of the hybris data structure is hidden from the users that are designing the integration
The Data Hub also acts as a staging area where external data can be analyzed for errors and corrected before being fed into hybris.

Asynchronous Architecture

Outbound: hybris -> SAP ERP

Process Engine is used for decoupling
Data Hub adapter transfers data to Data Hub
Data Hub extensions define the raw data formats, the transformation to canonical data format and the target system format.
SAP IDOC outbound adapter reads target system definition, creates IDOCs and sends via Spring-Integration to SAP ERP.

Inbound: SAP ERP -> hybris

IDOCs are received by SAP IDOC inbound adapter, which creates Spring-Integration messages. Messages are routed to mapping services provided by SAP extensions
Mapping services are creating raw data fragments and route them to Data Hub raw inbound. Data Hub transforms raw items to canonical items and then to target them, which are published to hybris.
During Impex data processing, hybris services, interceptors, translators and events are used.

Asynchronous Architecture ( Spring – Integration Inbound )
Rest web service idocInboundService receives IDocs from ERP, creates a message and sends it to the idocXmlInboundChannel.
A router routes the messages according the IDOCTYPE to specific channels, eg. ORDERS05, MATMAS.

The specific channels are read by service activators. The service activators are calling mapping services,
 provided by the different hybris Data Hub extensions for SAP ERP. eg. saporder, sapcustomer, sapproduct, sappricing.


The mapping services are returning messages in the Data Hub raw fragment format, which are routed to the Data Hub tawFragmentDataInputChannel.

SAP IDOC outbound adapter creates a message with Java object for IDoc and sends it to the sapIDocOutboundChannel.
A Marshaller transforms the Java object to a xml object and puts it into the sapXmlOutboundChannel
.
A further transformer creates a String message out of it and puts the messages to the sapHttpOutboundChannel.

The sapHttpOutboundAdapter finally sends it as IDOC/xml via http to the ERP system. This adapter also handles the security and authorisation requirements.

For customer inbound, the Data Hub Pool SAPCUSTOMER_INBOUND_POOL is used. This pool is configured for autocompose and auto publish

When RawCustomer data is stored, a composition is started which transforms the raw model to the canonical model.




When the canonical model is available the autopublish starts and creates the target items for B2BUnit, B2bCustomer and Address.




No comments:

Post a Comment