Parent-Child relationship in Service Desk

Hi, experts

 

I would like to know how to create a parent-child relationship in Service Desk(Interaction).

 

In my company, interaction is used as a means to receive inquiries from business users.

 

Team A initially receives the inquiry(interaction), checks out its content and find out that this inquiry is also related to Team B, so that this inquiry needs to be split into two and I would like to maintain the parent-child relationship of two interactions.

 

If anyone has any idea to realize it, please let me know.

 

Kindly Regards, 

 

Shuta

Parents
  • Hi,

     

    You can achive this calling via a triggers and the script as follows and need to create a button through display option called "Relate Child" and wizard for the same to give an option to select a tickets for the parent ticket. As we have a same option for Incident management tickets.

     

    if ( record.relate_child != null )
    {
    var list = record.child_tickets;
    var child=record.relate_child;
    var a = system.functions.lng(child);
    for (var i=0;i<a;i )
    {
    var childincidents= new SCFile("screlation")
    if (child[i] == null)
    {
    //print("0");
    }
    else
    {
    var findchildincidents = childincidents.doSelect("depend=\"" child[i] "\"")
    if ( findchildincidents == RC_SUCCESS )
    {
    if (childincidents.type == "Child" || childincidents.type == "Parent" )
    {
    print("Could not relate this ticket: " child[i] " has been already associated")
    print("Please reffer the " child[i] " ticket Related Records tab for more details")
    }
    }
    else
    {
    childincidents.source=record.number;
    childincidents.type="Child"
    childincidents.depend=child[i];
    childincidents.source_active=true;
    childincidents.depend_active=true;
    childincidents.source_filename="problem";
    childincidents.depend_filename="problem";
    childincidents.doAction("add");
    list.push(child[i]);
    var location = new SCFile("incidents")
    var findlocation = location.doSelect("number=\"" child[i] "\"")
    if ( findlocation == RC_SUCCESS )
    {
    location.child=true;
    location.problem_status=record.problem_status;
    location.doUpdate();
    }
    var parentincidents = childincidents.doSelect("source=\"" child[i] "\"")
    if (parentincidents == RC_SUCCESS)
    {
    childincidents.type="Parent";
    print("Parent:" record.number);
    childincidents.doUpdate();
    }
    }
    }
    }
    record.relate_child=null;
    }

     

    I have attached workflow of the same.

     

    Regards,

    Kiran

Reply
  • Hi,

     

    You can achive this calling via a triggers and the script as follows and need to create a button through display option called "Relate Child" and wizard for the same to give an option to select a tickets for the parent ticket. As we have a same option for Incident management tickets.

     

    if ( record.relate_child != null )
    {
    var list = record.child_tickets;
    var child=record.relate_child;
    var a = system.functions.lng(child);
    for (var i=0;i<a;i )
    {
    var childincidents= new SCFile("screlation")
    if (child[i] == null)
    {
    //print("0");
    }
    else
    {
    var findchildincidents = childincidents.doSelect("depend=\"" child[i] "\"")
    if ( findchildincidents == RC_SUCCESS )
    {
    if (childincidents.type == "Child" || childincidents.type == "Parent" )
    {
    print("Could not relate this ticket: " child[i] " has been already associated")
    print("Please reffer the " child[i] " ticket Related Records tab for more details")
    }
    }
    else
    {
    childincidents.source=record.number;
    childincidents.type="Child"
    childincidents.depend=child[i];
    childincidents.source_active=true;
    childincidents.depend_active=true;
    childincidents.source_filename="problem";
    childincidents.depend_filename="problem";
    childincidents.doAction("add");
    list.push(child[i]);
    var location = new SCFile("incidents")
    var findlocation = location.doSelect("number=\"" child[i] "\"")
    if ( findlocation == RC_SUCCESS )
    {
    location.child=true;
    location.problem_status=record.problem_status;
    location.doUpdate();
    }
    var parentincidents = childincidents.doSelect("source=\"" child[i] "\"")
    if (parentincidents == RC_SUCCESS)
    {
    childincidents.type="Parent";
    print("Parent:" record.number);
    childincidents.doUpdate();
    }
    }
    }
    }
    record.relate_child=null;
    }

     

    I have attached workflow of the same.

     

    Regards,

    Kiran

Children
No Data