Przypisywanie warunkowych wartości i reguł
Można zdefiniować reguły, które są uruchamiane warunkowe przy użyciu WHEN, WHENNOT, WHENCHANGED, i WHENNOTCHANGED elementy.Te reguły można użyć do zdefiniowania, elementy, które są uruchamiane po klauzuli zdefiniowany jest True.Można określić warunki, które są oparte na jakie wartość jest przypisywana do określonego pola lub tego, czy użytkownik modyfikuje określonego pola.Na przykład można utworzyć listę pobrania zależne szczegółowe zabezpieczeń lub zachowania niestandardowego.
Pole warunki są dodatkowe elementy, które list wewnątrz FIELD elementu (definicja) lub FIELD elementu (przepływu pracy).Aby uzyskać więcej informacji na temat tych elementów, zobacz Element FIELD (Definition) — Odwołanie i Element FIELD (Workflow).
Podany kod jest prosty przykład WHEN klauzuli:
<FIELD . . . >
<WHEN field="referenceName" value="yyy">
</FIELD>
Klauzulę oznacza, że wszystko w ramach tego elementu pole jest stosowane tak długo, jak pola refname ma wartość "yyy".Pole musi być prawidłowa dokumentacja Nazwa pola.Aby uzyskać więcej informacji, zobacz Konwencje nazewnictwa obiektów śledzenia elementów pracy.
[!UWAGA]
Wartość atrybutu jest uwzględniana wielkość liter.W związku z tym jeśli nazwa odwołania pola zawierające "YYY", dopasowań zawiera wartości "yyy" i "YYY".
W tym temacie:
Struktura składni dla elementów warunkowe
Definiowanie zależnych wymagane pole
Definiowanie listy pobrania warunkowe
Zdefiniowanie pola, gdy użytkownik zmieni innym polu (WHENCHANGED)
Definiowanie wartość pola w oparciu o użytkownika nie modyfikowanie pola (WHENNOTCHANGED)
Struktura składni dla elementów warunkowe
W poniższej tabeli opisano warunkowych reguł, które można określić jako elementy podrzędne FIELD elementu (definicja) lub FIELD elementu (przepływu pracy).Te elementy zaakceptować jedną lub więcej z następujących atrybutów:
field: Ciąg opisujący pola.Musi zawierać 1 do 255 znaków.
value: Gdy określone pole ma wartość ta reguły w WHEN i WHENNOT elementy są stosowane do bieżącego pola.
Element |
Składnia |
Opis |
---|---|---|
WHEN |
|
Określa co najmniej jedną regułę do zastosowania do bieżącego pola w innym polu po określonej wartości.Element nadrzędny definiuje bieżącego pola. Jeśli określone pole zawiera określoną wartość, reguły, w tym elemencie są stosowane do bieżącego pola. |
WHENNOT |
|
Określa, że warunek, pod którym ma być zastosowany co najmniej jedną regułę do bieżącego pola.Zasady dotyczą bieżącego pola po zmianie wartości w innym polu.Element nadrzędny definiuje bieżącego pola. Jeśli określone pole zawiera określoną wartość, zasady, w tym elemencie są stosowane do bieżącego pola. |
WHENCHANGED |
|
Określa, że warunek, pod którym ma być zastosowany co najmniej jedną regułę do bieżącego pola.Zasady dotyczą bieżącego pola po zmianie wartości innego pola w wersji do elementu pracy.Element nadrzędny definiuje bieżącego pola. |
WHENNOTCHANGED |
|
Określa, że warunek, pod którym ma być zastosowany co najmniej jedną regułę do bieżącego pola.Reguły zastosowany do bieżącego pola wartości innego pola nie ulega zmianie w wersji do elementu pracy.Element nadrzędny definiuje bieżącego pola. |
W poniższej tabeli opisano, jak każda reguła opcjonalne, na podstawie warunkowe są stosowane do nadrzędnego podczas klauzuli warunkowych określonym przez użytkownika przy użyciu WHEN, WHENNOT, WHENCHANGED, lub WHENNOTCHANGED element ma wartość true.Aby uzyskać więcej informacji, zobacz Zastosowanie reguły do pola elementu roboczego.
Element |
Opis |
---|---|
Pola nadrzędnego musi mieć wartość, która pochodzi z określonej listy wartości. |
|
Wartość pola nadrzędnego, który już istnieje zostaną przesłane, nawet jeśli narusza inne zasady.Ten element nie ma zastosowania, jeśli wartość pola nadrzędnego zostanie zmieniona. |
|
Użytkownicy mogą zmienić wartość pola nadrzędnego ma wartość NULL, ale nie można go zmienić na jakiejkolwiek innej wartości. |
|
Wartość trzeciego pola jest automatycznie skopiowane do pola nadrzędnego.Określ pola trzeci w COPY elementu. |
|
Ten element określa wartość domyślną pola nadrzędnego. |
|
Pola nadrzędnego nie może zawierać wartość. |
|
Pole nadrzędne jest zablokowane.Jeśli pole jest zablokowane, można zmienić jego wartość null, ale nie można zmienić, aby jakiejkolwiek innej wartości. |
|
Wartość pola nadrzędnego musi być zgodny z wzorca, który określisz. |
|
Wartość pola nadrzędnego nie można dopasować wartość trzeciego pola.Określ pola trzeci w NOTSAMEAS elementu. |
|
Pola nadrzędnego nie może zawierać wartości na liście wyliczany. |
|
Pole nadrzędne jest tylko do odczytu. |
|
Pola nadrzędnego musi zawierać wartość, która nie ma wartości NULL. |
|
Pola nadrzędnego przyjmuje wartość ze składnika określonego serwera.Składniki prawidłowym serwerem są zegara, czyli czas, gdy element roboczy jest aktualizowany, i currentuser, który jest tożsamość użytkownika, który zaktualizował element pracy. |
|
Lista wyliczany zawiera sugerowane wartości pola nadrzędnego. |
|
Tylko użytkownicy, których można określić można zmodyfikować pola nadrzędnego. |
Powrót do początku
Definiowanie zależnych wymagane pole
Można określić, że pole jest wymagane tylko wtedy, gdy inne pole zawiera określoną wartość.W poniższym przykładzie gdy klient zgłosi usterkę, ważności klienta musi być określona.Ten błąd nie został zgłoszony przez klienta, ważności klienta nie jest wymagana.
<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 listy pobrania warunkowe
W poniższym przykładzie przedstawiono listę warunkowych pobrań, w którym dopuszczalne wartości pola Typ problemu są ograniczone, czy ustawiono wartość pola ProblemCharacteristic do dokumentacji w oparciu o.
<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>
Zdefiniowanie pola, gdy użytkownik zmieni innym polu (WHENCHANGED)
W poniższym przykładzie, gdy użytkownik zmieni wartość pola MyCorp.State pole MyCorp.StateDate jest ustawione na bieżącą datę i godzinę, jak pokazano w 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 zmieni wartość pola MyCorp.State, wartość pola MyCorp.Status jest zaznaczone.
<!-- 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ść pola w oparciu o użytkownika nie modyfikowanie pola (WHENNOTCHANGED)
W poniższym przykładzie, gdy użytkownik nie zmienia wartość pola MyCorp.State MyCorp.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>