How to prevent a child ticket have more than one parent ticket?

Document ID : KB000058590
Last Modified Date : 27/04/2018
Show Technical Document Details
Introduction:
The child-parent relationship is designed to be multiple to multiple. However, for some business needs, you may need to restrict this so that one child ticket can have at most one parent ticket. This tech doc provides the solution for this purpose.
Question:

How to prevent a child ticket have more than one parent ticket?

Environment:
Service Desk Manager/CMDB 12.9, 14.1 and 17.1 on windows/unix/linux
Answer:

Updating the javascript files shipped with Service Desk is not supported by CA Support. You may follow these steps at your own risk, being sure to take the appropriate backups of the files prior.

Following these steps to implement this solution:

  1. Copy update_lrel.js file from the default location to the modification location in

    <SD-install-dir>\site\mods\www\wwwroot\scripts (for windows) or <SD-install-dir>/site/mods/www/wwwroot/scripts( for Unix/Linux)
     
  2. Use a text editor to open the update_lrel.js file in the modification location and search for "function update_child"
    and within this function add this line
     
           extra += "KEEP.where_clause=parent is NULL";

    before this line
     
           update_with_lrel_style(parent_factory, parent_persid,  factory, qrel_name, lable1, label2, "", extra);

    and save and close.
     
  3. From command prompt, run
     
        pdm_webcache -H and   pdm_webcache -b