Добавление поля и изменение макета существующего типа рабочего элемента
Для отслеживания дополнительных данных рабочего элемента можно добавлять поля в тип рабочего элемента, отображать их в форме рабочего элемента и сделать их удобными для отчета.Можно также изменить макет формы рабочего элемента для удовлетворения потребностей вашей команды.В этом разделе Джулия и Питер, члены команды Fabrikam Fiber, настраивают два различных типа рабочих элементов для поддержки их целей отслеживания.
Для отслеживания начала запросов новых функций Джулия добавляет пользовательское поле с выпадающим меню параметров и изменяет макет формы рабочего элемента для элементов невыполненной работы по продукту.Джулия выполняет пять задач для добавления пользовательского поля с выпадающим списком параметров и изменения макета формы рабочего элемента для элементов невыполненной работы по продукту.
Чтобы улучшить отслеживание работы и улучшить способность группы оценивать работу, Питер добавляет поля в тип рабочего элемента задачи.
Как показано на следующей иллюстрации, Джулия и Питер выполняют свои задачи независимо, но в определенной последовательности.
Изменение макета формы рабочего элемента.
Добавление поля в форму рабочего элемента
Чтобы просмотреть поля рабочего элемента и поля, помеченные как доступные для отчета, в шаблонах процессов по умолчанию для Team Foundation Server, см. раздел Справочник по полям рабочих элементов для Visual Studio ALM и Справочник по включаемым в отчеты полям для Visual Studio ALM.
Требования
- Для выполнения этой процедуры необходимо быть членом группы Администраторы Team Foundation или участником группы Администраторы проекта для проекта.Дополнительные сведения см. в разделе Разрешения Team Foundation Server.
Примечание |
---|
Для запуска Windows Vista не обязательно иметь разрешения, установленные для определенных папок.При попытке экспорта типа рабочего элемента в расположение, к которому отсутствуют права доступа, технология виртуализации реестра автоматически перенаправит экспортируемый файл и сохранит его в виртуальном хранилище.Во избежание перенаправления, файл можно экспортировать в расположение, для которого имеются права доступа.Дополнительные сведения о виртуализации реестра см. на следующих страницах на веб-сайте Майкрософт: Виртуализация реестра и Типовые проблемы виртуализации файлов и реестра в Windows Vista. |
1.Экспорт определения типа рабочего элемента
Если загрузить определение типа из командного проекта, то можно гарантировать, что вы работаете с последней версией.
Примечание |
---|
Если необходимо внести лишь незначительные изменения, и пользователь не испытывает проблем при работе с форматом XML, то можно изменить файлы с помощью Блокнота или другого текстового редактора.Или можно воспользоваться редактором процессов — мощным инструментом, устанавливаемым в качестве надстройки к Visual Studio.С помощью этого инструмента нет необходимости импортировать или экспортировать определения типа.Вместо этого можно открыть их с помощью редактора процессов и изменять их через интерфейс редактора. Загрузить инструментальное средство можно на странице Team Foundation Server Power Tools веб-сайта корпорации Майкрософт. Дополнительные сведения о загрузке файлов схемы для шаблонов процессов см. в разделе Указатель определений XML-элементов для подключаемых модулей шаблонов процессов. |
Экспортирование файла определения типа рабочего элемента из существующего командного проекта
Для запуска инструмента командной строки witadmin откройте окно командной строки там, где установлено либо Visual Studio, либо Team Explorer и введите:
cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE
В 64-разрядной версии Windows замените %programfiles% на %programfiles(x86)%.
Введите следующую команду, заменяя ваши данные на показанные здесь аргументы, где CollectionURL задает URL-адрес коллекции командных проектов, projectName определяет имя командного проекта внутри коллекции, WorkItemTypeName задает имя типа рабочего элемента для экспорта, а FileName задает расположение и имя файла экспортируемого определения типа.Затем нажмите ВВОД.
witadmin exportwitd /collection:CollectionURL /p:ProjectName /n:WorkItemTypeName /f:FileName
Пример: Экспорт определения для элемента невыполненной работы по продукту
Например, Джулия использует следующую команду для экспорта определения типа для ее командного проекта FabrikamFiber для элемента невыполненной работы по продукту в файл FF_ProductBItem.xml.
witadmin exportwitd /collection:http://julia-fabrikam:8080/tfs/Collection1 /p:"FabrikamFiber" /n:"Product Backlog Item" /f:FF_ProductBItem.xml
Пример: Экспорт определения задачи
А Питер использует следующую команду для экспорта определения типа задач и сохраняет его в файл FF_Task.xml.
witadmin exportwitd /collection:http://julia-fabrikam:8080/tfs/Collection1 /p:"FabrikamFiber" /n:Task /f:FF_Task.xml
После успешного завершения операции появится сообщение:
Операция завершена.
2.Добавление поля в определение типа
Чтобы добавить поле в определение типа, необходимо добавить элемент FIELD в разделе FIELDS и элемент Control в разделе FORM.Кроме того, рекомендуется придерживаться соглашений об именовании, установленных для поля.
Добавление поля в тип рабочего элемента
Найдите раздел XML-файла, определяющий поля типа и начинающийся с FIELDS.
Добавьте элемент FIELD, указывающий имя пользовательского поля для добавления.Необходимо указать следующие обязательные атрибуты: понятное name (имя), refname (имя ссылки) и type.Дополнительные сведения см. в разделе Элемент FIELD (определение).
Примечание Ссылочное имя, или refname, является программным именем данного поля.Все прочие правила должны ссылаться на это значение refname.Дополнительные сведения см. в разделе Соглашения об именовании объектов отслеживания рабочих элементов.
Пример: Добавление пользовательского поля со списком меню
Например, Джулия вводит следующий текст чтобы добавить пользовательское поле "Запросившая сторона" с именем ссылки FabrikamFiber.MyTeam.Requestor к определению типа элемента невыполненной работы по продукту.Она также определяет список выбора допустимых значений для поля, а также значение клиента по умолчанию для списка.
<FIELD name="Requestor" refname="FabrikamFiber.MyTeam.Requestor" type="String" reportable="Dimension"> <ALLOWEDVALUES> <LISTITEM value="Customer" /> <LISTITEM value="Executive Management" /> <LISTITEM value="Other" /> <LISTITEM value="Support" /> <LISTITEM value="Team" /> <LISTITEM value="Technicians" /> <DEFAULTVALUE value="Customer" /> </ALLOWEDVALUES> </FIELD>
Дополнительные сведения о списках выбора см. в разделе Определение списков выбора.
Пример: Добавление предопределенного поля
Для определения типа для задачи, Питер добавляет предопределенное поле "Завершенная работа" с именем ссылки Microsoft.VSTS.Scheduling.CompletedWork.
<FIELD name="Completed Work" refname="Microsoft.VSTS.Scheduling.CompletedWork" type="Double" reportable="measure" formula="sum" />
Список всех предопределенных полей см. в разделе Справочник по полям рабочих элементов для Visual Studio ALM.
Добавьте элемент CONTROL в разделе FORM, чтобы пользовательское поле отображалось на форме рабочего элемента в пределах группы элементов, где оно должно отображаться.Необходимо указать атрибут type элемента управления.Для получения дополнительной информации см. Справка по XML-элементу Control.
Пример: Добавление пользовательского поля на форму для элемента невыполненной работы по продукту
Пример: Добавление элемента управления для поля
Например, Джулия добавляет элемент Control для поля "Запросившая сторона" для отображения под полем "Причина" на форме рабочего элемента, как показано в следующем образце кода.
<Column PercentWidth="50"> <Group Label="Status"> <Column PercentWidth="100"> <Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assi&gned To:" LabelPosition="Left" /> <Control FieldName="System.State" Type="FieldControl" Label="&State:" LabelPosition="Left" /> <Control FieldName="System.Reason" Type="FieldControl" Label="Reason:" LabelPosition="Left" ReadOnly="True" /> <Control FieldName="FabrikamFiber.MyTeam.Requestor" Type="FieldControl" Label="Requestor:" LabelPosition="Left" ReadOnly="True" /> </Column> </Group> </Column>
Совет Определение формы для отслеживания рабочего элемента определяет все дочерние элементы элемента FORM в стиле Camel, а все остальные элементы — заглавными буквами.Если при проверке файлов определения типов возникнут ошибки, проверьте регистр элементов.Кроме того, структура открывающих и закрывающих тегов должна соответствовать правилам синтаксиса XML.
Следующая иллюстрация показывает, что форма рабочего элемента для элемента невыполненной работы по продукту теперь содержит новое поле.
Пример: Добавление предопределенного поля на форму для задачи
Для рабочего элемента задачи Питер добавляет поле Control для отображения над полем "Оставшаяся работа", как показано в следующем образце кода:
<Column PercentWidth="50"> <Group Label="Details"> <Column PercentWidth="100"> <Control FieldName="Microsoft.VSTS.Scheduling.CompletedWork" Type="FieldControl" Label="Completed Work:" LabelPosition="Left" /> <Control FieldName="Microsoft.VSTS.Scheduling.RemainingWork" Type="FieldControl" Label="Remaining Work:" LabelPosition="Left" /> <Control FieldName="Microsoft.VSTS.Common.BacklogPriority" Type="FieldControl" Label="Backlog Priority:" LabelPosition="Left" /> <Control FieldName="Microsoft.VSTS.Common.Activity" Type="FieldControl" Label="Activity:" LabelPosition="Left" /> <Control FieldName="System.AreaPath" Type="WorkItemClassificationControl" Label="Area:" LabelPosition="Left" /> </Column> </Group> </Column>
Следующая иллюстрация показывает, что форма рабочего элемента для задачи теперь содержит поле "Завершенная работа".
Сохраните изменения в XML-файле.
Дополнительные сведения о добавлении полей в определения типа рабочего элемента
Добавление и изменение полей рабочих элементов для поддержки отчетов
Указатель определений XML-элементов для типов рабочих элементов
3.Изменение макета формы для групп закладок из двухколоночного в одноколоночный
Джулия хочет изменить макет формы для элемента невыполненной работы по продукту так, чтобы поле "Описание" занимало всю ширину формы.Как показано на следующей иллюстрации, макет по умолчанию отображает два набора групп вкладок.Для изменения макета в один набор групп закладок необходимо изменить ширину первого элемента столбца на 100 процентов и удалить лишние элементы Column и TabGroup из раздела FORM.
Для изменения макета формы из двухколоночных групп закладок в одноколоночные группы
Найдите раздел TabGroup XML-файла.Обратите внимание, что существуют элементы Tab для таких элементов, как Описание, Задачи, Критерии принятия и Журнал, в котором каждый элемент Tab содержит элемент Control, который отображает соответствующий элемент управления.
<Group> <Column PercentWidth="50"> <TabGroup> . . . </TabGroup> </Column> <Column PercentWidth="50"> <TabGroup> . . . </TabGroup> </Column> </Group>
Консолидируйте все элементы <Tab> . . . </Tab> в одном TabGroup.Удалите Group, Column и лишние элементы TabGroup.В следующем примере кода показана новая синтаксическая структура XML.
<Group> <Column PercentWidth="100"> <TabGroup> . . . </TabGroup> </Column> </Group>
Примечание Для получения наилучших результатов, каждый элемент управления или группа должны отображаться в столбце, даже если столбец занимает всю ширину формы.Каждый столбец, в свою очередь, должен отображаться в группе, даже если группа не имеет отображаемой метки или границы.Дополнительные сведения см. в разделе Проектирование и настройка формы рабочего элемента.
На следующей иллюстрации показаны одноколоночные группы закладок.
Сохраните изменения в XML-файле.
4.Импорт файла определения типа рабочего элемента
После настройки определения типа необходимо импортировать его в командный проект для проверки изменений и сделать его доступным для использования.Импортируемый XML-файл перезапишет содержимое текущего определения типа.Процесс импорта проверяет синтаксис XML до передачи.
Импортирование типа рабочего элемента в существующий командный проект
Из окна командной строки и каталога, заданного на шаге 1, 1. Экспорт определения типа рабочего элемента , описанном ранее в этом разделе, введите следующую команду, а затем нажмите клавишу ВВОД.
witadmin importwitd /collection:CollectionURL /p:ProjectName /n:WorkItemTypeName /f:FileName
Пример: Импорт определения для элемента невыполненной работы по продукту
Например, Джулия использует следующую команду для импорта определения типа для элемента невыполненной работы, которое она экспортировала в файл FF_ProductBItem.xml, в командный проект FabrikamFiber.
witadmin importwitd /collection:http://julia-fabrikam:8080/tfs/Collection1 /p:"FabrikamFiber" /f:FF_ProductBItem.xml
Пример: Импорт определения задачи
А Питер использует следующую команду для импорта определения типа для задачи, которое он сохранил в FF_Task.xml.
witadmin importwitd /collection:http://julia-fabrikam:8080/tfs/Collection1 /p:"FabrikamFiber" /f:FF_Task.xml
После успешного завершения операции появится сообщение:
Тип рабочего элемента импортирован.
5.Обновление командного проекта и проверка изменений, внесенных в определение типа
После импорта определения типа необходимо обновить свой кэш в Team Explorer для того, чтобы изменения стали доступны.Кэш необходимо обновлять только в том случае, если была открыта Visual Studio и было подключение к Team Foundation Server во время импорта определения типа.
Обновление Team Explorer и создание элемента невыполненной работы по продукту
Чтобы обновить свой кэш
В Team Explorer выберите кнопку Обновить.
С сервера будут загружены последние обновления, включая только что импортированные изменения.
Подождите несколько секунд, пока завершится обновление.
Выберите Рабочие элементы.
Выберите Создать рабочий элемент, а затем выберите тип рабочего элемента, который был изменен, например, Элемент невыполненной работы продукта или Задача.
Убедитесь, что изменения отображаются в форме рабочего элемента.
Нажмите кнопку Закрыть, чтобы закрыть новый рабочий элемент.При выводе запроса на сохранение рабочего элемента нажмите кнопку Нет.