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.

Why do we get this error in service portal "Server JavaScript error Cannot read property "sys_class_name" from undefined Line number 679 Script source code logged to browser console Failing widget: 'HRJ Task Submit Order Guide' "

Yashaswini
Tera Expert

Hi,

Please can anyone suggest how to fix the error: "Server JavaScript error Cannot read property "sys_class_name" from undefined Line number 679 Script source code logged to browser console Failing widget: 'HRJ Task Submit Order Guide' " in Service Portal.

Am getting this error while trying to submit an order guide in HR task page where HR task type is Submit an Order guide.

PFA.

 

Thanks in advance,

1 ACCEPTED SOLUTION

Ankur Bawiskar
Tera Patron
Tera Patron

Hi,

refer below links for help

HR tasks with type "Submit Order Guide" throw a null pointer exception on Service Portal "hrj_ticket...

1) when was the last time it worked fine?

2) Did you recently upgrade?

Regards
Ankur

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

View solution in original post

9 REPLIES 9

Sajilal
Mega Sage

Please share the server side script code of your widget.

Thanks,

Saji

Please find the server script of HRJ Task Submit Order Guide widget:

(function() {
if (input)
data.sys_id = input.sys_id;
else if (options && options.sys_id)
data.sys_id = options.sys_id;
else
data.sys_id = $sp.getParameter("sys_id");

if (options) {
if (options.native_mobile == 'true')
data.isNative = true;
else
data.isNative = false;
}

var hrtt = new hr_TaskTicket();
if (input && input.action === 'setTaskSkipped')
hrtt.setTaskSkipped(input.request);
if(input && input.action === 'postProcessing')
hrtt.scPostProcessing(data.sys_id, input.childCaseId);

data.task = hrtt.getTasks(data.sys_id);

if (!data.task.assigned_to_me) {
if (data.task.finished)
data.completed_by = data.task.assigned_to.name;
else {
if (gs.nil(data.task.assigned_to.userId))
data.caption = gs.getMessage("Task is unassigned");
else
data.caption = gs.getMessage("Task assigned to {0}", data.task.assigned_to.name.toString());
data.link_text = data.task.order_guide.name;
data.link = "?id=sc_cat_item&sys_id="+data.task.order_guide.id;
}
}
else
data.hrCatItemWidget = getWidget(data.task.order_guide.id);

data.scChild = {};
data.scChild.id = data.task.generated_id;
data.scChild.name = data.task.generated_name;
data.scChild.link = '/' + $sp.portalRecord.url_suffix + '?id=sc_request&table=' + data.task.generated_table + '&sys_id=' + data.scChild.id ;

function getWidget(cat_item) {
var p = {};
p.sys_id = cat_item;
p.hide_header = true;
p.hide_footer = true;
p.show_add_cart_button = true;
p.display_cart_on_right = 'false';
p.auto_redirect = 'false';
if(data.isNative)
p.native_mobile = 'true';

p.requested_for_id = data.task.subject_person.id;
p.requested_for_display = data.task.subject_person.name;

//var user=new GlideRecord('sys_user');
//user.addQuery('name',data.task.subject_person.name);
//user.query();
//if(user.next()){
//data.emp_id=user.getValue('employee_number');
//}

//var session = gs.getSession();
//session.putClientData('empID', data.emp_id);
//session.putClientData('fromHrTask', 'fromHrTask');

return $sp.getWidget("widget-sc-order-guide-v2", p);
}
})();

The commented lines are customized.

Hi,

did you try adding debug statements

Regards
ankur

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

Thanks