I’m working on a BAQ that shows who can access each menu path and through which security group. Question:
Is it possible that the Menu table has incorrect data in it somehow? I am seeing the following menu location for Order Entry but the ID and Parent Menu ID appear to have an extra A in it which causes the last 0 to fall off. Has anyone seen this?
Here is a menu path that appears to be properly setup:
Here You can see that menu in my BAQ matching up:
Here is Order Entry, with an extra A in the menu IDs and as you can see in the first screenshot, it does not exist in the tree to select (nor does it show up when you search it in Menu Search).
The FSA IDs (I think) are related to Field Service. If you don’t have that module licensed, it is still in the menu data but won’t show up for any users.
I’m surprised there are any users or secgroups assigned. Or does your BAQ just expand a blank setting to be all users?
I see other menus from that module. Just this one doesn’t show up.
Currently, it does not expand anything on its own. I have given that some thought, though.
I see the FSA menu items in our Menu table, too. According to the menu descriptions, it is Field Service Automation and is at the same level as the Field Service menu. As mentioned in an earlier post, I’m assuming it’s an additional module that is licensed separately.
OK. I agree that I was wrong with my title. The Parent Menu ID may be right, but this seems to be a symptom of a larger problem that I am still trying to address. This BAQ is working great to display the hierarchy of who has access to which menu items and through which security groups. What I am seeing though is quite a few menu items that we don’t have access to. How can I filter these out? In the table, they appear to be just like the menu items we do have access to.
In Ice.Menu there is a field called Module.
Module has the short code of the modules you are licensed to.
You can get the list of what you are licensed for from the
Ice.Contracts.BO.AdminLicensing Business Object
and running GetLicense(GUID your installation ID)
in the tableset there is a table AdminModuleLicense
that has the ModuleCode, ModuleName, and enabled
ModuleCode is a GUID,
ModuleName is the Long Name of the module
I still haven’t found where to get the short version of the name that menu uses.
Maybe this will help.
Awesome info. Thanks @klincecum
This guy has a start on a table: @jfingas
Module Codes in ice.Menu
Ice.BO.Menu.GetRows returns only what you have access to automagically.
I ran a BAQ and replaced the getlist results with getrows results using the widgets.
I suppose if you want to link those around in the BAQ, you could write that data to a UD
Table First and link around with that.
If you need details, hit me up tomorrow.
Thanks, again. That makes sense. I’ll try it tomorrow.