here the server side code is running first and then the client side how can i call the code
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-12-2024 01:03 AM
function test() {
window.open(redirectURL, '_blank');
gsftSubmit(null, g_form.getFormElement(), 'creat_chang');
}
var resultAsObject = true;
var demandUtil = new AjaxCreateRelatedEntityFromDemand();
var changeObj = demandUtil.createChange(current.sys_id, resultAsObject);
var changeId = changeObj.sys_id;
var number = changeObj.number;
var displayLabel = changeObj.label;
var change;
var message;
var link;
if (changeId) {
change = new GlideRecord('change_request');
change.addQuery("sys_id", changeId);
change.query();
if (change.next()) {
link = ' <a href ="/change_request.do?sysparm_query=number%3D' + number + '">' + number + '</a>';
gs.addInfoMessage('sumanthhhhhhhhhhh' + link);
message = gs.getMessage("{0} {1} has been created");
message = message.replace("{0}", displayLabel);
message = message.replace("{1}", link);
gs.addInfoMessage(message);
}
} else {
message = gs.getMessage("Error creating {0}");
message = message.replace("{0}", displayLabel);
gs.addErrorMessage(message);
}
here the server side code is running first and then the client side
how can i call the code so that client side should run first
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-12-2024 04:31 AM
Hello @Utsav JAISWAL ,
To ensure that the client-side code runs before the server-side code, you can use a client script with the "onLoad" type.
Here's an adjusted version of your script:
function onLoad() {
// Your client-side code here
window.open(redirectURL, '_blank');
gsftSubmit(null, g_form.getFormElement(), 'creat_chang');
// Continue with the rest of your code
var resultAsObject = true;
var demandUtil = new AjaxCreateRelatedEntityFromDemand();
var changeObj = demandUtil.createChange(current.sys_id, resultAsObject);
var changeId = changeObj.sys_id;
var number = changeObj.number;
var displayLabel = changeObj.label;
var change;
var message;
var link;
if (changeId) {
change = new GlideRecord('change_request');
change.addQuery("sys_id", changeId);
change.query();
if (change.next()) {
link = ' <a href ="/change_request.do?sysparm_query=number%3D' + number + '">' + number + '</a>';
gs.addInfoMessage('sumanthhhhhhhhhhh' + link);
message = gs.getMessage("{0} {1} has been created");
message = message.replace("{0}", displayLabel);
message = message.replace("{1}", link);
gs.addInfoMessage(message);
}
} else {
message = gs.getMessage("Error creating {0}");
message = message.replace("{0}", displayLabel);
gs.addErrorMessage(message);
}
}
Let me know your views on this and Mark ✅Correct if this solves your query and also mark 👍Helpful if you find my response worthy based on the impact.
Thanks,
Aniket
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-12-2024 05:30 AM
my code is written in UI action as above
how can we use it in UI action
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-14-2024 11:58 PM
Hi @Community Alums
Please check the checkbox "Client" on UI Action as shown in snip below. Refer below post for reference :
Thanks & Regards
Amit Verma
Please mark this response as correct and helpful if it assisted you with your question.