Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
deepakgd
Associate
Associate

Introduction


SAP Cloud Integration version 5.23.**/6.15.** comes with enhancement in transport, where in you can transport single or multiple artifacts rather than the entire integration package.

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 Transport is required to get insights of this blog.


Transport in SAP Cloud Integration is one of the basic needs to move the integration content between different tenants, mostly marked as development, testing and/or production tenants. Till date, the transport of integration content was at the integration package level. So, even if you change/update one or few integration artifacts, then it was required to transport the entire integration package.
With introduction SAP Cloud Integration Transport at Artifact level, no need to transport the entire package, you can now transport only changed/updated artifact(s).

This blogpost covers only the enhancement, and not the complete transport story, especially the configuration part of it, which you can find in the document https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/e3c79d65aa604b80992e2060988... and blogs like https://blogs.sap.com/2018/04/10/content-transport-using-cts-cloud-integration-part-1/ and relevant. The setup(for the different transport modes like MTAR Download, CTS+ Direct and TMS) remains same as for the package level transport.

Single artifact Transport


The Transport action is now introduced at artifacts list viewer of the integration package, sample screenshot below


Transport action at the single artifact level


 


Transport dialog with description and artifact getting transported


 

Multiple artifacts Transport


If you have more than one changed/updated artifacts, you can use multi-select option and the transport action as showcased below.


Transport action at multiple selected artifacts


 


Transport dialog with description and artifacts getting transported


As you might have noticed the description text of the transport dialog, though the transport is happening at the artifact(s) level, underneath the package information is captured and created/updated accordingly in the target tenant, because, artifact on its own can’t sit in a tenant and it needs integration package (as container) in the tenant. Transport of artifact(s) in DRAFT state is/are not supported.

Next Steps:



  1. Access Policies : If an artifact is protected with access policies in source tenant, then transport of such artifact is not possible.  Update : access policy checks are not done during the transport at target tenant hence the line -> And at target tenant, other artifact(s), which is different from artifact getting transported from source, is/are protected with access policies in target tenant, then the transport of such artifact would not succeed. We will be addressing this issue in our next releases. <- are not relevant. To know more about access policies, you can check blog at https://blogs.sap.com/2021/06/07/access-policy-for-securing-design-artifacts-and-control-access-to-i...


Summary


This enhancement in transport, the overhead of transporting the entire package for the changes in one or few integration artifacts gets reduced. You can only transport the artifact in need.
20 Comments
nageshrao
Explorer
0 Kudos

Much needed and a long awaited enhancement !
Thank You

0 Kudos

I really appreciate your help. Thank you sir .

 

 

www.skylightpaycard.com

0 Kudos
Hi Deepak,

 

Much awaited one, thank you 😊

 

Regards,

Vijay
zmudaa
Member
0 Kudos
Great news.

Does it support neo environment? Is it already on closed entry in roadmap for neo SAP CPI?

@Deepak G Deshpande can you answer
deepakgd
Associate
Associate
0 Kudos
Hi,

Yes, it is available for both Neo and Cloud Foundry environments of SAP Cloud Integration

 

-Thanks

Deepak
former_member509755
Discoverer
0 Kudos
Hi Deepak, great to see this functionality.  If there is a new version of the artifact being transported, does this process overwrite the artifact in the destination tenant or does it preserve the version history?

Regards,

Brendan
deepakgd
Associate
Associate
Hi Brendan,

Though the transport overwrite the artifact in destination, but the configurations and also the previous version would be preserved. You can check the version history by clicking on the version number.

 

Thanks

Deepak
former_member509755
Discoverer
0 Kudos
Thank Deepak,

So in the destination system you could revert back to a previous version of that artifact?

Would the artifact's version history be of the versions on the destination tenant or from the source tenant?

Regards,

Brendan Szefinski
deepakgd
Associate
Associate
Hi Brendan,

>>So in the destination system you could revert back to a previous version of that artifact?<< Yes, you can.

>>Would the artifact's version history be of the versions on the destination tenant or from the source tenant?<<  The version would be of destination tenant.

Thanks

Deepak

 
nityanandareddy
Discoverer
0 Kudos
Hi  Deepak,

 

Is there any prerequisites to enable the transport option at iflow level?

Since for our tenant it is not enabled.

Our's is Neo environment with build version 5.27.11.

Thanks & Regards,

Nityananda Reddy
deepakgd
Associate
Associate
0 Kudos
Hi Nityananda,

If you/user have relevant transport related roles and transport mode is set in the tenant settings by tenant administrator, transport option at iflow level would start appearing.

 

Thanks

Deepak
nityanandareddy
Discoverer
0 Kudos

Hi Deepak,

 

Thanks for the reply. Presently in our tenant we have configured transport mode as "none".

But we are in process of implementation of CTS+. But mean time we want to enable the option of  iflow level transport for manual transport mechanism.

So please let us know what options do we want to enable for this.

 

Thanks & Regards,
Nityananda Reddy

deepakgd
Associate
Associate
0 Kudos
Hi Nityananda,

Having transport mode set to none will not enable the transport action. So you need to have one mode set for transport.

And I don't understand what you mean by >>transport for manual transport mechanism<<, if I understand correctly that you want to manually transport it, then download action of integration flow, which downloads the integration flow zip file may come handy. And you can upload the downloaded integration flow zip in another tenant.

 

Thanks

Deepak
nityanandareddy
Discoverer
0 Kudos
Hi Deepak,

Re: Updating the existing artifact version through manual transport mechanism.

Yes you are correct, I am able to download the required integration flow and saved into my local drive from development tenant.

But If I want to upload the same zip file into production tenant I am not able to find the option of upload or import inside the package to update the existing package with the new integration flow or update the existing integration flow with the new enhancements done in the development tenant.


Package Level Options


 


Iflow Level Options


 

My main intention is to transport the integration flow which is already exist in the production tenant which has received some changes and now we need to update the integration flow in the production with the new changes by using manual transport option that is importing and exporting zip file.

Thanks

Nityananda Reddy
deepakgd
Associate
Associate
0 Kudos
Hi Nityananda,

For the very first time, you can upload the integration flow downloaded zip via the steps = In the integration package Artifacts tab (click on Edit on top right corner) -> click on Add dropdown -> Integration Flow -> select Upload radio button and then upload the zip.

For the next time onwards, assuming you have updates to the same integration flow and version increments, you need to select the same integration flow -> click on Actions table column action icon -> View metadata -> click on Edit and then Browse, upload the newer downloaded zip of same integration flow.

Hope this helps

 

Thanks

Deepak
alexanderaigner
Explorer
0 Kudos

Hello deepakgovardhanrao.deshpande

thanks for the Blog. This looks very good and we would like to enable this in our tennant. Unfortunately, we dont seem to find a way how.

Main question: Is it possible to combine the "Transport at Artifact Level" with  export/import transport mode?

All information i can find in regards to this topic points to this Blog.

I have had a look at 2651907 - Content transport between tenants in SAP Cloud Integration and SAP Help https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/LATEST/en-US/e3c79d65aa604b80992e206098... but i am not able to find information with which transport mode it is possible and when it isn't.

Also, in the note it is menntioned that "Transport Settings option is available only if you have the role "IntegrationContent.Transport" assigned to your user."  I assume this is the reason, why i am not able to change the Transport Mode settings in our CPI Tennant. But, I was looking in our tennant (BTP Cockpit - Security - Roles) and we dont seem to have this role and i cant assign it to a user.

Also in this help page https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/LATEST/en-US/fda781c59e4b46a390ce5b409f... it is noted, that this role is actually deprecated?

Could you maybe let me know if and how this can be enabled for "Export/Import" Transports as well?

Thanks and best regards,
Alex

EDIT: I just found a comment in help that IntegrationContent.Transport is only used in Neo and that WorkspacePackagesTransport is the replacement for CF. I assume that this role is only relevant if you use any specific transport mode besides export/import? I assigned it to a custom role collection, as it seems to be not assigned to any existing one and assigned it to the user. no change in the behaviour.

deepakgd
Associate
Associate
0 Kudos
Hi Alexander,

Yes, the role is only for transport modes. And for export/import it is not related.

And with your question >>Could you maybe let me know if and how this can be enabled for "Export/Import" Transports as well? <<, are you looking for "Export/Import" at Artifact level? If so, you can download and upload the integration flows directly.

 

Hope this information helps

Thanks

Deepak
MarkvanDooren
Explorer
0 Kudos
Hi Deepak,

Export and Import of specific artifacts in an Integration Package directly gives a warning that the artifact won't receive any future updates (see screenshot below). This means you won't be able to import an new version of the Integration Package anymore.


Even worse when you try to import a newer version of the Integration Package, CPI even gives an uniqueness conflict (see screenshot below). Deleting the IFlow artifact and reconfiguring the Iflow after import of the Integration Package seems to be to only solution.


In my opinion it should be possible to export/import a whole Integration Package and it should be possible to export/import a specific artifact of an Integration Package without touching the other artifacts. And it should be possible to mix these approaches in one environment. As far as I can see mixing these Export/Import approaches is still not possible.

Do you know whether it is possible to use both approaches without getting conflicts and using reconfigurations? Would this be somethng for the roadmap of SAP?

Kind Regards,

Mark
kamlesh_zanje
Advisor
Advisor
Dear Mark,

Regarding the uniqueness conflict issue, below is my observation. There are two ways to experience this error.

Case 1: Conflicted artifact in integration packages having different technical pkg name across tenants

Tenant - T1

Package  - P1
Artifact - a1
Artifact - a2

 

Tenant - T2

Package  - P2 
Artifact - a1(Artifact ID of a1 in P1 and P2 is same)
Artifact - a3
Artifact - a4

Export P2 from T2 and import in T1 will result into uniqueness issue.

Case 2: Conflicted artifact in integration packages having same technical pkg name across tenants

Tenant - T1

Package  - P1
Artifact - a1
Artifact - a2

 

Tenant - T2

Package  - P1
Artifact - a1 ( GUID/Resource ID of a1 in P1 and P2 is different although artifact Id is same)
Artifact - a3
Artifact - a4

Export P1 from T2 and import in T1 will result into overwrite dialog and then uniqueness issue.

Kindy elaborate which situation you had experienced. However, your expectation is that conflicted artifacts can be ignored and remaining artifacts should be imported along with integration package in the target tenant. If this expectation is correct, I would take this as a feedback and groom the case.

 

Your second issue where update will be lost if artifact is edited will be experienced if user edits the pre-packaged integration content or custom integration content. If this warning appears on edit of pre-packaged content then it is the correct behavior, however experiencing the same warning on edit of custom integration content is a bug and there is as backlog for the correction.

But you mentioned, this issue is experienced on export/import of specific artifacts and this is outside the purview of my understanding. I would request you to provide some more details or report a ticket on LOD-HCI-PI-WT-IFL or setup a call with me (kamlesh.zanje@sap.com).

Apologies for late in replying to your mail. Nevertheless, looking forward for your reply.

Thanks & Regards,

Kamlesh.
alexanderaigner
Explorer
0 Kudos

Hello, we experienced the same issue as mentioned by Mark.

Szenario:

  1. Create package with some flows (P1).
  2. Transport package to next tennant (P1 from T1 -> T2).
  3. Create new flow in T1 in P1
  4. Export / Import the new Flow of T1 to T2 into P1

Now if you want to update the flow, you will have to repeat step 4, but you cannot import the flow again. as it already exists. you will have to delete it.

A cloeague uses the option "View Metadata" in T2. Then click Edit and you can reupload the Integration Flow (exported file from T1). This will make an update of the Flow in place, without loosing the Configuration.

But: if you should decide to Transport the complete package P1 again from T1 to T2 you will get first a warning (that the content will be overwritten) and second the error posted by Mark.

The only solution is to delete the manually imported flows. Then the Transport of the Package is working. Interestingly, when deploying the IFlows after deleting and reimporting the Package, it correctly identified the deleted IFlow as the same as the newly imported one and updates it instead.

Best regards,
Alex