How to Hide/Show Variable set based on logged in USER?

Anand Shukla
Mega Guru

Hi Experts,

I have created Two different variable set and i want to show one at one time based on the logged in user.

Case: If logged in User Employee type = Permanent then show variable set 1. Else show variable set 2.

Please suggest me how to achieve this?

1 ACCEPTED SOLUTION

Monika13
Giga Expert

Hi,

Script include 

    getUserInformation: function() {
        var user_sys_id = this.getParameter('sysparm_user_id');
		var user = new GlideRecord('sys_user');
        user.get(user_sys_id);
        if (user.next()) {
			var typ=user.employmenttype;
           return typ;
        }
    },

onLoad client script

function onChange(control, oldValue, newValue, isLoading, isTemplate) {
   if (isLoading || newValue === '') {
      return;
   }
  var ga = new GlideAjax('getUserDetails');
    ga.addParam('sysparm_name', 'getUserInformation');
    ga.addParam('sysparm_user_id', g_form.getValue('caller_id'));
    ga.getXML(parseUserResponse);

    function parseUserResponse(response) {
         var answer = response.responseXML.documentElement.getAttribute("answer");
  
if (answer=='permenant'){

		g_form.setVisible("VARIABLESETname1",true);
g_form.setVisible("VARIABLESETname2",false);
		
    }
   else{

		g_form.setVisible("VARIABLESETname2",true);
g_form.setVisible("VARIABLESETname1",false);}

}

View solution in original post

5 REPLIES 5

Ankur Bawiskar
Tera Patron
Tera Patron

Hi,

please share your complete client script here

Regards
Ankur

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