Сопоставление полей Microsoft Project полям Team Foundation
Вы можете настраивать способ сопоставления полей рабочих элементов, хранящихся в Team Foundation, с полями, которые определены для Microsoft Project. Можно изменять способ публикации отдельных полей и назначить тип связи по умолчанию для использования при создании иерархических или древовидных связей и связей зависимостей.
В отличие от Microsoft Excel, Microsoft Project использует ограниченный набор столбцов, включающий предопределенные столбцы, такие как Task Name (имя задачи), и настраиваемые поля. Когда пользователь публикует или обновляет данные рабочего элемента в файле Microsoft Project, сопоставление полей определяет, какие поля в базе данных рабочих элементов соответствуют столбцам в Microsoft Project.
Вы можете настраивать сопоставления, например, для поддержки созданного поля или для сопоставления полей с предварительно определенными столбцами вместо настраиваемых столбцов. Полную документацию по файлу сопоставления полей для Microsoft Project см. в статье Добавление и изменение сопоставлений полей Project с полями TFS.
Настройка сопоставления выполняется путем изменения файла FileMapping.xml. В следующей таблице приведены имена файлов, папок и подключаемого модуля для шаблонов процессов Microsoft Solutions Framework (MSF). Подключаемый модуль содержит определение задачи, которая отправляет файл в коллекцию командных проектов.
Имя файла: |
FileMapping.xml |
Имя папки: |
Классификация |
Имя подключаемого модуля: |
Microsoft.ProjectCreationWizard.Classification Для получения дополнительной информации см. Определение начальных областей и итераций в подключаемом модуле классификации. |
Указание способа сопоставления полей
Сопоставляемые поля задаются с помощью элемента Mapping и следующей синтаксической структуры:
<Mappings>
<Mapping WorkItemTrackingFieldReferenceName="System.Id"
ProjectField=""
ProjectName=""
ProjectUnits=""
PublishOnly=""
IfSummaryRefreshOnly=""/>
</Mappings>
В следующей таблице описываются атрибуты элемента Mapping.
Атрибут |
Описание |
---|---|
WorkItemTrackingFieldReferenceName |
Обязательный. Задает имя ссылки поля в типе рабочего элемента. |
ProjectField |
Обязательный. Задает имя столбца в Microsoft Project. Указывайте имена предопределенных столбцов, добавляя к имени префикс "pj", например, pjTaskName для столбца Task Name (имя задачи). Указывайте настраиваемые поля в виде имени, за которым следует число, например pjTaskText11. |
ProjectName |
Необязательно. Задает имя, которое будет отображаться пользователю как имя столбца. Если этот атрибут не указан, используется имя поля в типе рабочего элемента. |
ProjectUnits |
Необязательно. Задает тип единиц, используемых при сопоставлении типа поля с Microsoft Project. Допустимые значения: pjMinute, pjHour, pjDay, pjWeek и pjMonthUnit. |
PublishOnly |
Необязательно. Значение true указывает, что поле публикуется в базе данных рабочих элементов, но не обновляется. Это значение обычно используется для вычисляемых полей, которые не должны обновляться в Team Explorer. Значение false указывает, что поле публикуется и обновляется. По умолчанию для атрибута устанавливается значение false. По умолчанию этот атрибут имеет значение true только для полей Дата начала и Дата окончания. |
IfSummaryRefreshOnly |
Необязательно. Значение true указывает, что поле не публикуется в базе данных рабочих элементов, но обновляется из базы данных рабочих элементов, если выполняются следующие условия:
Любые обновления или вычисления, выполняемые Microsoft Project, могут перезаписать значение, которое обновляется из базы данных рабочих элементов в плане проекта. Однако измененное значение никогда не сохраняется в базе данных рабочих элементов. Этот атрибут обычно используется для полей сводки, которые при публикации в базе данных рабочих элементов приводят к несогласованности данных. Значение false указывает, что поле может как публиковаться, так и обновляться. По умолчанию для атрибута устанавливается значение false. Примечание Атрибут IfSummaryRefreshOnly заменяет атрибут PublishOnly.Для получения дополнительной информации см. Настройка файла сопоставления полей Microsoft Project. По умолчанию в файле сопоставления атрибут IfSummaryRefreshOnly имеет значение true для полей Исходная оценка, Оставшиеся трудозатраты и Завершенная работа. |
Указание полей для синхронизации, ссылок и вложений
В дополнение к элементу Mapping два других элемента определяют способ синхронизации полей и поле, которое будет поддерживать ссылки и вложения.
Элемент SyncField указывает, какой столбец используется в качестве поля синхронизации. Поле синхронизации имеет название "Публикация и обновление" и предоставляет пользователю возможность указать, является ли строка задачи публикуемой или только обновляемой.
Чтобы указать, какой столбец сопоставляется с полем синхронизации, используется следующий синтаксис XML. В качестве значения атрибута ProjectField устанавливается допустимый столбец в Microsoft Project.
<SyncField ProjectField="" />
Элемент LinksField задает столбец ссылок и вложений. С помощью столбца ссылок и вложений пользователи могут указывать, имеет ли определенная строка задачи ссылки или вложения.
Чтобы указать, какой столбец сопоставляется с полем ссылок и вложений, используется следующий синтаксис XML. В качестве значения атрибута ProjectField устанавливается допустимый столбец в Microsoft Project.
<LinksField ProjectField="" />
Сопоставления полей по умолчанию
В следующем примере показывается, как MSF для шаблона процесса гибкой разработки программного обеспечения сопоставляет поля рабочих элементов со столбцами в Microsoft Project.
<?xml version="1.0" encoding="utf-8"?>
<MSProject>
<Mappings>
<Mapping WorkItemTrackingFieldReferenceName="System.AreaPath" ProjectField="pjTaskOutlineCode9" />
<Mapping WorkItemTrackingFieldReferenceName="System.AssignedTo" ProjectField="pjTaskResourceNames" />
<Mapping WorkItemTrackingFieldReferenceName="System.Id" ProjectField="pjTaskText10" ProjectName="Work Item ID" />
<Mapping WorkItemTrackingFieldReferenceName="System.IterationPath" ProjectField="pjTaskOutlineCode10" />
<Mapping WorkItemTrackingFieldReferenceName="System.Reason" ProjectField="pjTaskText14" />
<Mapping WorkItemTrackingFieldReferenceName="System.Rev" ProjectField="pjTaskText23" />
<Mapping WorkItemTrackingFieldReferenceName="System.State" ProjectField="pjTaskText13" ProjectName="State" />
<Mapping WorkItemTrackingFieldReferenceName="System.Title" ProjectField="pjTaskName" />
<Mapping WorkItemTrackingFieldReferenceName="System.WorkItemType" ProjectField="pjTaskText24" />
<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Common.Priority" ProjectField="pjTaskText19" ProjectName="Work Item Priority" />
<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Common.StackRank" ProjectField="pjTaskNumber1" />
<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.CompletedWork" ProjectField="pjTaskActualWork" ProjectUnits="pjHour" IfSummaryRefreshOnly="true" />
<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.FinishDate" ProjectField="pjTaskFinish" PublishOnly="true" />
<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.OriginalEstimate" ProjectField="pjTaskBaselineWork" ProjectUnits="pjHour" IfSummaryRefreshOnly="true" />
<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.RemainingWork" ProjectField="pjTaskRemainingWork" ProjectUnits="pjHour" IfSummaryRefreshOnly="true" />
<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.StartDate" ProjectField="pjTaskStart" PublishOnly="true" />
<LinksField ProjectField="pjTaskText26" />
<SyncField ProjectField="pjTaskText25" />
</Mappings>
</MSProject>
См. также
Основные понятия
Определение начальных областей и итераций в подключаемом модуле классификации
Добавление и изменение сопоставлений полей Project с полями TFS