trying to Create a new Record with Server Include and client side script: Tokoyo
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-25-2023 10:59 AM
Here is my server code:
var SGSRecordHandler = Class.create();
SGSRecordHandler.prototype = Object.extendsObject(AbstractAjaxProcessor, {
saveRecord: function() {
var firstName = this.getParameter("sysparm_first_name");
var lastName = this.getParameter("sysparm_last_name");
var fileNumber = this.getParameter("sysparm_file_number");
var gr = new GlideRecord('sgs');
gr.initialize();
gr.setValue('first_name', firstName);
gr.setValue('last_name', lastName);
gr.setValue('file_number', fileNumber);
var sysId = gr.insert();
if (gr.getErrorCode() !== null) {
return "Error creating record: " + gr.getErrorMessage();
} else {
return "Record created with SysID: " + sysId;
}
}
});
// Return the script include's prototype as the script's answer
SGSRecordHandler;
for the above code, i am getting 'AbstractAjaxProcess undefined, maybe missing global qualifier', 'We recommend Client Callable Script Include use GlideRecordSecure instead of GlideRecord API More Info', 'We recommend you add a role based Access Control to the Client Callable Script Include More Info' for the Script Include window.
Here is my clientside:
function handler({api, event, helpers, imports})
{
try
{
var ga = new api.data.GlideAjax('SGSRecordHandler'); // Use the name of your script include
ga.addParam('sysparm_name', 'saveRecord');
ga.addParam('sysparm_first_name', 'John');
ga.addParam('sysparm_last_name', 'Doe');
ga.addParam('sysparm_file_number', 'AW000010000');
console.log('hits')
ga.getXML(function(response)
{
var answer = response.responseXML.documentElement.getAttribute("answer");
if (answer.startsWith("Error")) {
console.error(answer);
} else {
console.log(answer);
}
});
}
catch(err)
{
console.log(err);
}
}
When i run the client script i get 'TypeError: api.data.GlideAjax is not a constructor'
Any help is appreciated
0 REPLIES 0