cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Query for BCM Capabilities Deeply

amcnerney
Super Contributor

Hi,

I am trying to develop a query from a selected BCM that will return all of the Capabilities in that BCM, and their Sub-Capabilities, and those Sub-Capabilities' Sub-Capabilities, etc...

I've tried selecting Parent Capability 1, Parent Capability 2, Parent Capability 3, etc into sets and then selectin all Capabilities across all sets but no luck. I've also tried to use the "DEEPLY" condition to no avail. 

Select Business Capability Where Referencing Class of Block Component.Class of Block Component Owner:Business Capability Map &"Business Capability Map"

This query returns the Level 0 Capabilities

Select Business Capability Where Business Capability Usage.Business Capability Building Block Deeply = &"Business Capability"

This returns all sub-capabilities from a Selected Business Capability.

There must be a way to merge these two queries to get what I am looking for, but I haven't found a way around it yet. Can anyone point me in the right direction?

6 Replies

fakhouryy
MEGA Partner
MEGA Partner

Hello @amcnerney 

Assuming I understood the problem statement correctly, you can "Deeply" select all business capabilities and their sub-capabilities (including Level 0 capabilities) of a capability map using the following query:

Select [Business Capability] Where [Business Capability Usage].[Business Capability Building Block] Deeply &BizCapMap

Please do note that the query parameter here is a "Business Capability Building Block" (Abstract Metaclass), which can concretely either be a "Business Capability" or a "Business Capability Map" object. So the query would also return all sub-capabilities and their children capabilities of a "Business Capability" as well.

Hope this helps!

No - I can use two separate queries to get the data I want displayed but working through finding one query to aggregate all of the capabilities into sets and select from the sets was taking too much time

@amcnerney were you able to find a complete solution?

Hi,

So would I be adding the below into buscaps2?

Select [Business Capability] Where [Business Capability Usage].[Business Capability Building Block] Deeply in @buscaps

Is it possible to do something like, select the sub-capability deeply from capabilities from buscap1 into buscap2? That would solve the issue as I'd then select from buscap1 or buscap2. 

Thanks

PBessodes
MEGA
MEGA

Hello,
You can store results of your initial queries in different sets (buscaps1 and buscaps2) and add this:
Select [Business Capability] from buscaps1 or buscaps2

(putting elements in a set overwrites the set and not adds to it)

amcnerney
Super Contributor

I managed to get a query working, but seems like it excludes the first parent Capability and only gets the Sub-Capabilities DEEPLY from there. Any way I can include the first Parent capability as well?

Select [Business Capability] into @buscaps Where [Referencing Class of Block Component].[Class of Block Component Owner]:[Business Capability Map] = &"Business Capability Map"

Select [Business Capability] Where [Business Capability Usage].[Business Capability Building Block] Deeply in @buscaps