- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 03:10 AM
Hi there,
I have a multi row variable set having two variables. here is don't want users to select the same option twice below is the code I was trying but it is not working and throwing javascript error in you console.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 03:29 AM - edited 04-28-2025 03:43 AM
Hello @pk2184046 ,
Please use this onSubmit script on your Variable Set:
function onSubmit() {
var mrvs = g_service_catalog.parent.getValue("additional_responsibilities_and_security_roles");
if (!mrvs) return true;
var arr = JSON.parse(mrvs);
var res = g_form.getValue("responsibility_add");
var sec = g_form.getValue("security_role_add");
var duplicate = arr.some(row =>
row.responsibility_add === res &&
row.security_role_add === sec);
if (duplicate) {
g_form.addErrorMessage('Row with same values already present.');
return false;
}
}
Regards,
Robert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 04:09 AM
Hello @pk2184046 ,
Glad to hear that.
The issue was that, in order to access the parent form, you need to use
g_service_catalog.parent
instead of
parent.g_form
There are many old scripts floating around with the latter code, but that doesn't work in Service Portal / Employee Center.
Regards,
Robert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 03:46 AM
so what's your requirement?
Responsibility + Security Role should be unique?
Same combination should not be selected again?
If yes then this link has solution for you
How to stop duplicates entering in MRVS based on MRVS Variables(Applies Catalog item/ServicePortal)
If my response helped please mark it correct and close the thread so that it benefits future readers.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 03:50 AM
Hi Ankur,
I have tried that as well it throwing javascript error in your console like that
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-28-2025 03:54 AM
in the script present in the link update this line
var multiRow = JSON.parse(g_service_catalog.parent.getValue("your_variable_set_here")); //This is the multirow that has already been submitted
If my response helped please mark it correct and close the thread so that it benefits future readers.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader