This blog is part of the SAP BW/4HANA Development blog series
In line with SAP’s roadmap for a hybrid data warehouse on HANA, it has become common for customers to develop models integrating HANA models and BW info providers into composite providers.
In doing so, when dealing with change management and transports across landscapes, it becomes challenging to transport Calculation views on HANA separately and BW models separately, often requiring manual intervention to adjust models once they reach the target system.
In this blog we will be seeing on how to transport SAP HANA objects such as calculation views, procedures etc. via the transport management system (TMS).
As part of the new additions, SAP HANA provides the option of “Delivery Units” in order to migrate native objects like tables, calculation views across the system landscape, but this method has a few challenges like
- Cannot identify when the changes were migrated.
- Last modified date and user are unknown
- Hybrid models requiring transports across different systems.
In order to tackle this we can use the TMS to track changes made in each version similar to transporting native BW objects. Below are the steps in order to achieve this:
- Make sure the HANA objects created are a part of a package and not just in your schema.
2. Go to transaction code SCTS_HTA or SCTS_HTA_DEPLOY and select the package in which your HANA object is present. The checkbox “Subpackages too” lists all objects that are within the sub package as well. When unchecked only the objects under the main package a are displayed.
- By default all objects are checked. The status column denotes if an object is already synched or collected in a TR. Green denotes that it has already been synched and yellow denotes that it has not.
3. Uncheck all the objects and choose the ones that need to be captured and migrated. Once you select the objects and execute you will be prompted with a window for choosing the package and the TR in which you want to collect said object.
The same Transport request can be used to collect BW objects to have a single transport for all objects.
4. Once the objects have been collected, the status turns green and the columns related to the transport such as ABAP version of the object, last changed user and time in ABAP will be populated accordingly.
5. Check the contents of the TR in SE09. The objects will be collected along with the relevant package.
6. If a change is made to an object in HANA modeller that is already collected in a TR, those changes will not be automatically captured. We will have to manually synchronize them again. As shown below, the calculation view CV_DECISION_TBL was changed, so the object version in HANA and ABAP do not match. We will have to resynch them by selecting the object we want to synchronize.
Once synchronized the object status is green and versions are in synch.
7. In cases were the object is deleted from the transport, those objects will still show up as synced (Status = Green) in SCTS_HTA list. Such objects need to be synched again to a transport in order to migrate them across the landscape. The object HT_EMPLOYEE_DETAILS was deleted from the TR, so we need to resynchronize the object with a new TR.
This method is an easy way for change management and for traditional BW developers this would be an all too familiar method to keep track of the changes. Also for customers who have implemented CHARM, it would ensure that processes can be kept as is and avoid adjustments to the CHARM process to accommodate such hybrid models.
Hope this was helpful. Keep watching this space for more SAP BW4/HANA tips and tricks for making life easier for a developer.