Поделиться через


Определение значения по умолчанию или копирование значения в поле

Можно задать для поля значение по умолчанию, скопировать значение из другого поля или подставить значение, определяемое системой.Значения полей по умолчанию — это правила, которые управляют автоматическим присвоением значений полей.Для задания значения поля по умолчанию используется один из следующих элементов: COPY, DEFAULT или SERVERDEFAULT.Эти элементы можно указать в качестве дочерних элементов для элемента FIELD (определение) или FIELD (рабочий процесс).

В элементы COPY и DEFAULT значения подставляются в начале редактирования, а в правило SERVERDEFAULT значение подставляется во время фиксации рабочего элемента в базе данных.Это действие выполняется, когда пользователь сохраняет изменения в рабочем элементе, и пользователь не может переопределить значение.В форме рабочего элемента такие поля обычно отображаются как доступные только для чтения.Правило SERVERDEFAULT используется для таких полей, как автор последнего изменения и дата последнего изменения, позволяя вести надежный журнал аудита.

Содержание раздела

  • Синтаксическая структура для определения значений по умолчанию

  • Определение значения по умолчанию

  • Автоматическая очистка поля

  • Сохранение значения поля

  • Задание часов в качестве часов по умолчанию

Синтаксическая структура для определения значений по умолчанию

С помощью элементов COPY, DEFAULT и SERVERDEFAULT можно скопировать значение из одного поля в другое, скопировать серверное значение в поле или указать значение поля по умолчанию.

ПримечаниеПримечание

При изменении рабочего элемента с помощью правила элемента COPY или DEFAULT может выбираться текущее или предыдущее значение исходного поля.

  • Можно копировать значение из другого поля, вставлять время на часах или имя текущего пользователя.При указании значения value или field для атрибута from необходимо также задать атрибут value или field.Когда пользователь изменяет или создает рабочий элемент, правило COPY подставляет в поле значение вне зависимости от значения, уже присутствующего в поле.

    <COPY for="userGroupName" not="userGroupName"  from="value | field | clock | currentuser" value="valueToCopy" field="fieldReferenceName/>
    
  • Значение поля по умолчанию задается с помощью поля DEFAULT.Когда пользователь создает или изменяет рабочий элемент, правило DEFAULT подставляет значение, если поле является пустым.Можно копировать значение из другого поля, вставлять метку даты и времени в соответствии с часами сервера или имя текущего пользователя.Если у поля уже есть значение, это правило игнорируется.

    <DEFAULT for="userGroupName" not="userGroupName" from="value | field | clock | currentuser" value="defaultValue" field="fieldReferenceName" />
    
  • Можно копировать значение с сервера в поле при сохранении рабочего элемента.Когда пользователь изменяет состояние рабочего элемента, правило SERVERDEFAULT задает значение, которое должно быть скопировано в текущее поле из значения, полученного из серверного компонента.Элементы DEFAULT и COPY предполагают подстановку значений при открытии пользователем рабочего элемента для изменения, а правило SERVERDEFAULT подставляет значение при фиксации рабочего элемента в базе данных.Это действие происходит, когда пользователь сохраняет рабочий элемент.Переопределить значение пользователь не может.В форме такие поля обычно отображаются как доступные только для чтения.Правило SERVERDEFAULT используется для таких полей, как автор последнего изменения и дата последнего изменения, позволяя вести надежный журнал аудита.

    <SERVERDEFAULT for="userGroupName" not="userGroupName" from="clock | currentuser" />
    

Каждый из этих элементов правил задает атрибут from="исходный_тип", определяющий источник значения.В зависимости от значения исходный_тип могут потребоваться другие атрибуты.В следующей таблице описаны все атрибуты, на которые ссылаются элементы правил COPY, DEFAULT и SERVERDEFAULT.

Атрибут

Описание

for

Необязательный параметр.Задает имя пользователя или группы Team Foundation, к которым применяется данное правило.Допустимые имена представляют собой текстовую строку длиной от 1 до 255 знаков.

Значение шаблона: ^[^\\]+\\[^\\]+$

Пример значения шаблона: Domain\userID

not

Необязательный параметр.Задает имя пользователя или группы Team Foundation, к которым данное правило не применяется.Допустимые имена представляют собой текстовую строку длиной от 1 до 255 знаков.

Значение шаблона: ^[^\\]+\\[^\\]+$

Пример значения шаблона: Domain\userID

from

Обязательное.Указывает, следует ли копировать значение по умолчанию из значения атрибута value, значения атрибута field, системных часов или от текущего пользователя.При указании значения value или field для атрибута from необходимо также задать атрибут value или field соответственно.Можно указать следующие значения.

  • clock:    копирует время из системных часов. Использует текущую дату и время в качестве значения.Дополнительные атрибуты не требуются.Для правил COPY и DEFAULT значение берется из часов локального компьютера.Для правила SERVERDEFAULT значение определяется по серверным часам в момент сохранения.Действует только для полей DateTime.

  • currentuser. Копирует имя находящегося в системе пользователя.В качестве значения следует использовать короткое имя текущего пользователя.Дополнительные атрибуты не требуются.Действует только для строковых полей.

  • field. Копирует значение, определенное в качестве указанного атрибута field.Требуется атрибут field="abc".По умолчанию, если указанное поле "from" пусто, ничего не выполняется.Атрибут field используется только для правил COPY и DEFAULT.

  • value. Копирует значение заданного атрибута value.

value

Необязательный параметр.Задает значение, которое должно быть скопировано в поле, если в качестве атрибута from задано значение value.Допустимые значения представляют собой текстовую строку длиной от 1 до 255 знаков.

Копируемое значение может быть пустым.

field

Необязательный параметр.Задает имя поля, значение которого должно быть скопировано в поле, если в качестве атрибута from задано значение field.Вы должны определить этот атрибут, если значением атрибута from является "field".

Имя ссылки на копируемое поле.Ссылочное имя должно совпадать с ссылочным именем, определенным в элементе FIELD (определение).Дополнительные сведения см. в разделе Элемент FIELD (определение).

Значение шаблона: ^[a-zA-Z_][a-zA-Z0-9_]*(\.[a-zA-Z0-9_]+)+$

Пример значения шаблона: Company.Division.IssueType

К началу

Определение значения по умолчанию

В следующем примере P3 задается в качестве значения по умолчанию для поля Priority.

<FIELD refname="MyCorp.Priority" name="Priority" type="String">
<HELPTEXT>Specify the severity of the problem</HELPTEXT>
    <ALLOWEDVALUES>
        <LISTITEM value="P1"/>
        <LISTITEM value="P2"/>
        <LISTITEM value="P3"/>
    </ALLOWEDVALUES>
<DEFAULT from="value" value="P3"/>
</FIELD>

К началу

Автоматическая очистка поля

В следующем примере очищается поле состояния.

<FIELD refname="MyCorp.Status" name="Status" type="String">
    <COPY from="value" value="" />
</FIELD>

К началу

Сохранение значения поля

В следующем примере сохраняется имя пользователя, который изменил рабочий элемент последним.

<FIELD refname="System.Last Changed By" name="Last Changed By" type="String">
    <HELPTEXT>The name of the user who most recently modified this bug</HELPTEXT>
    <VALIDUSER group="[Project]\MyProjectMembers" />
    <SERVERDEFAULT from="currentuser" />
</FIELD>

К началу

Задание часов в качестве часов по умолчанию

В следующем примере в качестве значения поля используется текущая дата, но пользователи могут изменить его.

<FIELD refname="MyCorp.FoundOn" name="Found On" type="DateTime">
    <HELPTEXT>Defines when a bug was found.</HELPTEXT>
    <DEFAULT from="clock" />
</FIELD>
ПримечаниеПримечание

Для значений, содержащих символ апострофа, например "Won’t Fix", необходимо использовать в XML-коде двойные кавычки, как показано в следующем примере:

<LISTITEM value="Won’t Fix"/>

К началу

См. также

Основные понятия

Справка по всем XML-элементам FIELD

Другие ресурсы

Работа с правилами полей

Определение полей рабочих элементов