Context Menu tables empty?

I am trying to get a listing of all the context menus and the menu items so we can figure out some security things… However, I got no results when trying to run a BAQ on Ice.ContextMenu, Ice.ContextMenuItem and IceContextValidation. Ran each separately – no records on any of them.

Is there some special way to query Ice tables?

Thanks.

—sam

I am not sure how it is done or why, but if you search both C:\ProgramData\Epicor and in your Epicor client install directories you will find files called “ContextMenu.xml” and “CustomContextMenu.xml”

ContextMenu tables are historical. If you have custom context menus then they now reside in the Ice.XXXChunk table, search for relevent Company, ProductID = “EP”, typeCode = “Customization”, Key1 = “CustomContextMenu”. the “Chunk” column contains Base64 encoded XML which describes the menu(s). Dont think you can decode it in a BAQ, however in code there is a library Ice.Lib.Framework.GenXObject, function DecompressString, or else manually copy it to a online convertor such as https://www.base64decode.org/.

For standard menu items, I think BAQ’s default to including a Company where cause - and the standard menus are all any company so would get filtered out. IIn the BAQ, make sure you tick the [Cross Company] check box so you can get at the menus.

The menu system gets cached, which is the XML files mentioned by Richard.

Regards,
jon

1 Like

@Jon_Evans Thanks. That is way beyond me (I am more on the business analysis side of things).

@richardh: Thanks. Might have a shot at navigating the .xml files. Epicor support suggested the same thing.

Might be be helpful if Epicor made a note in the data dictionary def (for the table) that the tables are not actually populated…

1 Like