showQuickForm(): How exactly does it work and why it is essentially undocumented?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-17-2018 09:08 AM
I am trying to solve the ever-popular "how can my users resolve multiple incidents while filling in multiple required fields in one step" problem.
The best I seem to be able to do is to create a UI Action using "showQuickForm" to pop up a dialog, and then (because no Client Scripts or UI Policies apply to these dialogs) relying on Data Policies to inform the user after the fact if they've failed to fill out the form properly. This is unfortunate because I have one field that is conditional on the value in another field, and I have no "nice" way to present or enforce that.
In any case, I am a bit confused as to how the showQuickForm function actually works. I have not been able to find any "official" documentation on it, except by way of it being referenced in an example:
ServiceNow (London): Create a UI action to close multiple incidents
This example says that the first argument is the UI View to be used to generate the form, and that the second argument is the name of a Business Rule.
However, the de facto authority on this functionality seems to be a servicenowguru.com article from 2010 (!): GlideDialogWindow: QuickForms
Here, Mark Stanger says that the second argument should be the "Action Name" of the UI Action used to invoke the dialog in the first place. I followed his instructions and it works, but...
...what exactly is going on here? Do I need to worry about a "name collision" with another UI Action? With a Business Rule? Does it look at both? Are the ServiceNow docs wrong?
The way this appears to work is that showQuickForm pulls up a dialog using a specific "view," and then when the form is submitted, it sets the values from the form on each selected record, and then...I think it executes the "Script" of the UI Action named in the second argument once for each selected record. (Hence the need to put "current.update();" in the script.)
tl;dr - This seems to be a popular and widely-cited feature in the platform, but I can't find any official documentation and I'm worried about unintentional side-effects or interactions. Can anyone here provide some definitive information about what it actually does and doesn't do "behind the scenes," and how the arguments are interpreted?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-03-2019 09:27 PM
I don't follow. Can you repeat?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-24-2018 11:32 AM
I found an article by Richard Fredriks on UI Action "action name" uniqueness: Why is the "action name" field of a UI action not defined as unique
It sounds like a collision could certainly happen if one is not careful.