Usando o <when><whennot>e condições <whenchanged>
[Observação: Este tópico é pré-versão documentação e está sujeitas a alterações em versões futuras. Tópicos em branco são incluídos sistema autônomo espaços reservados.]
Você pode definir regras que são executadas condicionalmente, usando quando, WHENNOT WHENCHANGED e WHENNOTCHANGED elementos.Essas regras definem quais elementos são executados quando a cláusula definida é True. Por exemplo, você pode criar uma lista dependentes para fornecer segurança detalhada ou comportamento personalizado.Este é um exemplo da cláusula WHEN simples:
<FIELD ...>
<WHEN field="refname" value="yyy">
</FIELD>
Essa cláusula significa que qualquer coisa dentro do elemento FIELD é aplicável sistema autônomo longo sistema autônomo o campo refnameh sistema autônomo o valor "yyy." O campo deve ser um nome de referência de campo válido.Para obter mais informações, consulte Nomes de referência de campo.
Observação: |
---|
O atributo valor não faz distinção entre maiúsculas e minúsculas.Portanto, se o campo refname contém 'YYY', correspondências incluir o valor = "yyy" ou "YYY." |
Exemplos
Lista Selecionar dependentes
O exemplo a seguir demonstra uma lista dependentes no qual os valores permitidos para o tipo de problema são limitados, com base no valor de ProblemCharacteristic:
<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>
Campos obrigatórios
O exemplo a seguir mostra uma alterar em campos obrigatórios.Nesse cenário, quando um bug for relatado pelo cliente, severidade cliente deve ser inserida.Se o bug não foi relatado por um cliente, a gravidade de cliente não será necessária.
QUANDO
<WHEN>
Exemplo
<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>
Condição Qualquer coisa dentro deste elemento é aplicável sistema autônomo longo sistema autônomo o campo Customer Reported h sistema autônomo é um valor e valor true.
WHENNOT
<WHENNOT>
Exemplo
<WHENNOT field="refname" value="yyy">
</WHENNOT>
Condição Qualquer coisa dentro deste elemento é aplicável sistema autônomo longo sistema autônomo o campo refname h sistema autônomo um valor, mas esse valor não é yyy.
WHENCHANGED
<WHENCHANGED>
Exemplo
<FIELD refname="MyCorp.StateDate" name="Date Of Last State Change" type="DateTime">
<WHENCHANGED field="MyCorp.State">
<COPY from="clock" />
</WHENCHANGED>
</FIELD>
<!-- 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>
Condição Qualquer coisa dentro deste elemento é aplicável quando o campo refname foi modificado pelo usuário.
WHENNOTCHANGED
<WHENNOTCHANGED>
Exemplo
<FIELD refname="MyCorp.StateDate" name="Date Of Last State Change" type="DateTime">
<!-- Make the State field readonly when the StateDate field is not changed -->
<WHENNOTCHANGED field="MyCorp.State">
<READONLY />
</WHENNOTCHANGED>
</FIELD>
Condição Qualquer coisa dentro deste elemento é aplicável mesmo tempo que o campo refname não foi alterado.