- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-02-2017 10:00 AM
Hi community,
I'm trying to create a functionality to force users to add close notes when changing the state of a sc_task to "closed".
I have created a Client script with the following code:
function onSubmit() {
var state = g_form.getValue('state');
if (state === '3'){
var close_note = g_form.getValue("close_notes");
var short_text = g_form.getValue("short_description");
var dialog = new GlideDialogWindow("enter_close_notes");
dialog.setTitle("Please enter Close Notes");
dialog.setPreference("close_note", close_note);
dialog.setPreference("short_text", short_text);
dialog.render();
}
}
It calls an Ui page:
<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
<g:ui_form>
<!-- Get the values from dialog preferences -->
<g:evaluate var="jvar_short_text"
expression="RP.getWindowProperties().get('short_text')" />
<g:evaluate var="jvar_close_note"
expression="RP.getWindowProperties().get('close_note')" />
<!-- Set up form fields and labels -->
<table width="100%">
<tr id="description_row" valign="top">
<td colspan="2">
<!-- Short description value used as a label -->
${jvar_short_text}
</td>
</tr>
<tr>
<td align="left">
<!-- Comments text field (Contains comments from originating record as a default) -->
<g:ui_multiline_input_field name="dialog_close_note" id="dialog_close_note" label="Close Notes"
value="${jvar_close_note}" mandatory="true" />
</td>
</tr>
<tr>
<td colspan="2">
</td>
</tr>
<tr id="dialog_buttons">
<td colspan="2" align="center">
<!-- Add OK/Cancel buttons. Clicking OK calls the validateComments script -->
<g:dialog_buttons_ok_cancel ok="return validateCloseNotes()" ok_type="button" cancel_type="button" />
</td>
</tr>
</table>
</g:ui_form>
</j:jelly>
Client script:
function validateCloseNotes() {
var close_note = gel("dialog_close_note").value;
close_note = trim(close_note);
if (close_note === "") {
alert("Please enter your Close Notes before submitting.");
return false;
}
GlideDialogWindow.get().destroy();
g_form.setValue("close_notes", close_note);
g_form.setValue("work_notes", "Close Notes: " + close_note);
g_form.update();
return true;
}
The problem here is, after pressing "OK" nothing happens, it doesn't save the record.
I have checked other posts and it seems that some users had the same problem but I didn't figure out, from their problems, how to solve mine.
Any ideas?
Thank you in advance
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-03-2017 05:34 AM
Found a solution for this
I have changed the client script where I call the Ui Page to this:
function onSubmit() {
var state = g_form.getValue('state');
var closenotes = g_form.getValue('close_notes');
if (state === '3' && closenotes === ''){
var close_note = g_form.getValue("close_notes");
var short_text = g_form.getValue("short_description");
var dialog = new GlideDialogWindow("enter_close_notes");
dialog.setTitle("Please enter Close Notes");
dialog.setPreference("close_note", close_note);
dialog.setPreference("short_text", short_text);
dialog.render();
}
if (closenotes === ''){
return false;
}
}
Working fine!
Thank you for your help!

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-02-2017 10:04 AM
Line 15: Use g_form.save() instead.
Not sure if that will help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-02-2017 10:06 AM
Hi, thank you for your help.
I have tried that, but it doesn't work either.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-02-2017 10:24 AM
Hugo Gomes wrote:
Hi community,
I'm trying to create a functionality to force users to add close notes when changing the state of a sc_task to "closed".
Have you looked at how it's done for an incident record?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-03-2017 02:41 AM
For Incident we use Ui Policy.
But for sc_task is different, because we don't use the field, "close notes". So I need to "force" users to insert a value in that field, that will also be in work notes.