SAP HCI - Developer Space Introduction and IFlow Creation

29
1 HCI (Hana Cloud Integration) comprises 2 parts: Process Integration (HCI PI) Data Integration (HCI DI) This is a course for consultant to learn how the process integration part of HCI works and can be used. HCI PI has 2 scenarios as of March 2013: Customer OnDemand Integration with CRM / ERP On Premise and Bizx OnDemand Integration with ERP HCM OnPremise. It will grow towards a generic integration platform, starting with integrating various OnDemand Applications with existing solutions. In addition there’s a separate RKT for Financial Services Network (FSN). This integrates banks OnPremise with their Corporates OnPremise. It has additional services on top of the pure integration capabilities.

Transcript of SAP HCI - Developer Space Introduction and IFlow Creation

Page 1: SAP HCI - Developer Space Introduction and IFlow Creation

1

HCI (Hana Cloud Integration) comprises 2 parts:

Process Integration (HCI PI)

Data Integration (HCI DI)

This is a course for consultant to learn how the process integration part of HCI

works and can be used.

HCI PI has 2 scenarios as of March 2013: Customer OnDemand Integration

with CRM / ERP On Premise and Bizx OnDemand Integration with ERP HCM

OnPremise. It will grow towards a generic integration platform, starting with

integrating various OnDemand Applications with existing solutions.

In addition there’s a separate RKT for Financial Services Network (FSN). This

integrates banks OnPremise with their Corporates OnPremise. It has additional

services on top of the pure integration capabilities.

Page 2: SAP HCI - Developer Space Introduction and IFlow Creation

2

Page 3: SAP HCI - Developer Space Introduction and IFlow Creation

3

Page 4: SAP HCI - Developer Space Introduction and IFlow Creation

4

Page 5: SAP HCI - Developer Space Introduction and IFlow Creation

5

Eclipse is the local environment that a consultant / developer / administrator

uses for OnDemand integration.

It’s possible to toggle between the different views without having to change

the environment: Developer Perspective, SAP content Perspective (in GIT)

and Operations Perspective for monitoring and administration (the latter if

you have an administration role).

SaaS admin sees all Participants of a cluster, a tenant admin only his ones.

Analogous for developer / consultant.

Page 6: SAP HCI - Developer Space Introduction and IFlow Creation

Integration Flows (iFlows) are at the heart of integration modeling in Eclipse.

Here source, target, message processing are modeled. The model is an

extension of standard BPMN and gives the possibility to create integration

without coding. Business people are able to understand the high-level models,

so an integration developer has the possibility to talk about the models with a

business person that knows the end-to-end processes and its requirements.

6

Page 7: SAP HCI - Developer Space Introduction and IFlow Creation

The integration flow model is the center for developing. From here you

define connectivity, security, routing, mapping, and so on. BPMN 2.0

notation is used. It brings design time and configuration time together.

The model gives you an easy to understand view about Sender, Receiver

and what happens in between.

Enterprise Integration Patterns (EIP) are a de facto standard that has

evolved during the last years for solving integration problems. See web

page from Camel on EIP. Apache Camel is an open source project for

implementing integration projects easily, and SAP reuses it.

Main elements: Sender system, receiver system, sequence flow

(connections within a pool), message flow (connections beween flow an

participants), receiver/interface router (gateway)

7

Page 8: SAP HCI - Developer Space Introduction and IFlow Creation

This slide shows the Designt time, Configuration Time and corresponding

Runtime Entities.

Most important to know is here:

Currently there‘s a 1:1 relation between Integration fFow Project and iFlow

At runtime OSGI is used

An iFlow is typically mapped at runtime to a Camel route

8

Page 9: SAP HCI - Developer Space Introduction and IFlow Creation

Here you can see 2 example iFlows for Business partner replication between

Customer OnDemand and CRM.

An error branch in COD to CRM integration would be state of the art too. Was

omitted for ease of use in the first demo/exercise.

Both iFlow show a request-response interaction. You have to create 2 distinct

iFlows for that.

9

Page 10: SAP HCI - Developer Space Introduction and IFlow Creation

Here is a more complex iFlow as illustration:

In CRM there‘s the OneOrder concept, so this business object needs to be

transformed to different business objects on COD side (like Opportunity, Lead,

Order…).

So you have gateways where you define conditions when to send information

to which entity.

10

Page 11: SAP HCI - Developer Space Introduction and IFlow Creation

You can use Enterprise Integration Patterns that help you creating your model.

Choose for example an easy point-to-point model or a model including

mappings or different branches.

More templates within an iFlow model will be added over time.

11

Page 12: SAP HCI - Developer Space Introduction and IFlow Creation

Process steps are gouped into routing, transformer, security elements. Gateway, Splitter, Filter are handled in subsequent slides

PKCS7 Security Elements are Signer, Veryfier, Encrypt, Decrypt

Transformer: Mapping, Encoder, Decoder, Enricher, Filter will be handled in detail later

on

12

Page 13: SAP HCI - Developer Space Introduction and IFlow Creation

More and more process steps within an iFlow model will be added over

time.

Currently there are filter and splitter as typical process steps.

Gateway is a specific one where you define under which condition data is

sent along one branch or another. You can define which one is the default

branch.

There are specific process steps for security which aren‘t handled here.

In the transformations chapter you will see additional process steps.

13

Page 14: SAP HCI - Developer Space Introduction and IFlow Creation

© SAP AG 2008

Over time more and more connectivity types will be added.

Configuring SFTP Connectivity:

To set up a secure file transfer channel between a participant (customer) and

SAP NetWeaver Cloud, you need to perform the following tasks:

Setting up an SFTP server. (Cloud integration pushes and pulls files to/from

file server at runtime then).

Configuring the private/public key pairs for client/server authentication in

Cloud Integration and on SFTP server.

Configuring the relevant Camel routes

14

Page 15: SAP HCI - Developer Space Introduction and IFlow Creation

© SAP AG 2008

As of Q3 Idoc over HTTP is supported.

Over time more and more connectivity types will be added.

You can combine different connectivity types when integrating 2 systems

(Example here: WS-RM and sFP).

Configuring SFTP Connectivity:

To set up a secure file transfer channel between a participant (customer) and

SAP NetWeaver Cloud, you need to perform the following tasks:

Setting up an SFTP server. (Cloud integration pushes and pulls files to/from

file server at runtime then).

Configuring the private/public key pairs for client/server authentication in

Cloud Integration and on SFTP server.

Configuring the relevant Camel routes

15

Page 16: SAP HCI - Developer Space Introduction and IFlow Creation

16

Supported versions: SSH version 2 (as specified in

http://tools.ietf.org/html/rfc4251) SSH File Transfer Protocol (SFTP) version 3 or higher

File directory can be chosen by customer via configuration

Reliable data transfer: Getting only complete files: at the point in time when file writing procedure is

completed on hard disc

File is not deleted automatically after file get operation

Idempotency repository: On database

Page 17: SAP HCI - Developer Space Introduction and IFlow Creation

Here you see adapter specific properties for the sftp example:

Define directory and file as well as connection parameters like timeout and

maximum response attempts.

17

Page 18: SAP HCI - Developer Space Introduction and IFlow Creation

Additional features You can use: Working Sets: You can bundle several projects in a working set (for example projects

for a customer or a scenario)

Externalize parameters of an iFlow, Configure multiple parametrized attributes

Save an iFlow as template: Then you can reuse ist model when creating new iFlows

instead of starting from scratch.

Import an iFlow from file system: If a colleague sends you an iFlow for reuse, you

can import it via right-mouse click.

18

Page 19: SAP HCI - Developer Space Introduction and IFlow Creation

You already learned about process steps for Transforming (like Mapping,

Encoder, Decoder, Enricher, Filter), now we can see additoinal process steps

for security: Signer, Verifier, Encryptor / Decryptor.

Encryptor / Decryptor: Defines logic to encrypt / decrypt a message.

Verifier: You use it in order to veryfy the signature of a secured message

using a public key.

Signer: You use this entity to sign a message using an Algorithm / Private

key / Certificate.

19

Page 20: SAP HCI - Developer Space Introduction and IFlow Creation

Preview on some model enhancements that come in Q2 2013 the latest:

Multiple routes: You can model multiple routes via adding additional pools

containing their own processing logic, if the sender is able to send

messages that can be processed differently

Several senders: If you have several Senders you see several lines in the

sender entity in your iFlow model. Under the properties tab all the sender

tenants are added.

Subflows: An iFlow model can become quite difficult to read if many pools

and/or process steps are added. So you can nest these processing steps

via creating a subflow entity in a pool. Via double-clicking you can open a

new model with a pool that contains exactly one start and one end entity.

Between them various process steps can be modeled.

20

Page 21: SAP HCI - Developer Space Introduction and IFlow Creation

Overview of typical steps for a consultant in a project for Customer OnDemand

to CRM example scenario:

GIT configuration (done only once) and fetching SAP content from there.

Mapping can be fetched from ESR optionally.

The existing sources will be adjusted to the current landscape, the

application systems (COD, CRM) will be configured for integration (the

latter in a separate course part).

When the integration flows are complete within development environment

Eclipse, they are deployed to Hana Cloud Integration tenant of currentl

landscape.

Now the scenario is executed: Creation of a business partner in COD,

which is replicated to CRM, and vice versa.

The scenario can be monitored end-to-end: In the source application (if the

message was send), in HCI (if the message arrived here and was

processed correctly), in the target application (if the message arrived and

had the correct payload).

After that mapping exercises and an sftp scenario will be shown in order to give

you a broader picture which is not only related to this training scenario.

21

Page 22: SAP HCI - Developer Space Introduction and IFlow Creation

In the demo you will see a SOAP to sftp integration using a SOAP UI. Here you

see the different steps you have to do:

For that first you have to download personal certificates that will be needed

by SOAP UI and by HCI iFlow.

Security features like adding certificates are mentioned as part of

configuration steps here.

22

Page 23: SAP HCI - Developer Space Introduction and IFlow Creation

1) Add a folder for a specific user on sftp server

2) Create conditional routing: If FileName equals a specific string entered by a

training participant, it shall be sent to the new folder (Receiver39), otherwise

(default) to the original folder (Receiver1).

3) Add certificate to Sender

4) Configure receiver channels: Add host, folder, user and so on.

5) Deploy iFlow on tenant.

23

Page 24: SAP HCI - Developer Space Introduction and IFlow Creation

24

Page 25: SAP HCI - Developer Space Introduction and IFlow Creation

At design time you have several strategies at hand for troubleshooting. In

addition you have several possibilities to find errors in operations

perspective during monitoring at runtime. Those are mentioned in another

slide.

If connection to the server couldn‘t be established, check connection to

operations server under Window->Preferences->Operations Server.

Not all erros will prevent you from continuing!

Troubleshooting at design time:

In the iflow model you see a red cross in case of errors. You can continue

configuring though.

In the explorer you see a red cross at your project if there‘s errors. You can

execute design time checks on the project using right-mouse click on your

project.

Under properties tab you see erroneous entries via a red cross.

Deployment status and local testing:

You can see if all your sources have been successfully deployed on the

tenant via Component status view tab. Here you see the explicit status.

You can test your project adding an explicit input xml and running the

project. This shows you the output xml.

25

Page 26: SAP HCI - Developer Space Introduction and IFlow Creation

In the middle of the Eclipse screen you have addtitional tabs useful for

troubleshooting at runtime.

Problems: You see an overview of the problems occurred including

description, resource and path.

Console: You see very detailed steps about what happened at runtime.

Error Log: You see details concerning each entity in the iFlow model.

26

Page 27: SAP HCI - Developer Space Introduction and IFlow Creation

On the main Go-to-market Wiki for Hana Cloud Integration page you might

find up-to-date presentations including business view, technical details and

for example you might find a sandbox and exercises you can try out. The

sandbox availbability can vary from takt to takt.

In the discussion forums use the „Content“ area to post discussion

questions to the Jam rooms.

The discussion forum for SAP Hana Cloud Integration focusses on

technology including process and data integration using HCI, not only

process integration like in this course.

27

Page 28: SAP HCI - Developer Space Introduction and IFlow Creation

28

Page 29: SAP HCI - Developer Space Introduction and IFlow Creation

29