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


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

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

Требуемые разрешения

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

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

  1. В случае изменения типа рабочего элемента для одного проекта запустите утилиту witadmin exportwitd для экспорта типа рабочего элемента, который требуется изменить, в XML-файл. Дополнительные сведения см. в разделе Настройка типов рабочих элементов и управление ими [witadmin].

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

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

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

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

    Примечание

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

  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>
    ...
    

    Примечание

    При вставке этого правила в другие элементы <TRANSITION> или <STATE> правило будет действовать для других переходов или состояний.Дополнительные сведения см. в разделе Проверка правил.

  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. Сведения об импорте нового типа рабочего элемента в отдельный проект см. в разделе Настройка типов рабочих элементов и управление ими [witadmin]. Чтобы добавить тип рабочего процесса в шаблон процесса, см. раздел Добавление определений типов рабочих элементов в шаблон процесса.

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

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

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

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

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

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

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

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

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

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

См. также

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

Разработка рабочего процесса

Ограничение переходов между состояниями

Когда и где применять правило поля

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

Автоматизация назначений полей на основе состояния, перехода или причины