Is there a system table that can be queried to find out which section and/or detail run process menu(s) a process is found in? Or any other way of doing this?
*Edit* A query to find out what section(s) an object is a detail in would be quite helpful.
Thanks,
Like
Hi Gareth,
Thank you for reaching out!
This is the ProcessInModules table.
Also, there is no differentiation in Creatio between section and detail objects. So basically, an object is the same for a detail and a section. You could use the following script:
SELECT DISTINCT ss.Name , CASE WHEN EXISTS (SELECT 1 FROM SysModule WHERE SysModuleEntityId IN (SELECT Id FROM SysModuleEntity WHERE SysEntitySchemaUId = ss.Uid)) THEN 'Section' WHEN EXISTS (SELECT 1 FROM SysDetail WHERE EntitySchemaUId = ss.Uid) THEN 'Detail' else '' END AS "Section/Detail" FROM SysSchema ss WHERE EXISTS SELECT 1 FROM SysModule WHERE SysModuleEntityId IN (SELECT Id FROM SysModuleEntity WHERE SysEntitySchemaUId = ss.Uid) OR EXISTS (SELECT 1 FROM SysDetail WHERE EntitySchemaUId = ss.Uid) AND ss.ManagerName = 'EntitySchemaManager'
Best regards,
Anastasiia
*Edit* The below queries return both active and inactive processes., at a glance I am not able see how to select active only.
The query we arrived at to list the processes in the run process menu of sections:
SELECT SM.Caption AS [Section Name], SS.Caption AS [Process Name] FROM ProcessInModules AS PIM JOIN SysModule AS SM ON PIM.SysModuleId = SM.Id JOIN SysSchema AS SS ON PIM.SysSchemaUId = SS.UId;
And the query to list the processes in the run process menu of individual details:
SELECT SD.Caption AS [Detail Name], SS.Caption AS [Process Name] FROM ProcessInDetails AS PID JOIN SysDetail AS SD ON PID.SysDetailId = SD.Id JOIN SysSchema AS SS ON PID.SysSchemaUId = SS.UId;
I would like to be able to say what sections a detail appears in, but would imagine this information to be buried deep in Creatio system tables.
If anyone can check the above queries I would be grateful!
Hi Gareth,
The queries you have written are correct. However, it's hard to check which details belong to which sections by a DB query as details are connected to a page in the page's schema. So you need to decode the schema's content and filter in it. Such a query is hard to build and it will take a long time for it to get executed.
Best regards,
Anastasiia