I have the task of documenting our current strategies so that those without access to Genesys applications know what strategies are loaded where and can get a general description of the strategy.
Is basic information about each strategy stored in a database that I can query? I would like to query for all loaded strategies and have it return the route points the strategy is loaded on.
I know I can kind of get this from Info Mart by looking at the Interaction Resource Fact table joined with the Resource table and Strategy table but it does not show me all route points that the strategy is loaded on but rather only interactions that have used the strategy from the last route point.
If you see CME under each RP on annex tab you have the strategy loaded on it, therefore there must be a query to get that information.
Which query, no clue, you will have to dig on it.
I’ve done a thorough check and - no - there isn’t a way to connect Tables to show the name or a strategy and on which RP it is loaded, through the cfg database.
The nearest I have found are in cfg_script and cfg_flex_prop - both mention Strategy Names but neither shows if/where the Strategy is loaded.
I took the view that, if there is a tab on the RP in CME, then you must be able to query it. It doesn’t look like that is possible. So, my best guess is that the Tab in CME is either extracted from a “through” component in cfg, which queries the URS.
Not very elegant - but then I’m not actually developing it;
SELECT DISTINCT cfg_dn.number_ AS [Route Point], cfg_flex_prop.prop_name AS [Strategy/Action], cfg_flex_prop.prop_value AS Details
FROM cfg_flex_prop INNER JOIN
cfg_dn ON cfg_flex_prop.object_dbid = cfg_dn.dbid
WHERE (cfg_flex_prop.prop_name = ‘strategy0x65’) OR
(cfg_flex_prop.prop_name = ‘Loaded’) OR
(cfg_flex_prop.prop_name = ‘Loaded by’)
ORDER BY [Route Point], [Strategy/Action] DESC
I will need someone to confirm this for me… and to help to create a decent script for everyone else!
It is a basic Report by Strategy/Route Point and also by Route Point/Strategy. You can break it open and use the Queries, if you need to amend anything.
Adam your query returned me a lot of duplicated records on a MCR mixed environment:
Here is my query:
select
dn.number_,
f1.prop_name, f1.prop_value, f2.prop_name, f2.prop_value
from cfg_flex_prop f1
inner join cfg_flex_prop f2
on f1.object_dbid = f2.object_dbid
inner join cfg_dn dn
on dn.dbid = f1.object_dbid
where
lower(f1.prop_name) = 'strategy'
and lower(f2.prop_name) = 'loaded'
and dn.type = 4
and f1.object_type = 2
order by 1
select distinct dn.number_, f1.prop_name, f1.prop_value, f2.prop_name, f2.prop_value
from cfg_flex_prop f1
inner join cfg_flex_prop f2
on f1.object_dbid = f2.object_dbid
inner join cfg_dn dn
on dn.dbid = f1.object_dbid
where lower(f1.prop_name) = ‘strategy’ and lower(f2.prop_name) = ‘loaded’ and dn.type = 4 and f1.object_type = 2
order by 1
I also see multiple entries against the Strategy loaded date/time - a version of row number / partition would address that.