User App Hidden functions
The NetIQ User Application is a complex product with many disparate moving parts, and a conglomeration of different technologies. Considering all the moving parts it usally works quite well.
To manage it, there are two different places. Designer, and the User Application web interface itself.
To manage Workflows, you need to use Designer, which is a pretty awesome tool, and it has a very clever interface for ECMA Script functions.
The ECMA browser is quite powerful and provides very nice contextual support for available functions at each different stage in development.
However it is not 100% complete. In fact, we do not know how complete it is, since we can know of functions two primary ways. Either it is available in the browser, or listed in the documentation.
It is clear that there are missing functions, and until they are identified they cannot be reported as missing. Thus this page to collect known hidden functions.
Please edit and add your own. It would be great if you could explain how you figured it out, since that might hint to others how to find more.
NrfRequest extra functions
I was looking at the template Approval workflow in D4.02 AU2a for the case of tying a workflow for simple approval to a Role. (Role Assignment/Revocation Approval, template) (User App 4.02 Patch C build string:
Identity Manager Roles Based Provisioning Module Version 4.0.2 Patch C Build Revision 39446)
Before I did it, I like to understand what it is doing, so I started reading what the actions do.
I noticed a couple of functions used in it:
NrfRequest.getAllApproversDN() NrfRequest.getApproverDN() NrfRequest.isQuorumProcess() NrfRequest.getNumberOfApprovers() NrfResourceRequest.getCategoryLocaleString() NrfResourceRequest.getSourceDNDisplayName()
None of these functions show up in the ECMA browser (First column, Role Request, Is or Get methods) in my Designer.
Looking at the 4.02 docs on this page: https://www.netiq.com/documentation/idm402/dgpro/data/palecmaecmaapi.html
in section 9.3.3 I found the Is methods, and isQuorumProcess() is missing from the docs.
A little lower down they discuss the Get methods, and the listed get functions above are missing there as well.
Mark V R reports:
I have found that "form.select( fieldname )" also accepts a second 'values' parameter just like "field.select( value(s) )".
So form.select( fieldname , value(s) )" works even though this is mentioned nowhere.