With SAP HANA, SAP have graciously given us several ways to move HANA content to different environments:
Change and Transport System (CTS) - HTA (Recommended) + HTC
Extended Change and Transport System (CTS+) using specially configured transport routes - Recommended for exclusive HANA application.
SAP HANA Application Lifecycle Management - Can be used if there is no CTS+ in use
If you wish to know more about the differences between these, you can read more on this great blog from Karin Spiegel. In this blog, Karin makes it quite clear of the importance of choosing the method of transporting and sticking with it. SAP also have some useful official document on this subject.
In this blog we will demonstrate the use of the CTS system using HTA on the ABAP layer. I might add a caveat before we proceed, in this example, it is using the HTA transport mechanism for HANA roles with no ABAP object dependencies as it works very nicely with the co-existing transport application (not Charm), and also saves on extra licenses for this specific third-party application.
Transporting HANA Roles
After you have made your desired changes to your roles in HANA with all roles activating successfully, navigate to the Transaction code SCTS_HTA - In this example you will see the naming convention is SECURITY.ROLES.CORE.
- Execute the Repo Package SECURITY.ROLES.CORE
Once you execute the repo it will show you the below screen. If a role shows as GREEN, this means the role is sync’d correctly and status in the HANA DB is the same in the ABAP Layer.
If the role shows as yellow, then it means that the role in the HANA DB has been changed and is different than the version that has been sync’d with the ABAP layer, thus you must run the sync job in this Tcode to align the roles:
Run the Sync job (click on the execute sync button on the top left of the screen) to fix the yellow status. If the sync job does not fix the yellow status, then you must recheck your HANA roles to see if there was an issue during activation or an existing change is blocking the sync (issues can arise here with change recording enabled so be sure to check if there is a change that is needed to be released).
If everything is successful and done correctly, you will then receive a pop up with the option to choose or create a workbench request, which ties in nicely with your already existing transport system in ABAP (Solution Manager, ACDC, STMS, etc)
TIP: Make sure you have Change Recording switched off for this method, it triggers more steps that need to be done in approving and releasing the changes. It must be noted that when you switch Change Recording off, you will lose the ability to easily check the change logs for the object as HANA Change Recording is user specific. This will still work with Change Recording switched on, but its an extra headache to approve and release. I prefer this method using HTA as it always transports the current active version, possibly better for decreasing downgrade issues but debatable with CTS+.
Hopefully this will prove beneficial for you in your HANA transporting adventures ;)