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


Настройка условий для поля рабочего элемента

Если задать квалифицирующее правило, например с помощью элементов CANNOTLOSEVALUE, EMPTY, FROZEN, NOTSAMEAS, READONLY и REQUIRED, можно ограничить изменение значения в поле. Например, с помощью правила NOTSAMEAS можно запретить присваивание двум полям одного и того же значения или одновременную очистку двух полей. Кроме того, можно запретить присваивание одного и того же значения полям "Код проверил" и "Кому назначен".

Эти правила можно указать в качестве дочерних элементов элемента FIELD(определение), FIELD (рабочий процесс) или FIELD (глобальный рабочий процесс). Разрешить или запретить применение этих правил можно в зависимости от того, кто изменяет рабочий элемент, указав пользователя или группу в качестве значения атрибута for или not соответственно.

Примечание

Прежде чем можно будет определить глобальный проект, соответствующий компонент необходимо включить на сервере уровня приложений.Поэтому на сервере должна быть запущена версия Visual Studio Team Foundation Server, поддерживающая этот компонент, например Team Foundation Server 2010 с пакетом обновления 1 (SP1).Этот пакет обновления можно загрузить на следующей странице веб-сайта Майкрософт: Service Pack 1 of Visual Studio Team Foundation Server 2010, Beta.Дополнительные сведения см. в разделе Настройка глобального рабочего процесса.

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

  • Можно указать правило CANNOTLOSEVALUE, чтобы запретить удаление значения из поля после указания этого значения. Если к полю применяется это правило, такое поле всегда должно содержать отличное от NULL значение, после того как пользователь в первый раз задаст значение поля.

    <CANNOTLOSEVALUE for="userGroupName" not="userGroupName" />
    
  • Правило EMPTY используется для очистки поля, какое бы значение в нем не содержалось. Это правило также делает поле доступным только для чтения, и его нельзя использовать одновременно с правилом READONLY. Поле очищается, когда пользователь сохраняет рабочий элемент, и вносить в поле какое-либо значение больше нельзя. Это правило обычно используется при смене состояния для очистки полей, которые относятся к конечному состоянию перехода.

    <EMPTY for="userGroupName"not="userGroupName" />
    
  • Правило FROZEN следует указывать, чтобы запретить пользователям изменять поле на отличное от NULL значение после сохранения рабочего элемента. После того как поле получит значение, определенное в базе данных, это значение уже нельзя будет изменить.

    <FROZEN for="userGroupName" not="userGroupName" />
    
  • Правило NOTSAMEAS следует указывать, чтобы запретить присвоение такого же значения другому полю. Атрибут field должен содержать допустимое ссылочное имя поля.

    <NOTSAMEAS for="userGroupName" not="userGroupName" field="fieldReferenceName"/>
    

    Например, следующий фрагмент запрещает присвоение полю значения, совпадающего со значением поля MyCorp.Reviewer:

    <NOTSAMEAS field="MyCorp.Reviewer" />
    

    Использовать это правило следует для полей, имеющих сходный тип. Его нельзя использовать для полей PlainText или HTML.

  • Правило READONLY позволяет запретить изменение значения поля.

    Не используйте данный элемент вместе с элементом EMPTY, так как EMPTY также делает поле доступным только для чтения. При одновременном использовании обоих элементов могут получиться противоречивые результаты.

    <READONLY for="userGroupName" not="userGroupName" />
    
  • Правило REQUIRED следует указывать, если пользователь должен обязательно задать значение поля. Обязательные поля не могут быть пустыми. Пользователи не могут сохранить рабочий элемент, пока они не заполнили все обязательные поля.

    <REQUIRED for="userGroupName" not="userGroupName" />
    

К началу

Атрибуты

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

Атрибут

Описание

for

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

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

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

not

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

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

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

field

Обязательный для элемента NOTSAMEAS. Задает ссылочное имя поля, значение которого не может содержаться в текущем поле.

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

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

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

К началу

См. также

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

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

Использование лексем для ссылок на пользователей и группы

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

Управление разрешением на создание или изменение рабочих элементов

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

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

Журнал изменений

Дата

Журнал

Причина

Январь 2011

Пересмотрен с целью упрощения и включения синтаксической структуры каждого элемента правила.

Улучшение информации.