Sdílet prostřednictvím


Přiřazení podmíněných hodnot a pravidel

Můžete definovat pravidla, která jsou podmíněně spustit pomocí WHEN, WHENNOT, WHENCHANGED, a WHENNOTCHANGED prvky.Pomocí těchto pravidel můžete definovat prvky, které jsou spouštěny při definované klauzule je True.Můžete definovat podmínky, které jsou založeny na jaké hodnoty je přiřazena konkrétní pole nebo zda uživatel upravuje určité pole.Můžete například vytvořit seznam závislých vyskladnění poskytovat podrobné zabezpečení nebo vlastní chování.

Pole podmínky jsou další prvky, které seznam uvnitř FIELD prvku (definice) nebo FIELD prvku (pracovní postup).Další informace o těchto elementech naleznete v tématech Prvek pole (definice) a Prvek pole (pracovní postup).

Následující kód je jednoduchý příklad WHEN klauzule:

<FIELD . . . >

    <WHEN field="referenceName" value="yyy">

</FIELD>

Tato klauzule znamená, že nic v rámci tohoto prvku pole použitelné dlouhé pole refname má hodnotu "yyy". pole musí být platnýnázevpoleodkazovat se . Další informace naleznete v tématu Vytváření názvů pro objekty sledování pracovní položky.

[!POZNÁMKA]

Hodnota atribut nerozlišuje malá a velká písmena.Proto pokud název pole odkazovat se obsahuje "YYY", odpovídá zahrnují yyy"hodnoty" a "YYY".

V tomto tématu

  • Struktura syntaxe pro podmíněné prvky

  • Definování závislé požadované pole

  • Definování podmíněné přehled vyskladnění

  • Definování pole, pokud uživatel změní jiného pole (WHENCHANGED)

  • Definování hodnoty pole založené na uživatele není změna pole (WHENNOTCHANGED)

Struktura syntaxe pro podmíněné prvky

Následující tabulka popisuje podmíněné pravidla, které určíte jako podřízený prvky FIELD prvku (definice) nebo FIELD prvku (pracovní postup).Tyto prvky přijmout jednu nebo více z následujících atributů:

  • field: Řetězec, který popisuje pole.Musí obsahovat 1 až 255 znaků.

  • value: Při zadané pole má hodnotu, pravidla v WHEN a WHENNOT prvky jsou použity aktuální pole.

Element

Syntaxe

Description

WHEN

<WHEN field="fieldReferenceName" value="value">
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>
</WHEN>

Určuje jedno nebo více pravidel, které se párovat na aktuální pole má určité hodnoty jiného pole .Nadřazený prvek definuje aktuální pole.

Zadaná hodnota po určené pole jsou použita pravidla tohoto prvku na aktuální pole.

WHENNOT

<WHENNOT field="fieldReferenceName" value="value">
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>
</WHENNOT>

Určuje podmínku pod kterým párovat jedno nebo více pravidel na aktuální pole.Pravidla párovat na aktuální pole při změně hodnoty jiného pole .Nadřazený prvek definuje aktuální pole.

Při zadané pole neobsahuje zadanou hodnotu, na aktuální polejsou použita pravidla tohoto prvku.

WHENCHANGED

<WHENCHANGED field="fieldReferenceName" >
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>      
</WHENCHANGED>

Určuje podmínku pod kterým párovat jedno nebo více pravidel na aktuální pole.Pravidla párovat na aktuální pole při změně hodnoty jiného pole v revizi pracovní položka.Nadřazený prvek definuje aktuální pole.

WHENNOTCHANGED

<WHENNOTCHANGED field="fieldReferenceName">
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>
</WHENNOTCHANGED>

Určuje podmínku pod kterým párovat jedno nebo více pravidel na aktuální pole.Pravidla párovat na aktuální pole při hodnoty jiného pole se nezmění v revizi pracovní položka.Nadřazený prvek definuje aktuální pole.

Následující tabulka popisuje, jak každý volitelný, podmíněné pravidlo použito u nadřazené pole při podmíněné klauzule, který určíte pomocí WHEN, WHENNOT, WHENCHANGED, nebo WHENNOTCHANGED prvkem je true.Další informace naleznete v tématu Nastavení podmínek v poli pracovní položky.

Element

Description

ALLOWEDVALUES

Nadřazené pole musí mít hodnotu, která pochází ze zadaného seznamu hodnot.

ALLOWEXISTINGVALUE

Hodnota nadřazené pole , které již bude možné i v případě, že ostatní pravidla poruší.Tento prvek není použitelná, pokud se změní hodnota nadřazené pole .

CANNOTLOSEVALUE

Uživatelé mohou změnit hodnoty nadřazené pole na hodnotu NULL, ale nelze ji změnit na jinou hodnotu.

KOPÍROVAT

Hodnota třetí pole je automaticky zkopírována do nadřazené pole.Určit třetí pole COPY prvku.

VÝCHOZÍ

Tento prvek určuje výchozí hodnota nadřazené pole.

PRÁZDNÉ

Nadřazené pole nesmí obsahovat hodnotu.

ZMRAZENÉ

Nadřazené pole je zmrazen.Když je pole zmrazené, můžete měnit její hodnotu na NULL, ale nelze je změnit na jinou hodnotu.

SHODA

Hodnota nadřazené pole musí odpovídat vzoru, který zadáte.

NOTSAMEAS

Hodnota nadřazené pole nemůže odpovídat hodnotě třetí pole.Určit třetí pole NOTSAMEAS prvku.

PROHIBITEDVALUES

Nadřazené pole nesmí obsahovat žádné hodnoty v seznamu výčtu.

JEN PRO ČTENÍ

Nadřazené pole je jen pro čtení.

POŽADOVÁNO

Nadřazené pole musí obsahovat hodnotu NULL.

SERVERDEFAULT

Nadřazené pole má svou hodnotu z určeného serveru komponenta.Jsou platný součásti serveru hodiny, což je čas, kdy je aktualizována pracovní položka , a currentuser, je identita uživatel , který aktualizuje položka.

SUGGESTEDVALUES

Výčtový seznam obsahuje doporučené hodnoty pro nadřazené pole.

VALIDUSER

Pouze uživatelé, kterým určíte nadřazené polezměnit.

Zpět na začátek

Definování závislé požadované pole

Můžete určit, že je pole požadováno pouze při druhé pole obsahuje určitou hodnotu.V následujícím příkladu Pokud zákazník hlásí chybazávažnost zákazník musí být určeno.Pokud není chyba ohlásil zákazník, závažnost zákazník není vyžadováno.

<FIELD refname="MyCorp.Severity" name="Customer Severity" type="String">
    <ALLOWEDVALUES>
        <LISTITEM value="Blocking" />
        <LISTITEM value="Major" />
        <LISTITEM value="Minor" />
    </ALLOWEDVALUES>
    <WHEN field="MyCorp.CustomerReported" value="true">
        <REQUIRED />
    </WHEN>
</FIELD>

Definování podmíněné přehled vyskladnění

Následující příklad ukazuje přehled podmíněné vyskladnění, ve kterém povolené hodnoty pole typ problému jsou omezené, zda je nastavena hodnota pole ProblemCharacteristic dokumentaci.

<FIELD refname="MyCorp.ProblemType" name="Problem Type" type="String">
    <WHEN field="MyCorp.ProblemCharacteristic" value="Documentation">
        <ALLOWEDVALUES>
            <LISTITEM value="Spelling Error" />
            <LISTITEM value="Bad Format" />
            <LISTITEM value="Missing Info" />
        </ALLOWEDVALUES>
    </WHEN>
</FIELD>

Definování pole, pokud uživatel změní jiného pole (WHENCHANGED)

V následujícím příkladu Pokud uživatel změní hodnotu MyCorp.State poleje MyCorp.StateDate pole nastaveno na aktuální datum a čas jako hodiny zobrazí server.

<FIELD refname="MyCorp.StateDate" name="Date Of Last State Change" type="DateTime">
    <WHENCHANGED field="MyCorp.State">
        <COPY from="clock" />
    </WHENCHANGED>
</FIELD>

V následujícím příkladu Pokud uživatel změní hodnotu MyCorp.State polehodnota pole MyCorp.Status je zrušeno.

<!-- Clear the status field whenever someone changes the state -->
<FIELD refname="MyCorp.Status" name="Status" type="String">
    <WHENCHANGED field="MyCorp.State">
        <COPY from="value" value="">
    </WHENCHANGED>
</FIELD>

Definování hodnoty pole založené na uživatele není změna pole (WHENNOTCHANGED)

V následujícím příkladu, když uživatel nezmění hodnota MyCorp.State polebude MyCorp.StateDate pole jen pro čtení.

<FIELD refname="MyCorp.StateDate" name="Date Of Last State Change" type="DateTime">
<!-- Make the StateDate field read-only when the State field is not changed -->
    <WHENNOTCHANGED field="MyCorp.State">
        <READONLY />
    </WHENNOTCHANGED>
</FIELD>

Viz také

Koncepty

Všechny referenční elementy jazyk XML pole

Další zdroje

Nastavení podmínek v poli pracovní položky

Práce s poli pravidla