Udostępnij za pośrednictwem


Przypisywanie uzależnionych od warunków wartości i reguł

Można zdefiniować zasady, które są uruchamiane warunkowo przy użyciu WHEN, WHENNOT, WHENCHANGED, i WHENNOTCHANGED elementy.Reguł tych używa się, aby zdefiniować elementy, które są uruchamiane, gdy klauzula zdefiniowane jest True.Można zdefiniować warunki, które są oparte na wartości, jakie jest przypisany do określonego pole lub czy użytkownik modyfikuje określonego pole.Na przykład można utworzyć listę pobrania zależnych szczegółowe zabezpieczenia lub niestandardowe zachowania.

Warunki pola są dodatkowe elementy listy wewnątrz FIELD element (definicja) lub FIELD elementu (przepływ pracy).Aby uzyskać więcej informacji o tych elementach, zobacz Element pola (definicja) i Element pola (przepływ pracy).

Poniższy kod jest prosty przykład WHEN klauzuli:

<FIELD . . . >

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

</FIELD>

Niniejszej klauzuli oznacza, że wszystko wewnątrz tego elementu pole jest stosowane tak długo, jak pole refname ma wartość "yyy". pole musi być prawidłowynazwą odwołanie dopole . Aby uzyskać więcej informacji, zobacz Konwencje nazewnictwa dla elementu pracy śledzenia obiektów.

[!UWAGA]

Wartość atrybut jest rozróżniana wielkość liter.W związku z tym jeśli nazwa pole odwołania posiada "YYY", dopasowania zawiera wartości "yyy" i "YYY".

W tym temacie

  • Struktura składni dla elementów warunkowe

  • Definiowanie utrzymaniu wymagane pole

  • Definiowanie warunkowego listy pobrania

  • Definiowanie pola, gdy użytkownik zmieni innego pola (WHENCHANGED)

  • Definiowanie wartości pola na podstawie użytkownika, nie modyfikując pole (WHENNOTCHANGED)

Struktura składni dla elementów warunkowe

W poniższej tabeli opisano warunkowych reguł, które można określić jako elementy element podrzędny FIELD (definicja), element lub FIELD elementu (przepływ pracy).Te elementy przyjąć jeden lub więcej z następujących atrybutów:

  • field: Ciąg znakowy opisujący pole.Musi zawierać od 1 do 255 znaków.

  • value: Kiedy określone pole ma wartość ta reguł w WHEN i WHENNOT elementy są zastosowane do bieżącego pole.

Element

Składnia

Opis

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>

Określa jedną lub kilka reguł, aby zastosować do bieżącego pole , gdy innego pole ma określoną wartość.Element nadrzędny definiuje bieżącego pole.

Jeśli określone pole ma określoną wartość, zasady w tym elemencie są stosowane do bieżącego 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>

Określa warunek, dla którego mają zastosowanie jednej lub kilku reguł do bieżącego pole.Zasady stosuje się do bieżącego pole po zmianie wartości innego pole .Element nadrzędny definiuje bieżącego pole.

Jeśli określone pole nie zawiera określoną wartość, zasady w tym elemencie są stosowane do bieżącego 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>

Określa warunek, dla którego mają zastosowanie jednej lub kilku reguł do bieżącego pole.Zasady stosuje się do bieżącego pole po zmianie wartości innego pole w wersji do element roboczy.Element nadrzędny definiuje bieżącego 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>

Określa warunek, dla którego mają zastosowanie jednej lub kilku reguł do bieżącego pole.Zasady stosuje się do bieżącego pole , gdy wartości innego pole nie zostanie zmieniona w wersji do element roboczy.Element nadrzędny definiuje bieżącego pole.

W poniższej tabeli opisano, jak każda reguła opcjonalne, warunkowe są stosowane do nadrzędnego pole po klauzuli warunkowe, która zostanie określona przy użyciu WHEN, WHENNOT, WHENCHANGED, lub WHENNOTCHANGED element jest true.Aby uzyskać więcej informacji, zobacz Ustawianie warunków pola elementu pracy.

Element

Opis

ALLOWEDVALUES

Nadrzędne pole musi mieć wartość, która pochodzi z określonej listy wartości.

ALLOWEXISTINGVALUE

Wartość pole nadrzędnego, która już istnieje będą dozwolone, nawet jeśli narusza ona innych reguł.Ten element nie jest stosowana, jeśli wartość pole nadrzędnego zostanie zmieniona.

CANNOTLOSEVALUE

Użytkownicy mogą zmieniać wartości nadrzędne pole wartość NULL, ale nie można go zmienić na inną wartość.

KOPIA

Wartość trzeciego pole jest automatycznie kopiowana do nadrzędnego pole.Określ trzecie pole w COPY element.

DOMYŚLNE

Ten element Określa nadrzędne pole wartość domyślna .

PUSTY

Nadrzędne pole nie musi zawierać wartość.

MROŻONE

Nadrzędne pole jest zamrożone.Kiedy pole jest zablokowane, można zmienić jej wartość NULL, ale nie można go zmienić na inną wartość.

DOPASOWANIE

Wartość pole nadrzędnego musi odpowiadać deseń, który określisz.

NOTSAMEAS

Wartości nadrzędne pole nie można dopasować wartość trzeciego pole.Określ trzecie pole w NOTSAMEAS element.

PROHIBITEDVALUES

Nadrzędne pole nie może zawierać żadnych wartości na liście wyliczanych.

TYLKO DO ODCZYTU

Nadrzędnym pole jest tylko do odczytu.

WYMAGANE

Nadrzędne pole musi zawierać wartość, która nie jest NULL.

SERVERDEFAULT

Nadrzędne pole trwa jego wartości z określonego serwera składnik.Są prawidłowy składniki serwera zegar, czyli czas, gdy element roboczy jest aktualizowany, i currentuser, który jest tożsamość użytkownik , który jest aktualizowany element roboczy.

SUGGESTEDVALUES

Stały wykaz zawiera sugerowane wartości do polenadrzędnego.

VALIDUSER

Tylko użytkownicy, których można określić można zmodyfikować polenadrzędnego.

Powrót do początku

Definiowanie utrzymaniu wymagane pole

Można określić, że pole jest wymagane tylko podczas drugiego pole zawiera określoną wartość.W poniższym przykładzie kiedy kontrahent zgłasza usterkadotkliwości kontrahent musi być określona.Jeśli usterka nie został zgłoszony przez kontrahent, ważności kontrahent nie jest wymagane.

<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>

Definiowanie warunkowego listy pobrania

W poniższym przykładzie zademonstrowano listy pobrania warunkowe, w którym dozwolone wartości dla pole typ problemu są ograniczone, na podstawie tego, czy wartość pole ProblemCharacteristic jest równa dokumentacji.

<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>

Definiowanie pola, gdy użytkownik zmieni innego pola (WHENCHANGED)

W poniższym przykładzie, gdy użytkownik zmienia wartość MyCorp.State poleMyCorp.StateDate pole ustawiono do bieżącej daty i godziny, jak to pokazano zegara serwera.

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

W poniższym przykładzie gdy użytkownik zmienia wartość MyCorp.State polewartość pole MyCorp.Status jest wyczyszczone.

<!-- 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>

Definiowanie wartości pola na podstawie użytkownika, nie modyfikując pole (WHENNOTCHANGED)

W poniższym przykładzie, gdy użytkownik nie zmienia wartość MyCorp.State poleMyCorp.StateDate pole staje się tylko do odczytu.

<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>

Zobacz też

Koncepcje

Wszystkie odniesienia do elementów XML pola

Inne zasoby

Ustawianie warunków pola elementu pracy

Praca z reguły pól