Vytváření podmínek pro prvky šablon

Pomocí editoru podmínek definujete výraz JavaScript s atributy dat a proměnnými přístupnými v aktuálním kontextu.

Postup

  1. Klepněte pravým tlačítkem myši na prvek a vyberte volbu Data > Upravit podmínku.
  2. V okně Nastavit podmínku pro aktuální prvek rozbalte Proměnné a Atributy.
    Tip: Jako dostupné lze zobrazit pouze dotazy první úrovně a atributy dotazu. Pro sekundární úrovně musíte do prvku přidat další dotaz a musíte do tohoto prvku přidat podmínku.
  3. Zadejte kód JavaScript pomocí jedné z těchto voleb:
    • Zapište skript ručně v tomto okně.
    • Skript do tohoto okna zkopírujte a vložte z jiného editoru.
    • Klepněte na volbu Zahrnout skript a vyberte soubor ze svého počítače, ze vzdáleného serveru nebo z komponenty Centrální správa.
    • Použijte editor podmínek:
      1. Vyberte atribut nebo proměnnou pro Levý operand.
        Poznámka: Pokud používáte nástroje v okně Nastavit podmínku pro aktuální prvek, jakýkoli použitý atribut dat nebo proměnná se automaticky vybere v zobrazení stromu. Pokud zadáte podmínku ručně, musíte atribut dat nebo proměnnou vybrat ručně.
      2. Vyberte Operátor.
      3. Z rozevíracích nabídek vyberte atribut nebo proměnnou pro Pravý operand.
        Poznámka: Pokud levý i pravý operand podmínky pochází ze stejného názvu atributu, ale patří ke dvěma různým dotazům, podmínka nefunguje. Aby podmínka fungovala, musíte pro oba atributy nastavit odlišné aliasy.
      4. Klepněte na tlačítko Přidat. Vybraná podmínka se přidá do textového pole.
  4. Volitelné: Vybrat volbu Vstup XHTML, chcete-li povolit úpravu značek XHTML obsažených ve skriptu. Pokud kopírujete formátovaný text nebo používáte formátovaný text v podmínkách, musíte vybrat volbu Vstup XHTML.
    Důležité: Neplatný dokument XHTML způsobuje, že se generování dokumentů nezdaří. Před uložením změn ověřte platnost svého jazyka XHTML.
  5. Volitelné: Klepnutím na volbu Test a Spustit otestujete podmínku před jejím použitím na aktuální prvek. Pokud skript běží správně, zobrazí se hodnota true. Pokud skript neběží správně, zobrazí se hodnota false.
  6. Klepněte na tlačítko OK.

Výsledky

Když použijete podmínku na prvek, zobrazí se prvek v editoru obsahu šablony s ikonou Ikona podmínky:

Ikona podmínky na prvku odstavce

Příklady: Konstruování podmínek pomocí editoru podmínek

Prostudujte si tyto příklady, které vám pomohou při konstruování vašich vlastních podmínek pomocí editoru podmínek.

Objekty, které mají ve schématu produktu Rational DOORS záhlaví objektů:
  • Rozbalte volbu Atributy > dotaz.
  • Vyberte volbu [Object Heading] záhlaví_objektu.
  • Pro levý operand vyberte volbu [Object Heading] záhlaví_objektu.
  • Pro operátor vyberte volbu nerovná se.
  • Pro pravý operátor nezadávejte žádnou hodnotu.
  • Klepněte na tlačítko Přidat. JavaScript se zobrazí jako Object_Heading != "".
Požadavky s vysokou prioritou ve schématu REST:
  1. Rozbalte volbu Atributy > dotaz.
  2. Vyberte položku Priorita.
  3. Pro levý operand vyberte volbu Priorita.
  4. Pro operátor vyberte volbu rovná se.
  5. Pro pravý operand zadejte Vysoká.
  6. Klepněte na tlačítko Přidat. JavaScript se zobrazí jako Priorita == "Vysoká".
Odeberte duplicitní hodnoty z atributu vytvořením proměnné a nastavením této podmínky na prvku:
  1. Rozbalte Proměnné > variable.
  2. Vyberte variable.
  3. Pro levý operand vyberte variable.
  4. Pro operátor vyberte volbu rovná se.
  5. Pro pravý operátor nezadávejte žádnou hodnotu.
  6. Klepněte na tlačítko Přidat. JavaScript se zobrazí jako variable == "".

Jak pokračovat dále

Pokud zjistíte, že se proměnná nevyhodnocuje správně, zkontrolujte, zda je proměnná literálový řetězec true nebo false, jako např. variable == "true".

V některých případech se hodnota proměnné vyhodnocuje na logickou hodnotu, spíše než na hodnotu literálového řetězce. Příklad: variable == "true" nesprávně vyhodnocuje false, pokud je proměnná logická hodnota true a ne řetězec"true". Namísto hledání výskytu jakékoli hodnoty, slovo true není v datech nalezeno jako hodnota. Tento problém se vyskytne, když proměnná pochází z výpočtu a ne buď ze specifikace dokumentu, kde byla poskytnuta při konfiguraci sestavy, nebo z šablony, kde byla určena jako výchozí hodnota proměnné.

Chcete-li se ujistit, že se proměnná vyhodnocuje správně, upravte vaši podmínku pomocí jedné z následujících voleb:
  • Volba 1: Povolte vaši podmínku tak, aby ovládala jak literálový řetězec, tak logickou hodnotu.

    (variable == boolean_true_or_false) || ( variable == "string")

    Příklad: (variable == true) || ( variable == "true")

  • Volba 2: Pokud již dopředu víte, že se má proměnná vyhodnotit buď jako logická hodnota, nebo hodnota řetězce, pak můžete navrhnout podmínku v očekávání tohoto typu hodnoty.
    • Logická hodnota: variable == boolean_true_or_false

      Příklad: variable == true

    • Hodnota řetězce: variable == "string"

      Příklad: variable == "true"

Vytvoření alias pro atributy se stejnými názvy

Ve skriptovaném filtru nebo podmínce platí, že pokud levý i pravý operand podmínky pochází ze stejného názvu atributu, ale patří ke dvěma různým dotazům, podmínka nefunguje. Aby podmínka fungovala, musíte pro oba atributy nastavit odlišné aliasy.

Než začnete

Upravte předvolby aplikace Document Studio:
  1. V produktu Rational Publishing Engine Document Studio klepněte na volbu Okno > Předvolby.
  2. Rozbalte položku RPE a klepněte na volbu Návrh dokumentu.
  3. V poli Použít anotace schématu pro zobrazení vyberte volbu Ne a klepněte na tlačítko OK.

Postup

K rozlišení atributů se stejným názvem můžete vyloučit nejednoznačnosti pomocí funkce Alias. Když přidáváte podmínky, které ověří, že se popis modulu rovná popisu objektu DOORSObject, klepněte pravým tlačítkem myši na atribut a nastavte alias.

Výsledky

Nyní se atribut Query/Object/Object Text označuje jako $1_Object Text a podmínku lze správně zpracovat.

Jak pokračovat dále

Tip: Chcete-li zkontrolovat, jak se podmínka použije na data, klepněte na volbu Testovat. V okně Test klepněte na volbu Spustit.

Zpětná vazba