GlideAjax not calling Script Include on Catalog Item submit (Service Portal)

NikhithaNikki
Tera Contributor

Hi all,
I’m facing an issue while trying to create a Hardware Disposal Order from a Catalog Item (Service Portal / Employee Center) using GlideAjax, and I’m hoping for guidance on the correct approach.
Requirement

On catalog item submission, create a record in sn_hamp_hardware_disposal
Pass values like Stockroom and Location from the form
Use a Script Include (AbstractAjaxProcessor) to handle record creation


What I Implemented

Created a Client Callable Script Include in the sn_hamp scope extending AbstractAjaxProcessor
Calling it from a Catalog Client Script (onSubmit) using GlideAjax

client script

function onSubmit() {
var ga = new GlideAjax('QuestHardwareDisposalOrder');
ga.addParam('sysparm_name', 'createDisposalOrder');
ga.addParam('sysparm_stockroom', g_form.getValue('select_stockroom'));

ga.getXMLAnswer(function() {
g_form.submit();
});

return false;
}

script include

var QuestHardwareDisposalOrder = Class.create();
QuestHardwareDisposalOrder.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {
 
    createDisposalOrder: function() {
        gs.log('[Nikhitha] createDisposalOrder called');
        var stockroom = this.getParameter('sysparm_stockroom');
        var location = this.getParameter('sysparm_location');
        var dis = new GlideRecord('sn_hamp_hardware_disposal');
        dis.initialize();
        dis.stockroom = stockroom;
        dis.location = location;
        dis.assigned_to = gs.getUserID();
        dis.insert();
 
        return "Disposal Order Created: " + dis.number;
    },
 
    type: 'QuestHardwareDisposalOrder'
});
 

Issue

The catalog item submits successfully
But the Script Include is not called
No logs appear (gs.info does not log)
No record is created in sn_hamp_hardware_disposal

0 REPLIES 0