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: 
TarunJain
Product and Topic Expert
Product and Topic Expert

This blog is going to help in troubleshooting Versioning and Transport issues, along with few Best -Practices and the steps required to collect the information useful for root cause analysis at SAP side.


 

We can categorise the VNT issues into two :




  1. Database inconsistency issues while performing the actions like,

    • Export/Import

    • Create/Save/Activate/Delete



  2. Connectivity/Configuration issues with CTS transport


 

Database inconsistency issues :


Most of the DB inconsistencies prevail while performing transports from source system to target system. In general, for any transport activity, one has to have transport paths as given below:


 

Considering a generic scenario transport path can be like this


Development Environment -> Quality Environment –> (Pre-Production) -> Production Environment


 

Best Practices for transporting the objects from one system to other :




  • Please transport objects in unidirectional(as given above) i.e., always create(or update) the objects in the source system and then moved across the systems in the defined transport path.

  • Please do not export the object(s) from same system and re-import in the same system.

  • Please do not export the object(s) from target system and re-import back into source system.


 

DB inconsistency issues were broadly classified into 5 categories(based on most frequently occurring issues) :


 


  • CHANGELIST ERRORS




The change-list error happens,




  1. When object(s) is transported from source to target system and the object(s) is already part of an open changelist on target system.

  2. When edit or display operation is performed on the object(s), as given below :



Sample screenshot of error related to changelist.


Steps to follow for Change-List errors :




  1. Please check whether the changelist(ID) shown in the transport logs or error pop-up is available under the changelist tab in the UI.

  2. If available then, please see if you can accept or reject the open changelist(ID) as per your requirement.

  3. If not available then, please follow the SAP note 1399960 ( https://launchpad.support.sap.com/#/notes/1399960) and collect the query results(SELECT) as suggested and share the results over customer case for RCA.


NOTE: For root cause analysis, customer has to provide DB query results in a proper format i.e., each row(resulted) should be in single line while copied to a CSV file(text file). This can be achieved by executing some commands for Page-Size(SET PAGESIZE) and Line-Size(SET LINESIZE).



 


  • PRECONDITION ERRORS




The Pre-Condition error happens when an object(s) is modified and being saved, as given below :


Sample screenshot of error related to inconsistencies


Steps to follow for Pre-Condition errors :




  1. Please get the object-ID of the object for which you are getting the “Pre-Condition”error(from Swing UI).

  2. Please follow the SAP note 1407454 ( https://launchpad.support.sap.com/#/notes/1407454) to get the version graph of the object-ID(fetched in step-1)


Note : Version graph is nothing but result of 11 SELECT queries suggested in the attachments(appropriate one*) of SAP note 1407454.




  1. Collect the query results(SELECT) as suggested and share the results over customer case for RCA.


NOTE: For root cause analysis, customer has to provide DB query results in a proper format i.e., each row(resulted) should be in single line while copied to a CSV file(text file). This can be achieved by executing some commands for Page-Size(SET PAGESIZE) and Line-Size(SET LINESIZE).


 


  • MERGE-RELATION ERRORS




The Merge-Relation error happens when you are trying to resolve the conflict(post transportation) as given below :



Sample screenshot of error related to merge relation null


Steps to follow for Merge-Relation errors :




  1. Please get the object-ID of the object for which you are getting the “Merge Relation is Null” error(from Swing UI).

  2. Please follow the SAP note 1407454 ( https://launchpad.support.sap.com/#/notes/1407454) to get the version graph of the object-ID(fetched in step-1)


Note : Version graph is nothing but result of 11 SELECT queries suggested in the attachments(appropriate one*) of SAP note 1407454.




  1. Collect the query results(SELECT) as suggested and share the results over customer case for RCA.


NOTE: For root cause analysis, customer has to provide DB query results in a proper format i.e., each row(resulted) should be in single line while copied to a CSV file(text file). This can be achieved by executing some commands for Page-Size(SET PAGESIZE) and Line-Size(SET LINESIZE).


 


  • GETSTATE() ERRORS




The IVersion.getState() error happens when you are trying,




  1. To modify the object

  2. To transport the object


as given below :



Sample screenshot of error related to getState()


Steps to follow for IVersion.getState() errors :




  1. Please get the object-ID of the object for which you are getting the “getState()” error(from Swing UI or Transport Logs).

  2. Please follow the SAP note 1407454 ( https://launchpad.support.sap.com/#/notes/1407454) to get the version graph of the object-ID(fetched in step-1)


Note : Version graph is nothing but result of 11 SELECT queries suggested in the attachments(appropriate one*) of SAP note 1407454.




  1. Collect the query results(SELECT) as suggested and share the results over customer case for RCA.


NOTE: For root cause analysis, customer has to provide DB query results in a proper format i.e., each row(resulted) should be in single line while copied to a CSV file(text file). This can be achieved by executing some commands for Page-Size(SET PAGESIZE) and Line-Size(SET LINESIZE).


 


  • DEVLINE ERRORS




The Devline error happens when you are trying to save an object as given below :



Sample screenshot of error related to devline


 

Steps to follow for DevLine errors :




  1. Please get the object-ID of the object for which you are getting the “Devline does not exist” error(from Swing UI or Transport Logs).

  2. Please follow the SAP note 1244593 (https://launchpad.support.sap.com/#/notes/1244593) to get the query results

  3. Collect the query results(SELECT) as suggested and share the results over customer case for RCA.


NOTE: For root cause analysis, customer has to provide DB query results in a proper format i.e., each row(resulted) should be in single line while copied to a CSV file(text file). This can be achieved by executing some commands for Page-Size(SET PAGESIZE) and Line-Size(SET LINESIZE).


 

CONFLICT ERRORS


In case of a successful import action, you will end up in resolving conflict manually. For this, please open the conflict tab(in the Swing UI) and resolve the conflict as per your requirement i.e.,




  1. Click on “Select Displayed Version”(i.e., transported from source system) and then activate it

  2. Click on Display Active Version(i.e., existing in target system) and then activate it.


as given below :



Conflict Resolution Page


As clearly suggested in KBA -  https://launchpad.support.sap.com/#/notes/0001580750


If there are conflicts created resolve in favour of the incoming version.


 

MOST COMMON ISSUES/CHALLENGES(WHILE FETCHING QUERY RESULTS)



  • Executing SQL queries(SELECT) provided in the suggested SAP note(s) without checking whether they are Design objects(ESR) or Configuration objects(Directory).

    • Always check which type objects are having problem either ESR or Directory and accordingly choose the appropriate attachment from the SAP note.



  • Executing SQL queries(SELECT) without the proper format of the values or case-sensitivity, which is different from database to database.

    • Always try to check the format(or case sensitivity) of the values by executing simple SELECT query without any condition.




For example, SELECT * FROM <DB-Table> where DB-Table can be XI_QVERSION (Version DB table)




  • Executing SQL queries(SELECT) without providing schema-name(as a prefix to DB table), as it mandatory in some cases.

    • Sometimes you may have to prefix the Schema-Name to the DB table-name




For example, SELECT * FROM <Schema-Name>.<DB-TableName>


 NOTE: For root cause analysis, customer has to provide DB query results in a proper format i.e., each row(resulted) should be in single line while copied to a CSV file(text file). This can be achieved by executing some commands for Page-Size(SET PAGESIZE) and Line-Size(SET LINESIZE).


 

OTHER ERRORS :


In case you are facing any issue other than the mentioned above or none of the above queries fetch  results, please provide below data via CSN




  • Error screenshot

  • Steps to reproduce

  • Affected object

  • Object id (Can be fetched from Swing-UI)

  • Version graph for that object


Alternatively, you can also refer note - https://launchpad.support.sap.com/#/notes/0002096265


 

The above steps will help you to troubleshoot most of PI\PO VNT inconsistency issues. If you face any other issue or have some suggestions go ahead and add a comment.

For more of such content follow the SAP Process Orchestration environment Topic page https://community.sap.com/topics/process-orchestration.
Please feel free to ask and answer questions on https://answers.sap.com/tags/477916618626075516391832082074785
and read other posts on the topic https://blogs.sap.com/tags/477916618626075516391832082074785/
If you find the content insightful, will appreciate a follow to my profile for similar content 🙂