How to Hide related list on-form load?

lucky24
Tera Contributor

Hi Team.

I have to hide particular related list when my affected user is "abel tuter"

for that I have tried with UI policy and on-load client script  even I have used on-change client script and converted into on-load client script.

That all working fine for on-change when i change the value of affected user but that all is not working for on-load when I load the form.

In PDI I am getting same issue.

My code is like below

On load client script-

find_real_file.png

 

UI Policy-

find_real_file.png

 

find_real_file.png

The name of related list I am getting from list control

find_real_file.png

 

Please help me here...?

1 ACCEPTED SOLUTION

function onLoad() {
    ScriptLoader.getScripts(['sn_si.SecurityIncidentConstants.jsdbx'], function() {

        var siConst = sn_si.SecurityIncidentConstants;
        g_form.hideRelatedLists();
        var group = "AFFECTED_ITEMS"; // the default
        var previousIncidentId = g_user.getClientData("incident"); // previous incident user were on
        var currentIncidentId = g_form.getUniqueValue(); // currently loaded incident

        if (previousIncidentId === currentIncidentId) {
            group = g_user.getClientData("group");
        } else {
            siConst.setLastRelatedList(group, currentIncidentId); // set state for the new incident
        }

        var lists = siConst.getList(group);

        if (typeof group === "undefined" || group === "") {
            g_form.showRelatedLists();
        } else {
            for (var i = 0; i < lists.length; i++)
                g_form.showRelatedList(lists[i]);
        }

        // your code
        var ab = g_form.getValue("affected_user");
        if (ab == "62826bf03710200044e0bfc8bcbe5df1") {
            g_form.showRelatedList("REL:c3979d351b310110d8de6464604bcbe0");
        } else {
            g_form.hideRelatedList("REL:c3979d351b310110d8de6464604bcbe0");
        }

    });
}

Regards
Ankur

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

View solution in original post

18 REPLIES 18

Ankur Bawiskar
Tera Patron
Tera Patron

Hi,

when form loads did you check that user is the one which you are using to compare

give some timeout and then compare

add your code within that setTimeout

function onLoad() {
    //Type appropriate comment here, and begin script below
    setTimeout(function(){

// add your logic here

}, 3000);

}

Regards
Ankur

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

Hi Ankur ,

Thanks for yoiur response

I got the problem .

There is one OOB client script for on load .

find_real_file.png

 

Can we change in the OOB client script ?

If yes, so how can I achieve my requirement here?

Please suggest me. 

Hi,

you can update the OOB one with your condition in it

Regards
Ankur

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

Hi,

Where can I add my code in that script.

I am not good in script.

please can you guide me here.?