Sdílet prostřednictvím


Přiřazení hodnoty založené na podmíněné a pravidla

Můžete definovat pravidla podmíněně spouštěné 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 určitého 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í.

Další prvky, které seznam uvnitř jsou podmínky pole FIELD prvku (definice) nebo FIELD prvku (pracovní postup). Další informace o těchto prvků naleznete v 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ý odkaz na název pole. Další informace naleznete v tématu Konvence pro sledování objektů pracovní položky.

Poznámka

Hodnota atributu nerozlišuje malá a velká písmena. Proto pokud obsahuje název pole odkazu "yyy", odpovídá zahrnout hodnoty "yyy" a "yyy".

V tomto tématu

  • Struktura podmíněné prvky syntaxe

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

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

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

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

Struktura podmíněné prvky syntaxe

Následující tabulka popisuje podmíněné pravidla určující 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 popisující pole. Musí obsahovat 1 až 255 znaků.

  • value: Pokud má tato hodnota pravidla v zadané pole WHEN a WHENNOT prvky jsou použity aktuální pole.

Prvek

Syntaxe

Popis

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 použít aktuální pole při jiné pole má určitou hodnotu. Nadřazený prvek definuje aktuální pole.

Zadaná hodnota po určené pole pravidla tohoto prvku použita 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, podle které aktuální pole použít jedno nebo více pravidel. Pravidla se vztahují 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, pravidla tohoto prvku použita aktuální pole.

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, podle které aktuální pole použít jedno nebo více pravidel. Pravidla se vztahují na aktuální pole při změně hodnoty jiného pole v revizi pracovní položku. 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, podle které aktuální pole použít jedno nebo více pravidel. Pravidla se vztahují na aktuální pole při hodnoty jiného pole se nezmění v revizi pracovní položku. 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ého pole při podmíněné, určíte pomocí klauzule WHEN, WHENNOT, WHENCHANGED, nebo WHENNOTCHANGED prvek je PRAVDA. Další informace naleznete v tématu Nastavení podmínek na poli položku práce.

Prvek

Popis

ALLOWEDVALUES

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

ALLOWEXISTINGVALUE

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

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 automaticky zkopíruje do nadřazené pole. Určit třetí pole COPY prvku.

VÝCHOZÍ

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

PRÁZDNÝ

Nadřazené pole musí obsahovat hodnotu.

ZMRAZENÉ

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

MATCH

Hodnota pole nadřazený musí odpovídat vzorku, který určíte.

NOTSAMEAS

Hodnota pole nadřazený 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 součásti. Platný server součásti jsou hodiny, což je čas, kdy je pracovní položka aktualizována, a currentuser, je identita uživatele, který aktualizuje položku.

SUGGESTEDVALUES

Výčtový seznam obsahuje navrhované hodnoty nadřazené pole.

VALIDUSER

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

Zpět na začátek

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

Můžete zadat pole je požadováno pouze v případě jiného pole obsahuje určitou hodnotu. V následujícím příkladu Pokud zákazník hlásí chyby závažnost zákazník musí být určeno. Pokud zákazník není ohlásil chyb, 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ého přehled vyskladnění

Následující příklad ukazuje, v němž povolené hodnoty pro pole Typ problému jsou omezeny, zda je nastavena hodnota pole ProblemCharacteristic dokumentaci na základě podmíněného seznamu.

<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, jestliže uživatel změní hodnotu pole MyCorp.State MyCorp.StateDate pole je 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 Jestliže uživatel změní hodnotu pole MyCorp.State hodnota 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 podle uživatele není změna pole (WHENNOTCHANGED)

V následujícím příkladu když uživatel změnit hodnotu pole MyCorp.State MyCorp.StateDate pole změní 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 XML pole

Další zdroje

Nastavení podmínek na poli položku práce

Práce s pravidly pole

Historie změn

Datum

Poslední dokumenty

Důvod

Leden 2011

Struktura syntaxi pro všechny podmíněné prvky a zvýrazněte příklady přeuspořádání obsahu přidat.

Rozšíření informace