Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Service Operation Workspace - I want to move the related list one after the other (separate tabs)

Kiruthika J
Tera Contributor

Hi All,
I want to move the related list of interaction or all table from vertical to horizontal.

KiruthikaJ_0-1761564221578.png

I have gone through below community post but I'm not sure after going to  sn_sow_record.SOWRouteUtil and clicked create implementation and how to proceed further.

https://www.servicenow.com/community/next-experience-blog/service-operations-workspace-showing-relat...

Thank you !!



1 ACCEPTED SOLUTION

@Kiruthika J 

I was able to have this output.

I believe I provided an approach for you an you can play with this further.

It's just that the same related list is coming again within each tab

var SOWInteractionRouteUtil = Class.create();
SOWInteractionRouteUtil.prototype = {
    initialize: function() {},

    getRecordRoutes: function(table, sysId) {
        /* intentionally left blank */
    },

    getListsForRelatedListTab: function(relatedLists, table, tabName) {
        /* intentionally left blank */
        // if (!relatedLists)
        //     return;
        // var excludeLists = ["REL:e9343b6a873303002ae97e2526cb0b00"];
        // var lists = [];

        // if (tabName === 'related_list') {
        //     lists = relatedLists.filter(function(rl) {
        //         return excludeLists.indexOf(rl.value) === -1;
        //     });
        // }
        // return relatedLists;
    },

    getRelatedListConfig: function(table, sysId) {

        //Standard related lists tab configuration
        //var relatedRecordTab = RELATED_RECORD_TAB;

        //List of objects, each object is a separate tab
        var result = [{
                "label": gs.getMessage("Related Tasks"),
                "id": "related_tasks",
                "exclusionList": null,
                "inclusionList": ["REL:e9343b6a873303002ae97e2526cb0b00"] //Related lists to show on the tab
            },
            {
                "label": gs.getMessage("User's Interaction"),
                "id": "user_interaction",
                "exclusionList": null,
                "inclusionList": ["REL:e32c8b0353602110ad0fddeeff7b12ef"] //Related lists to show on the tab
            },
            {
                "label": gs.getMessage("User's Assets"),
                "id": "user_assets",
                "exclusionList": null,
                "inclusionList": ["REL:e32c8b0353602110ad0fddeeff7b12ef"] //Related lists to show on the tab
            },
            {
                "label": gs.getMessage("Interaction Related Records"),
                "id": "interaction_related_records",
                "exclusionList": null,
                "inclusionList": ["interaction_related_record.interaction"] //Related lists to show on the tab
            }
        ];
        // result.push(relatedRecordTab);

        return result;
    },

    handles: function(table, sysId) {
        return table === "interaction";
    },

    type: 'SOWInteractionRouteUtil'
};

AnkurBawiskar_0-1761650737290.png

 

💡 If my response helped, please mark it as correct and close the thread 🔒— this helps future readers find the solution faster! 🙏

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

View solution in original post

13 REPLIES 13

Dr Atul G- LNG
Tera Patron
Tera Patron

Hi @Kiruthika J 

Being a BPC, I would say let’s just go with this. The reason is that it’s primarily about UI-built configuration. If your team has a good grasp of the UI build flow, they can complete the work. Even if there’s a 1% deviation, I would suggest educating the users and continuing to use the same approach.

*************************************************************************************************************
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.

Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]

****************************************************************************************************************

you mean not go-ahead with the customization?

 

Hi @Kiruthika J 

My recommendation is yes, do not go for customization.

*************************************************************************************************************
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.

Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]

****************************************************************************************************************

Ankur Bawiskar
Tera Patron
Tera Patron

@Kiruthika J 

why not stick to OOTB UI and train agents about this?

With this you need not handle any customization

If you still want to do then you can check any OOTB Record page variant where it's showing as separate tab and then repeat for your

See in CSM workspace the INC/Case has related records as separate tab, see how that's implemented

AnkurBawiskar_0-1761565964572.png

 

💡 If my response helped, please mark it as correct and close the thread 🔒— this helps future readers find the solution faster! 🙏

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader