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.

Redirect Submit to RITM instead request on Service Portal

BenG
Tera Guru

Hi,

When I "Submit" a Service catalog item on service Portal, the request page (sc_request) opens.

I would like a rediction of this submit to ritm page instead sc_request page.

I know I have to modifiy the clone of the widget "SC Catalog Item" but I don't know how.

Any idea ?

Thanks for your help,

1 ACCEPTED SOLUTION

oharel
Kilo Sage

Hi there,

I am not sure it is relevant for you anymore, but still, in case someone else needs it, this is what worked for me:

1. Clone the SC Catalog Item widget

2. change the client script:

(look for "$location.search('id=sc_request&is_new_order..." around line 510)

 

//$location.search('id=sc_request&is_new_order=true&table=sc_request&sys_id=' + a.sys_id); //--> we do not want to redirect to the sc_request page
c.data.myrequest = a.sys_id;
c.server.update();
setTimeout(function(){
var ritmid = c.data.ritmId;
								$location.search('id=form&table=sc_req_item&view=ess&sys_id=' + ritmid);
}, 400);
}

3. and in the server script, arounbd line 11, right after return;, add

if(input) {
if(input.myrequest != undefined) {
   var ritm = new GlideRecord('sc_req_item');
   ritm.addQuery('request',input.myrequest); //from line 514 in the client script ritm.query();
//If exactly one RITM is returned, pass to the Client Controller to redirect user
  if(ritm.next()) {
	data.ritmId = ritm.getUniqueValue();
 }
}

That's it.

harel

 

View solution in original post

20 REPLIES 20

Hi, I got it to work this time, thank you very much for your help.

Johannes