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


Изменение рабочего процесса типа рабочего элемента

Обновлен: Ноябрь 2007

Можно изменить рабочий процесс типа рабочего элемента: для этого следует экспортировать XML-файл и изменить его содержимое. После изменения рабочего процесса можно импортировать XML-файл, чтобы начать использование обновленного типа рабочего элемента.

Необходимые разрешения

Для выполнения этой операции необходимо быть членом группы Администраторы Team Foundation или членом группы Администраторы проекта для проекта. Дополнительные сведения см. в разделе Разрешения Team Foundation Server.

Изменение рабочего процесса

  1. Если вы изменяете тип рабочего элемента для одного проекта, запустите утилиту witexport для экспорта типа рабочего элемента, который требуется изменить, в XML-файл. Дополнительные сведения см. в разделе Практическое руководство. Экспортирование типа рабочего элемента из существующего проекта.

  2. В среде Visual Studio последовательно щелкните Файл, Открыть, а затем щелкните Файл.

    Откроется диалоговое окно Открытие файла.

  3. В списке Поиск в перейдите к папке, в которую был экспортирован файл.

    Если изменение типа рабочего элемента производится для настройки шаблона процесса, перейдите в ту папку, куда был загружен шаблон процесса.

    ms404845.alert_note(ru-ru,VS.90).gifПримечание.

    Если компьютер работает под управлением Windows Vista, у пользователя могут отсутствовать права доступа к определенным папкам. При попытке экспорта типа рабочего элемента в папку, для доступа к которой у пользователя отсутствуют права, технология виртуализации реестра автоматически перенаправит экспортируемый файл и сохранит его в виртуальном хранилище. Дополнительные сведения см. в статьях https://go.microsoft.com/fwlink/?LinkId=92325 и https://go.microsoft.com/fwlink/?LinkId=92323. Во избежание перенаправления файл можно экспортировать в расположение, для которого имеются права доступа.

  4. Выберите XML-файл типа рабочего элемента, который нужно обновить, и нажмите кнопку Открыть. При выводе запроса о завершениях строк нажмите кнопку Нет.

  5. Найдите определение рабочего процесса типа рабочего элемента в разделе <WORKFLOW> XML-файла, как показано в следующем коде XML:

    <WORKFLOW>
      <STATES>
        <STATE value="Active">
          <FIELDS>
            <FIELD refname="Microsoft.VSTS.Common.ClosedDate">
              <EMPTY />
            </FIELD>
            <FIELD refname="Microsoft.VSTS.Common.ClosedBy">
    ...
    
  6. Добавьте к определению типа состояние «Unapproved», вставив еще один элемент <STATE>. Новое состояние выделено полужирным шрифтом.

    <WORKFLOW>
      <STATES>
        <STATE value="Unapproved">    </STATE>    <STATE value="Active">
          <FIELDS>
            <FIELD refname="Microsoft.VSTS.Common.ClosedDate">
              <EMPTY />
            </FIELD>
            <FIELD refname="Microsoft.VSTS.Common.ClosedBy">
    ...
    
  7. Создайте переход между состоянием «null» и состоянием «unapproved». Для этого сначала найдите раздел определения рабочего процесса, относящийся к переходам. Затем добавьте следующий код XML, выделенный полужирным шрифтом. В результате этого изменения для начального состояния всех новых рабочих элементов данного типа устанавливается значение «Unapproved» со значением «New» для причины по умолчанию.

    <TRANSITIONS>
      <TRANSITION from="" to="Unapproved">    <REASONS>      <DEFAULTREASON value="New" />    </REASONS>  </TRANSITION>  <TRANSITION from="" to="Active">
        <REASONS>
          <DEFAULTREASON value="New" />
        </REASONS>
        <FIELDS>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
            <COPY from="currentuser" />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
            <COPY from="clock" />
          </FIELD>
          <FIELD refname="System.AssignedTo">
            <COPY from="currentuser" />
          </FIELD>
        </FIELDS>
      </TRANSITION>
    
  8. Удалите переход к состоянию «Active», который выделен в следующем коде XML. Это необходимо сделать, потому что может происходить только один открывающий переход.

    <TRANSITIONS>
      <TRANSITION from="" to="Unapproved">
        <REASONS>
          <DEFAULTREASON value="New" />
        </REASONS>
      </TRANSITION>
      <TRANSITION from="" to="Active">    <REASONS>      <DEFAULTREASON value="New" />    </REASONS>    <FIELDS>      <FIELD refname="Microsoft.VSTS.Common.ActivatedBy">        <COPY from="currentuser" />      </FIELD>      <FIELD refname="Microsoft.VSTS.Common.ActivatedDate">        <COPY from="clock" />      </FIELD>      <FIELD refname="System.AssignedTo">        <COPY from="currentuser" />      </FIELD>    </FIELDS>  </TRANSITION>
    
  9. Добавьте для открывающего перехода причину «Ported», вставив следующий код XML, выделенный полужирным шрифтом. Это позволит пользователям определять, создан ли рабочий элемент заново или был перенесен из другой системы отслеживания.

    <TRANSITIONS>
      <TRANSITION from="" to="Unapproved">
        <REASONS>
          <DEFAULTREASON value="New" />
         <REASON value="Ported" />    </REASONS>
      </TRANSITION>
    ...
    
  10. Вставьте следующее правило COPY, выделенное полужирным шрифтом. Данное правило устанавливает в поле Состояние назначения значение по умолчанию для пользователя, создавшего рабочий элемент. Это правило оценивается только во время открывающего перехода.

    <TRANSITIONS>
      <TRANSITION from="" to="Unapproved">
        <REASONS>
          <DEFAULTREASON value="New" />
         <REASON value="Ported" />
        </REASONS>
        <FIELDS>       <FIELD refname="System.AssignedTo">         <COPY from="currentuser" />       </FIELD>    </FIELDS>
      </TRANSITION>
    ...
    
    ms404845.alert_note(ru-ru,VS.90).gifПримечание.

    В зависимости от местоположения правила — в элементе <TRANSITION> или <STATE>, правило будет действовать либо для переходов, либо для состояний. Дополнительные сведения см. в разделе Использование правил <WHEN*>, <DEFAULT> и <COPY>.

  11. Создайте переход из состояния «Unapproved» к состоянию «Active», добавив следующий код XML, выделенный в следующем примере. Благодаря этому изменению после утверждения рабочего элемента для него можно выполнить этот переход.

    <TRANSITIONS>
      <TRANSITION from="" to="Unapproved">
        <REASONS>
          <DEFAULTREASON value="New" />
         <REASON value="Ported" />
        </REASONS>
        <FIELDS>
           <FIELD refname="System.AssignedTo">
             <COPY from="currentuser" />
           </FIELD>
        </FIELDS>
      </TRANSITION>
      <TRANSITION from="Unapproved" to="Active">    <REASONS>      <DEFAULTREASON value="Approved" />    </REASONS>  </TRANSITION>  <TRANSITION from="Active" to="Closed">
        <REASONS>
          <DEFAULTREASON value="Completed" />
          <REASON value="Deferred" />
          <REASON value="Obsolete" />
          <REASON value="Cut" />
        </REASONS>
    ...
    
  12. Для сохранения изменений в файле XML нажмите кнопку Сохранить в панели инструментов.

  13. Сведения об импорте нового типа рабочего элемента в одиночный проект см. в разделе Практическое руководство: импорт типа рабочего элемента в существующий проект. О добавлении типа рабочего элемента в шаблон процесса см. в разделе Типы рабочих элементов.

Проверка изменений, импортированных в отдельный проект

  1. В окне Сред. Командный обозреватель щелкните Обновить, чтобы загрузить с сервера последние обновления.

    Эти обновления содержат только что импортированные изменения. Подождите несколько секунд, пока не загрузится узел «Рабочие элементы». Узлы, находящиеся в процессе загрузки, помечаются словом работает.

  2. Создайте новый рабочий элемент, используя модифицированный вами тип рабочего элемента. Для этого щелкните правой кнопкой мыши узел Рабочие элементы, выберите команду Добавить рабочий элемент, а затем выберите тип рабочего элемента.

    Этот рабочий элемент создается на основе измененного и импортированного вами типа рабочего элемента.

  3. Обратите внимание, что для поля Состояние сейчас установлено значение Unapproved, а для поля Причина — значение New. Кроме того, для значения Состояние назначения устанавливается имя вашей учетной записи. Щелкните поле Причина, чтобы открыть список, содержащий два значения — New и Ported.

  4. Введите название в поле Название, а затем нажмите кнопку Сохранить, чтобы сохранить рабочий элемент. Дождитесь завершения операции сохранения, на что указывает появление сообщения Элементы сохранены в строке состояния.

  5. В поле Состояние выберите значение Active, чтобы утвердить рабочий элемент и снова выполнить переход. Обратите внимание, что в поле Причина устанавливается значение Approved.

  6. Для сохранения данного перехода нажмите кнопку Сохранить в панели инструментов.

  7. Нажмите кнопку Закрыть, чтобы закрыть рабочий элемент.

См. также

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

Состояния, переходы и причины

Безопасность переходов

Ограничение области правил для полей по состоянию, переходу или причине

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

Автоматизация переходов между состояниями