How to render a dialog box based on a condition
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-07-2017 05:32 AM
Hi all,
I have created a glide dialog window which will get input and update the record,
Now i need to show the input field when another field of a table is holding a particular value else it should throw error,
client checked
UI action :
function updateIncidentDetails() {
var sysId = typeof rowSysId == 'undefined' ? gel('sys_uniqueValue').value : rowSysId;
//Initialize and open the dialog
var gDialog = new GlideDialogWindow("alert_incident_window");//Instantiate the dialog containing the UI Page 'alert_incident_window'
gDialog.setTitle("Enter incident details");
gDialog.setPreference('sysparm_sysID', sysId);
gDialog.setPreference('sysparm_table', "em_alert");
gDialog.render();//Open the dialog
}
The above Ui action will get the incident id value in a text box and update it in the remote task id, along with the UI page
I need to display the dialogue box only if the another field has desired value
consider u_fieldname == 1
if i add in the condition of UI action alert is shown as 'Security does not allow the execution of that action against the specified record'
Instead i need a custom alert message to be populated
Can this be achieved ?
- Labels:
-
Scripting and Coding
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-07-2017 05:35 AM
Hi Saranya,
Add the another field on the form layout. Don't put that in condition field.
Update your script as follows:
if(g_form.getValue('u_fieldname') == 1){
var sysId = typeof rowSysId == 'undefined' ? gel('sys_uniqueValue').value : rowSysId;
//Initialize and open the dialog
var gDialog = new GlideDialogWindow("alert_incident_window");//Instantiate the dialog containing the UI Page 'alert_incident_window'
gDialog.setTitle("Enter incident details");
gDialog.setPreference('sysparm_sysID', sysId);
gDialog.setPreference('sysparm_table', "em_alert");
gDialog.render();//Open the dialog
}
Mark Correct if this solves your issue and also hit Like and Helpful if you find my response worthy based on the impact.
Thanks
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-07-2017 05:44 AM
Hi Ankur
i added the filed to form layout and changed as you said, i gave alert in else part, when i clicked on ui action nothing happens,
window is not populated and alert is not shown as well
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-07-2017 06:00 AM
Hi Saranya,
Can you check whether you are getting inside the if condition.
just before the if add alert to show the value of u_fieldname and check what it is giving.
Mark Correct if this solves your issue and also hit Like and Helpful if you find my response worthy based on the impact.
Thanks
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-07-2017 06:11 AM
function updateSmitStatus() {
alert('alert');
if(g_form.getValue('u_fieldname') == 1){
alert('iam in');
}
else {
var sysId = typeof rowSysId == 'undefined' ? gel('sys_uniqueValue').value : rowSysId;
//Initialize and open the dialog
var gDialog = new GlideDialogWindow("alert_smit_window");//Instantiate the dialog containing the UI Page 'alert_smit_window'
gDialog.setTitle("Transmission Incident Exist");
gDialog.setPreference('sysparm_sysID', sysId);
gDialog.setPreference('sysparm_table', "em_alert");
gDialog.render();//Open the dialog
}
}
its not getting in, im getting first alert only