Příklad: Rekurzivní úrovně a rekurzivní segmenty se schématem zdroje dat produktu Rational RequisitePro

Seznam softwarových požadavků na použití dotazu PRRequirement ve schématu IBM® Rational RequisitePro, které máte k dispozici v ukázkách nainstalovaných v produktu Rational Publishing Engine, najdete v souboru: %RPE_HOME%\source\XML\examples\RequisitePro.xsd

Pro každý požadavek PRRequirement můžete extrahovat všechny podřízené požadavky a pro každý podřízený požadavek můžete extrahovat všechny jeho podřízené požadavky, aniž byste přidali do své šablony každý dotaz.

Místo toho, abyste přidali všechny následující dotazy:
Můžete vytvořit jeden dotaz pro všechny tyto požadavky:
  1. Přidejte dotaz Project/Requirements/PRRequirement/Children/Relationship/RelatedReq do prvku.
  2. Přidejte hodnoty do vlastností Rekurzivní úroveň a Rekurzivní segmenty.
    • Do vlastnosti Rekurzivní úroveň zadejte hodnotu 4.

      Rekurzivní úroveň představuje, kolik úrovní je dotaz hluboký. Pokud zadáte hodnotu jedna nebo vyšší, musíte také nastavit hodnotu jedna nebo vyšší pro vlastnost Rekurzivní segmenty.

    • Do vlastnosti Rekurzivní segmenty zadejte hodnotu 3.
      Rekurzivní segmenty představují, kolikrát se tyto segmenty v dotazu opakují. Segmenty v tomto příkladu jsou Children/Relationship/RelatedReq.
      Poznámka: Zadaný počet pro vlastnost Rekurzivní segmenty nemůže být vyšší než počet segmentů, který dotaz obsahuje. Nadřízený dotaz není zahrnutý jako segment.
  3. Spusťte sestavu k testování.
    Při spuštění sestavy se zahrnou tyto dotazy:
    • [$1] – Project/Requirements/PRRequirement/Children/Relationship/RelatedReq.
      Poznámka: První dotaz musí obsahovat celý kontext dotazu.
    • [$2] – $1/ Children/Relationship/RelatedReq.
    • [$3] - $2/Children/Relationship/RelatedReq.
    • [$4] – $3/Children/Relationship/RelatedReq.
    Pokud zjistíte, že je zadaný počet pro vlastnost Rekurzivní segmenty vyšší než počet segmentů, který dotaz obsahuje, můžete použít jednu z těchto dvou voleb k vyřešení problému:
    • Vyberte prvek, který používá vlastnost Rekurzivní segmenty. V pohledu Vlastnosti vyberte kartu Data a snižte hodnotu pro vlastnost rekurzivních segmentů.
    • Také můžete znovu navrhnout dotaz ke spuštění z odlišného nadřízeného dotazu. Pokud vaše hodnota Rekurzivní segmenty je jeden příliš velký segment, vytvořte prvek kontejneru a přidejte dotaz, který je o jednu úroveň výše než nadřízený dotaz existujícího prvku. Pak přesuňte existující prvek do prvku kontejneru.

Zpětná vazba