Skip to Content
Product Information
Author's profile photo Deepak G Deshpande

SAP Cloud Integration – Message Mapping as Artifact

Introduction

SAP Cloud Integration version 5.23.**/6.15.** comes with enhancement on message mapping, where in you can create message mapping as artifact.

Note:

  • The forecasted SAP Cloud Integration customer tenant software updates/availability of this version is planned for calendar week 27/28’ 2021 as per the phased tenant update procedures, which may be subjected to change.
  • Know-how of SAP Cloud Integration Message Mapping and Integration Flow is required to understand this blog.

SAP Cloud Integration Message Mapping is one of the crucial data transformation component in SAP Cloud Integration scenarios. Till date, the message mapping component needed to get created as a local resource within Integration Flow projects. And with this, you might have noticed, this message mapping local resource was reusable within the integration flow, but not across different integration flows.

With introduction of SAP Cloud Integration Message Mapping as Artifact, you can now (re)use message mapping, by reference, across different integration flows within the same integration package.

This blogpost explains about this new enhancement.

Creating Message Mapping Artifact

Like any other artifact in SAP Cloud Integration, message mapping can be created inside integration package, as shown below with sample screenshot.

Creating New

If you have required source and target schema files, you can create an empty message mapping artifact project and then upload them to define mappings.

Select%20Message%20Mapping%20Artifact

Select Message Mapping Artifact

 

Provide%20Details

Provide Details

 

Message%20Mapping%20Artifact%20Gets%20Created

Message Mapping Artifact gets created

Click%20on%20the%20artifact%20link%2C%20opens%20the%20mapping%20editor%2C%20click%20on%20edit

Clicking on the artifact, opens up the mapping editor, click on edit to upload resources and define mapping

Click%20on%20Upload%20to%20upload%20and%20add%20schema%20files

Click on Upload under the left hand side Resources view to add required schema files

Select%20required%20files

Select required schema files

Schema%20files%20get%20added%20into%20the%20resource%20view

Schema files get added into the Resource view

 

Select%20Add%20Source/Add%20Target%20message%20and%20select%20the%20schema

Select Add source message /Add target message and select the schema

 

Define%20the%20mappings%20and%20save%20the%20mapping%20artifact

Define the mappings and Save the mapping artifact

Create%20option%20helps%20you%20to%20create%20a%20Groovy%20Script%20to%20define%20and%20use%20User%20Defined%20Functions%20%28UDFs%29

Create option helps you to create a Groovy Script to define and use User Defined Functions (UDFs)

 

Upload

If you have any existing Message Mapping artifact project, you can upload it. Also to simply the conversion of integration flow local message mappings to message mapping artifact, we have enabled the support, where-in you can upload a local message mapping zip, after downloading it from your integration flow project. Sample screenshot below.

Download%20the%20existing%20message%20mapping%20of%20an%20integration%20flow

Step 1: Download the existing message mapping of an integration flow

Upload%20to%20message%20mapping%20artifact%20creation

Step 2: Upload to message mapping artifact creation

 

Importing from ES Repository

If you have message mappings in your ES Repository, you can bring them in.

ES%20Repository%20settings%20will%20be%20read%20from%20SAP%20Cloud%20Integration%20Tenant%20Settings

ES Repository settings will be read from SAP Cloud Integration Tenant Settings

 

Clicking%20on%20the%20Connect%20will%20list%20all%20the%20message%20mappings%20in%20your%20ESR%20System.%20Choose%20a%20required%20mapping%20and%20click%20on%20OK%20to%20create%20a%20Message%20Mapping%20Artifact%20out%20of%20it.

Clicking on the Connect will list all the message mappings in your ESR System. Choose a required mapping and click on OK to create a Message Mapping Artifact out of it.

 

Features like Simulation, Display Queue and Groovy script based user defined functions (UDF) works similar to locally created message mapping.

Referencing In Integration Flow

To use the above created message mapping in an integration flow, you need to first declare the dependency/reference and then assign it to the message mapping flow step inside the integration flow editor. Sample screenshots given below.

In%20the%20Integration%20Flow%20Resource%20view%2C%20select%20References%20tab%20and%20select%20Add%20Reference%20-%20Message%20Mapping

In the Integration Flow Resource view, select References tab and select Add Reference – Message Mapping

 

Select%20required%20message%20mapping%20and%20add%20as%20reference

Select required message mapping and add as reference

Message%20Mapping%20artifact%20will%20get%20added

Message Mapping artifact will get added

 

Select%20Message%20Mapping%20Flow%20Step

Select Message Mapping Flow Step

 

Select%20Message%20Mapping%20from%20Referenced%20Resources%20tab

Select Message Mapping from Referenced Resources tab

Message%20Mapping%20artifact%20will%20get%20assigned

Message Mapping artifact will get assigned

 

Deployment

As of now, there is no auto deployment of referenced message mapping when you deploy integration flow. You need to first deploy the message mapping, and then, integration flow.

Updating Message Mapping Artifact

You can update your message mapping artifact. And once the updates to message mapping are done, you can deploy the message mapping. The changes at runtime will get reflected in integration flow message processing. No need to deploy again the integration flow project.

Next Steps

  1. Enabling cross-package consumption: As of now, you can only refer to the message mapping from integration flow within same package. An integration flow existing in one integration package, can’t refer the message mapping artifact which resides in another integration package. We are working on to enable cross-package consumption scenario.
  2. Deploy Dependencies : as mentioned in the Deployment step above, you need to deploy both artifacts independently. We are working on the enable the auto deployment of referenced/dependent message mappings when an integration flow is deployed.

Summary

This enhancement in message mapping as artifact, would now help many of the scenario, where you have requirements of re-using the same message mapping across different integration flows.

Assigned Tags

      12 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Manoj K
      Manoj K

      Thanks, Deepak for the detailed blog.

      Does this "Message Mapping Artifact" supports writing of Scripts(UDF's) which has reference do external jar files. Can we upload those jar files in this artifact?

      Thanks,

      Manoj

      Author's profile photo Deepak G Deshpande
      Deepak G Deshpande
      Blog Post Author

      Hi Manoj,

      Thanks, and yes, upload of jar files is also be supported.

       

      Thanks

      Deeak

      Author's profile photo SHIVA NARAHARI
      SHIVA NARAHARI

      Thanks, Deepak for the detailed blog.

      Author's profile photo Deepak G Deshpande
      Deepak G Deshpande
      Blog Post Author

      Thanks Shiva !!! 🙂 

      Author's profile photo Souvik Sinha
      Souvik Sinha

      Thanks Deepak G Deshpande for sharing the new features of message mapping artifacts, surely it will help to reduce the rework.

       

      Regards,

      Souvik

      Author's profile photo Deepak G Deshpande
      Deepak G Deshpande
      Blog Post Author

      Thanks Souvik !!! 🙂

      Author's profile photo Hang Seong Chew
      Hang Seong Chew

      Great blog. Is there also plan to make the schemas reusable within the same integration package? For example would be great to reuse the same JSON file based on OAS2/3 which have many API paths, methods, etc.

      Author's profile photo Deepak G Deshpande
      Deepak G Deshpande
      Blog Post Author

      Thanks for the input, we will consider your point of reusable JSON file.

      Author's profile photo praveen kalwa
      praveen kalwa

      Good blog Deepak, this will really help in reuse and reduce the rework.

      Author's profile photo Deepak G Deshpande
      Deepak G Deshpande
      Blog Post Author

      Hi Praveen,

      Thanks for your feedback.

       

      -Deepak

      Author's profile photo Venkata Rao
      Venkata Rao

      Deepak your blogs are excellent and very informative, This blog is good for reusable message mappings.

      Regards, Venkata Rao .G

      Author's profile photo Deepak G Deshpande
      Deepak G Deshpande
      Blog Post Author

      Hi Venkata Rao,

      Thanks for your feedback 🙂

       

      -Deepak