The CreatorCon Call for Content is officially open! Get started here.

Show caller related incident in info message

asifmd
Tera Contributor

Hi Team,

 

Need help with onchange client script with incident form. I want to display the link of active incident raised by the caller in info message whenever user will change the caller.

1 ACCEPTED SOLUTION

Harshal Aditya
Mega Sage

Hi @asifmd ,

 

Hope you are doing well , please try below script-

Client script-

	function onChange(control, oldValue, newValue, isLoading, isTemplate) {
	if (isLoading || newValue === '') {
		return;
	}
	var gaGetInc = new GlideAjax("getIncRec");
	gaGetInc.addParam('sysparm_name', 'fetchRec');
	gaGetInc.addParam('sysparm_caller',newValue);
	gaGetInc.getXML(getRec);
	function getRec(response) {
		var answer = response.responseXML.documentElement.getAttribute("answer");		 
		var url = "Please<a href='" + answer + "'>" + " Click Herre" + "</a>";
		if(answer)
		g_form.addInfoMessage(url);
		
	}
	
	}

 

Script inc

var getIncRec = Class.create();
getIncRec.prototype = Object.extendsObject(AbstractAjaxProcessor, {

    fetchRec: function(){		
		var num = "";
		var url ="/incident_list.do?sysparm_query=numberIN";
		var caller =  this.getParameter('sysparm_caller');
		var getInc = new GlideRecord("incident");
		getInc.addQuery("active",true);
		getInc.addQuery("caller_id",caller);
		getInc.query();
		while(getInc.next()){
		
			num = num + getInc.number+""+",";
		}		
		if (num)
		return url+num;
		else return "";		
	}
});

 

Please mark this response as correct or helpful if it assisted you with your question.

Regards,
Harshal

 

 

View solution in original post

1 REPLY 1

Harshal Aditya
Mega Sage

Hi @asifmd ,

 

Hope you are doing well , please try below script-

Client script-

	function onChange(control, oldValue, newValue, isLoading, isTemplate) {
	if (isLoading || newValue === '') {
		return;
	}
	var gaGetInc = new GlideAjax("getIncRec");
	gaGetInc.addParam('sysparm_name', 'fetchRec');
	gaGetInc.addParam('sysparm_caller',newValue);
	gaGetInc.getXML(getRec);
	function getRec(response) {
		var answer = response.responseXML.documentElement.getAttribute("answer");		 
		var url = "Please<a href='" + answer + "'>" + " Click Herre" + "</a>";
		if(answer)
		g_form.addInfoMessage(url);
		
	}
	
	}

 

Script inc

var getIncRec = Class.create();
getIncRec.prototype = Object.extendsObject(AbstractAjaxProcessor, {

    fetchRec: function(){		
		var num = "";
		var url ="/incident_list.do?sysparm_query=numberIN";
		var caller =  this.getParameter('sysparm_caller');
		var getInc = new GlideRecord("incident");
		getInc.addQuery("active",true);
		getInc.addQuery("caller_id",caller);
		getInc.query();
		while(getInc.next()){
		
			num = num + getInc.number+""+",";
		}		
		if (num)
		return url+num;
		else return "";		
	}
});

 

Please mark this response as correct or helpful if it assisted you with your question.

Regards,
Harshal