Specifica dei valori predefiniti dei campi
Aggiornamento: novembre 2007
I valori predefiniti dei campi sono regole che controllano la modalità di assegnazione automatica dei valori dei campi. Tali valori sono espressi mediante tre tipi di elementi: <DEFAULT>, <COPY> e <SERVERDEFAULT>.
**<DEFAULT> **Quando un utente crea un nuovo elemento di lavoro o ne modifica uno, l'elemento <DEFAULT> inserisce un valore di campo se il campo è vuoto. Se è già presente un valore, la regola predefinita viene ignorata.
<COPY> Quando un utente crea un nuovo elemento di lavoro o ne modifica uno, l'elemento <COPY> inserisce un valore di campo a prescindere dai valori di uscita già presenti nel campo.
<SERVERDEFAULT> A differenza di <DEFAULT> e <COPY> che inseriscono valori all'avvio della modifica, la regola <SERVERDEFAULT> inserisce un valore quando si esegue il commit dell'elemento di lavoro al database. Questa operazione viene eseguita al momento del salvataggio e l'utente non può eseguire l'override del valore. I campi appaiono come campi in sola lettura sul form. Questa regola viene utilizzata per campi come "Autore ultima modifica" e "Data ultima modifica" per supportare la traccia delle attività sicure.
Ciascun tag accetta un attributo from="<fromtype>" che identifica l'origine del valore. A seconda dell'attributo <fromtype> possono seguire altri attributi.
I valori di tipo from validi sono i seguenti:
value Utilizzare il valore di una costante di stringa specificata. Richiede la presenza di un attributo value="abc". value viene utilizzato solo per le regole <COPY> e <DEFAULT>.
field Utilizzare il valore di un campo specificato. Richiede la presenza di un attributo field="abc". Per impostazione predefinita, se il campo "from" specificato è vuoto, non viene eseguita alcuna operazione. field viene utilizzato solo per le regole <COPY> e <DEFAULT>.
clock Utilizzare la data e l'ora correnti come valore. Non sono necessari attributi aggiuntivi. Viene utilizzato per i campi relativi alla data e all'ora. Per le regole <COPY> e <DEFAULT>, questo valore viene ricavato dall'ora del computer locale. Per <SERVERDEFAULT>, il valore viene ricavato dall'orologio del server al momento del commit.
currentuser Utilizzare come valore il nome breve dell'utente corrente. Non sono necessari attributi aggiuntivi. Viene utilizzato per i campi stringa.
Esempi
Nell'esempio riportato di seguito viene specificata una priorità predefinita.
<FIELD refname="MyCorp.Priority" name="Priority" type="String">
<HELPTEXT>Enter the severity of the problem</HELPTEXT>
<ALLOWEDVALUES>
<LISTITEM value="P1"/>
<LISTITEM value="P2"/>
<LISTITEM value="P3"/>
</ALLOWEDVALUES>
<DEFAULT from="value" value="P3"/>
</FIELD>
Nell'esempio riportato di seguito i valori presenti nel campo dello stato vengono annullati.
<FIELD refname="MyCorp.Status" name="Status" type="String">
<COPY from="value" value="" />
</FIELD>
Nell'esempio riportato di seguito viene salvato il nome dell'utente che ha effettuato l'ultima modifica su un elemento di lavoro.
<FIELD refname="System.Last Changed By" name="Last Changed By" type="String">
<HELPTEXT>The user name of the person who last modified this bug</HELPTEXT>
<VALIDUSER group="[Project]\MyProjectMembers" />
<SERVERDEFAULT from="currentuser" />
</FIELD>
Nell'esempio riportato di seguito nel valore di un campo viene utilizzata la data corrente ma gli utenti possono modificarla.
<FIELD refname="MyCorp.FoundOn" name="Found On" type="DateTime">
<HELPTEXT>Defines when a bug was found.</HELPTEXT>
<DEFAULT from="clock" />
</FIELD>
![]() |
---|
Per i valori che contengono un apostrofo, come "Won’t Fix”, è necessario utilizzare le virgolette doppie nel file XML. Ad esempio: <LISTITEM value="Won’t Fix"/> |