From c39b19aa482ac5bd9ce106ac210d41cb797f777e Mon Sep 17 00:00:00 2001 From: Naveen Kumar <103413520+naveensnow@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:15:17 +0530 Subject: [PATCH 1/7] UI_action.js This is the UI action script which is calling UI page on any form which has work notes or comments --- .../UI Pages/Edit Last WorkNotes/Client.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 Client-Side Components/UI Pages/Edit Last WorkNotes/Client.js diff --git a/Client-Side Components/UI Pages/Edit Last WorkNotes/Client.js b/Client-Side Components/UI Pages/Edit Last WorkNotes/Client.js new file mode 100644 index 0000000000..6ffd60d2e4 --- /dev/null +++ b/Client-Side Components/UI Pages/Edit Last WorkNotes/Client.js @@ -0,0 +1,12 @@ +function callme() { + var dialog = new GlideModal("edit_comment_inc"); + + //Set the dialog title + dialog.setTitle('Edit last comment'); + dialog.setPreference('incid', g_form.getUniqueValue()); + //Set the dialog width + dialog.setWidth(550); + + //Display the modal + dialog.render(); +} From 2025242bbeaea6b27615dee1f03c3a535a24392b Mon Sep 17 00:00:00 2001 From: Naveen Kumar <103413520+naveensnow@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:18:06 +0530 Subject: [PATCH 2/7] uipage_client.html --- .../UI Pages/Edit Last WorkNotes/uipage_client.html | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_client.html diff --git a/Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_client.html b/Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_client.html new file mode 100644 index 0000000000..a08c4f8498 --- /dev/null +++ b/Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_client.html @@ -0,0 +1,9 @@ + + +
+ + +
+
From 525c9f91246d6f495d5a85c4059620e55691e9b6 Mon Sep 17 00:00:00 2001 From: Naveen Kumar <103413520+naveensnow@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:18:48 +0530 Subject: [PATCH 3/7] Create uipage_clientcode.js --- .../Edit Last WorkNotes/uipage_clientcode.js | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_clientcode.js diff --git a/Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_clientcode.js b/Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_clientcode.js new file mode 100644 index 0000000000..48995ca24c --- /dev/null +++ b/Client-Side Components/UI Pages/Edit Last WorkNotes/uipage_clientcode.js @@ -0,0 +1,41 @@ +function onCancel() { + GlideDialogWindow.get().destroy(); + return false; +} +fetchlastcomment(); + +function fetchlastcomment() { + var gdw = GlideDialogWindow.get(); // attempting to get the sys_id value + var sys_id = gdw.getPreference('incid'); // attempting to get the sys_id value + var ga = new GlideAjax('global.UpdateINCworkNotes'); + ga.addParam('sysparm_name', 'getIncLastWorknotes'); + ga.addParam('sysparm_id', sys_id); + + ga.getXMLAnswer(callback); + + function callback(answer) { + if (answer) { + document.getElementById('commenttext').value = answer; + } else { + document.getElementById('commenttext').value = ''; + } + } + +} + +function onSubmit() { + var gdw = GlideDialogWindow.get(); // attempting to get the sys_id value + var sys_id = gdw.getPreference('incid'); // attempting to get the sys_id value + var ga = new GlideAjax('global.UpdateINCworkNotes'); + ga.addParam('sysparm_name', 'updateCommentsLatest'); + ga.addParam('sysparm_id', sys_id); + ga.addParam('sysparm_newcomment', document.getElementById('commenttext').value); + + ga.getXMLAnswer(callback); + + function callback(answer) { + window.location.reload(); + } + GlideDialogWindow.get().destroy(); + return false; +} From 2f515d14f3fb93c565d719c5f9f9c48d92d3beb3 Mon Sep 17 00:00:00 2001 From: Naveen Kumar <103413520+naveensnow@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:19:49 +0530 Subject: [PATCH 4/7] Create scriptinclude.js --- .../Edit Last WorkNotes/scriptinclude.js | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js diff --git a/Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js b/Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js new file mode 100644 index 0000000000..bb6adfab6f --- /dev/null +++ b/Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js @@ -0,0 +1,53 @@ +var UpdateINCworkNotes = Class.create(); +UpdateINCworkNotes.prototype = Object.extendsObject(AbstractAjaxProcessor, { + + getIncLastWorknotes: function() { + var id = this.getParameter('sysparm_id'); + var table = 'incident'; + var list = new GlideRecord("sys_journal_field"); + list.addEncodedQuery("element_id=" + id + "^element=comments^ORelement=work_notes"); + + list.orderByDesc('sys_created_on'); + list.setLimit(1); + list.query(); + list.next(); + return list.value.toString() + }, + + + updateCommentsLatest: function() { + var id = this.getParameter('sysparm_id'); + var newcomment = this.getParameter('sysparm_newcomment'); + var table = 'incident'; + var list = new GlideRecord("sys_journal_field"); + list.addEncodedQuery("element_id=" + id + "^element=comments^ORelement=work_notes"); + list.orderByDesc('sys_created_on'); + list.setLimit(1); + list.query(); + list.next(); + list.value = newcomment; + list.update(); + + var list1 = new GlideRecord("sys_audit"); + list1.addEncodedQuery("documentkey=" + id + "^fieldname=comments^ORfieldname=work_notes"); + list1.setLimit(1); + list1.orderByDesc('sys_created_on'); + list1.query(); + if (list1.next()) { + list1.newvalue = newcomment + list1.oldvalue = ''; + list1.update(); + } + + var list3 = new GlideRecord("sys_history_set"); + list3.addEncodedQuery("id=" + id); + list3.setLimit(1); + list3.query(); + if (list3.next()) { + list3.deleteRecord(); + } + window.location.reload(); + }, + + type: 'UpdateINCworkNotes' +}); From e9f43ac081a1e160724b8a29a5fab7bf412019bc Mon Sep 17 00:00:00 2001 From: Naveen Kumar <103413520+naveensnow@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:26:10 +0530 Subject: [PATCH 5/7] Update scriptinclude.js removed unwanted variable --- .../UI Pages/Edit Last WorkNotes/scriptinclude.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js b/Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js index bb6adfab6f..fdf685413f 100644 --- a/Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js +++ b/Client-Side Components/UI Pages/Edit Last WorkNotes/scriptinclude.js @@ -3,7 +3,7 @@ UpdateINCworkNotes.prototype = Object.extendsObject(AbstractAjaxProcessor, { getIncLastWorknotes: function() { var id = this.getParameter('sysparm_id'); - var table = 'incident'; + // var table = 'incident'; var list = new GlideRecord("sys_journal_field"); list.addEncodedQuery("element_id=" + id + "^element=comments^ORelement=work_notes"); @@ -18,7 +18,7 @@ UpdateINCworkNotes.prototype = Object.extendsObject(AbstractAjaxProcessor, { updateCommentsLatest: function() { var id = this.getParameter('sysparm_id'); var newcomment = this.getParameter('sysparm_newcomment'); - var table = 'incident'; + // var table = 'incident'; var list = new GlideRecord("sys_journal_field"); list.addEncodedQuery("element_id=" + id + "^element=comments^ORelement=work_notes"); list.orderByDesc('sys_created_on'); From a40bdbeeaf0d4374cb4355b5ae54c1b46a0c9ab9 Mon Sep 17 00:00:00 2001 From: Naveen Kumar <103413520+naveensnow@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:53:05 +0530 Subject: [PATCH 6/7] Create README.md --- .../UI Pages/Edit Last WorkNotes/README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 Client-Side Components/UI Pages/Edit Last WorkNotes/README.md diff --git a/Client-Side Components/UI Pages/Edit Last WorkNotes/README.md b/Client-Side Components/UI Pages/Edit Last WorkNotes/README.md new file mode 100644 index 0000000000..99f9dbd61d --- /dev/null +++ b/Client-Side Components/UI Pages/Edit Last WorkNotes/README.md @@ -0,0 +1,17 @@ +Edit Last Entered Work Notes + +This UI action is built specifically to edit the last entered work notes by the user in incident form or any table which support this journal fields. + +There is some restriction around journal fields/ work notes as user cannot edit or adjust the work notes that they entered. If they wish to edit it, I have introduced a new +UI page which calls the UI pages which will automatically populates the last entered work notes/comments and user can adjust and submit it. + +Key actions: +sys_journal_field : + list.value = newcomment; // update the new comment + + sys_audit: + list1.newvalue = newcomment +list1.oldvalue = ''; // clear the old value and update the new value + +sys_history_set: +Delete the history record associate with the incident record From 66b049879022b74e9e67e44b4853d365ab4353a3 Mon Sep 17 00:00:00 2001 From: Naveen Kumar <103413520+naveensnow@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:54:27 +0530 Subject: [PATCH 7/7] Update README.md --- Client-Side Components/UI Pages/Edit Last WorkNotes/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Client-Side Components/UI Pages/Edit Last WorkNotes/README.md b/Client-Side Components/UI Pages/Edit Last WorkNotes/README.md index 99f9dbd61d..7d90436328 100644 --- a/Client-Side Components/UI Pages/Edit Last WorkNotes/README.md +++ b/Client-Side Components/UI Pages/Edit Last WorkNotes/README.md @@ -3,7 +3,7 @@ Edit Last Entered Work Notes This UI action is built specifically to edit the last entered work notes by the user in incident form or any table which support this journal fields. There is some restriction around journal fields/ work notes as user cannot edit or adjust the work notes that they entered. If they wish to edit it, I have introduced a new -UI page which calls the UI pages which will automatically populates the last entered work notes/comments and user can adjust and submit it. +UI action which calls the UI pages which will automatically populates the last entered work notes/comments and user can adjust and submit it. Key actions: sys_journal_field :