It's all about the answers!

Ask a question

Engineering Publishing - Determining recursion depth


Peter Morgenthaler (102815) | asked Mar 02 '21, 1:33 a.m.

 Hi, I am reporting on an RMM model which has a recurring query

eg

rmm/ArchitectureElements/ArchitectureElement/Aggregates/ArchitectureElement (for level 1)

rmm/ArchitectureElements/ArchitectureElement/Aggregates/ArchitectureElement/Aggregates/ArchitectureElement (for Level 2)

rmm/ArchitectureElements/ArchitectureElement/Aggregates/ArchitectureElement/Aggregates/ArchitectureElement/Aggregates/ArchitectureElement (for Level 3)


Setting a container with a Segment of 2 and recuring depth of 4 gets all of the items I am after however I can not determine what depth the items are.


It appears that RPE only increments the _element_level when a package is found and not when a block contains another block.


My structure is similar to this


Top Package

myBlock1

myBlock2

mysubBlock3

mysubSubBlock4


I want to use recursion and set

datasource to "Top Package" and recurse through each element and publish it like


Level 1 - Top Package

Level 2 - myBlock1

Level 2 - myBlock2

Level 3 - mysubBlock3

Level 4 - mysubSubBlock4


If the _element_level is limited to packages only (why???) and how can I achieve what I am after.


My initial thoughts are get the query in the recursion container and count the /Aggregates/ArchitectureElement/ but I can not find a way to get the query.


Any suggestions on how to solve this very welcome


Thanks

One answer



permanent link
Subramanya Prasad Pilar (4.6k16) | answered Mar 02 '21, 7:48 a.m.
edited Mar 02 '21, 7:50 a.m.

In case of RMM, everything is an architecture element and you can get the level using internal variable _element_level irrespective of architect element type.

It should be enough if you set recursion only on query rmm/ArchitectureElements/ArchitectureElement/Aggregates/ArchitectureElement.

In the example below, recursion is applied only on $59 (recursive level = 4, segments = 2) and not for $58 (by default recursive level = 0, segments = 1).


Comments
Peter Morgenthaler commented Mar 02 '21, 5:23 p.m. | edited Mar 02 '21, 5:52 p.m.

 Hi, I agree that this should work however the _element_level is NOT being set. All elements are being returned as 1. I have tried capturing it as a javascript variable and also just put a text box and display_element_level but either way sets the value as 1 (which is the default when it is not set).


Peter Morgenthaler commented Mar 02 '21, 6:06 p.m.

 This is the structure I am trying to publish 

RMM Model

I point my template to OSLC_Metamodel Package. My template is similar to above

RPE template






Peter Morgenthaler commented Mar 02 '21, 6:06 p.m.

 The results are:


RPE output for element_level


Subramanya Prasad Pilar commented Mar 03 '21, 1:19 p.m. | edited Mar 03 '21, 1:21 p.m.
Can you show the data source is configured? I do not see any issue. Attaching the package exporer and RPE output from my simple template shown above:

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.