It's all about the answers!

Ask a question

Dynamically Publish Tables for Requirements in a single Module Query Loop with RPE

Sean F (1.3k249160) | asked Jun 18 '21, 11:17 a.m.
edited Jun 18 '21, 11:24 a.m.

I am trying to loop through all artifacts in a module and print out 3 types of artifact which are mixed together across many sections in the module:- Heading, Text and Requirements (or term definitions for another example).

Plain headings and text are to be published as plain headings and text.

When the iteration encounters a sequence of artifacts of type Requirement I want a single table to be built with a single header row followed by a row for each requirement

I used to do this in DOORS Classic with a single loop query across all objects in a module with a 3 way condition

1. Heading -> Publish Heading
2. Information -> publish text
3. Requirement -> create table row (and create a header if this is the first requirement in the sequence)

The Requirements table in RPE would have a header row with 'once per table' set to true

In the event that a series of requirements was encountered a single table would be published with a single title row followed by a row for each requirement containing requirement attribute values.

The way RPE handled the iteration in DOORS Classic was quite clever as it did not generate a new table for each requirement (even though a complete table is specified inside the template's module iteration for type 'requirement') but rather it would add a new row to the existing table if a table had already been started for immediately preceding requirements)

So the following could be achieved with a single query loop on the above module

I am trying to do the same thing in DOORS Next but I cannot prevent the header row from repeating before each requirement artifact like the following

I have set the Header row to 'Once per table' to true but the header row repeats before every requirement.

So is it possible to achieve the same results with DOORS Next that we used to get with DOORS Classic?

Accepted answer

permanent link
Subramanya Prasad Pilar (4.6k16) | answered Jun 19 '21, 3:25 a.m.

You can apply a condition (_isPrinted == "false") on the header row and set the value to template variable _isPrinted (_isPrinted = "true") within the query that prints the terms.

Sean F selected this answer as the correct answer

Sean F commented Jun 20 '21, 1:32 p.m.

thank Prasad

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.