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


Настройка файла сопоставления полей Microsoft Project

Вы можете настраивать сопоставление полей рабочего элемента, заданных в Team Foundation, с полями в Microsoft Project, а также изменять порядок публикации отдельных полей. Microsoft Project включает предопределенные поля, такие как Task Name (имя задачи), и настраиваемые поля. Когда вы публикуете или обновляете данные рабочего элемента в Microsoft Project, сопоставление полей определяет, какие поля в базе данных рабочих элементов соответствуют полям в Microsoft Project.

Сведения об использовании Project и TFS для отслеживания работы см. в статье Создание невыполненной работы и задач с помощью Project.

Чтобы изменить сопоставление полей для командного проекта, выполняется экспорт и последующий импорт файла сопоставления Microsoft Project с помощью программы командной строки TFSFieldMapping.

Mapping, элемент

Для определения сопоставления между полем рабочего элемента и столбцом проекта используется элемент Mapping.

Чтобы указать сопоставление между полем типа рабочего элемента и полем Microsoft Project, используйте следующий синтаксис XML. Затем для указания сопоставления полей используется элемент Mapping.

<Mapping WorkItemTrackingFieldReferenceName="" 
         ProjectField=""
         ProjectName=""
         ProjectUnits=""
         PublishOnly="">
         IfSummaryRefreshOnly=""/>

Атрибуты

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

Атрибут

Описание

WorkItemTrackingFieldReferenceName

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

ProjectField

Обязательный. Задает имя поля в Microsoft Project. Указывайте имена предопределенных полей, добавляя к имени префикс "pj", например, pjTaskName для столбца Task Name (имя задачи). Указывайте настраиваемые поля в виде имени, за которым следует число, например pjTaskText11.

Имя_проекта

Необязательно. Задает имя, которое должно отображаться как имя столбца в Microsoft Project. Если этот атрибут не задан, используется имя поля типа рабочего элемента.

ProjectUnits

Необязательно. Задает тип единиц, используемых при сопоставлении типа поля с Microsoft Project. Можно указать следующие значения: pjMinute, pjHour, pjDay, pjWeek и pjMonthUnit.

Примечание

Вы можете задавать атрибут ProjectUnits только для полей, которые указывают период времени или другие единицы измерения времени.

PublishOnly

Необязательно. Значение true указывает, что поле публикуется в базе данных рабочих элементов, но не обновляется. Это значение обычно используется для вычисляемых полей, которые не должны обновляться в Team Explorer. Значение false указывает, что поле публикуется и обновляется. Значение по умолчанию — false.

В файле сопоставления по умолчанию имеется два поля с атрибутом PublishOnly, установленным в значение true, — Дата начала и Дата окончания.

IfSummaryRefreshOnly

Необязательно. Значение true указывает, что поле не публикуется в базе данных рабочих элементов, но обновляется из базы данных рабочих элементов, если выполняются следующие условия:

  • строка для поля представляет собой суммарную задачу в Office Project;

  • суммарная задача имеет атрибуты публикации (Publish) и обновления (Refresh), установленные в значение Yes;

  • суммарная задача содержит по крайней мере одну дочернюю задачу, привязанную к Team Foundation Server.

Любые обновления или вычисления, выполняемые Microsoft Project, могут переопределить значение, которое обновляется из базы данных рабочих элементов в плане проекта. Однако измененное значение никогда не сохраняется в базе данных рабочих элементов. Этот атрибут обычно используется для полей сводки, которые при публикации в базе данных рабочих элементов приводят к несогласованности данных.

Значение false указывает, что поле может как публиковаться, так и обновляться. Если значение не задано, используется значение по умолчанию, false.

Примечание

Значение, присвоенное атрибуту IfSummaryRefreshOnly, заменяет значение, присвоенное атрибуту PublishOnly.Дополнительные сведения см. в разделе Поля, влияющие на публикацию и обновление далее в этой статье.

В файле сопоставления по умолчанию атрибут IfSummaryRefreshOnly имеет значение true для полей Исходная оценка, Оставшиеся трудозатраты и Завершенная работа.

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

<Mapping WorkItemTrackingFieldReferenceName="System.Title" 
         ProjectField="pjTaskName"/>

Следующий синтаксис XML представляет более сложный пример того, как сопоставить поле типа рабочего элемента, имеющее дату начала, с полем даты начала Microsoft Project. Поскольку данное поле является вычисляемым, оно задается для публикации, но не обновления, чтобы избежать ошибок, вызванных обновлениями Team Explorer.

<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.StartDate" ProjectField="pjTaskStart" PublishOnly="true"/>

Примечание

Рекомендуется сопоставлять вычисляемые поля в Microsoft Project с полями только для чтения в Team Foundation.Это позволяет избежать путаницы, чтобы члены команды не пытались изменять вычисляемые поля.

Элемент ReservedField

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

Если этот элемент не указан в сопоставлении, то Microsoft Project использует поле по умолчанию pjNumber20.

Элемент SyncField

Поле синхронизации позволяет управлять поведением публикации и обновления для каждой задачи. Это поле отображается в виде столбца с заголовком Публикация и обновление при использовании представления Лист задач Team System.

Вы должны указать поле синхронизации в файле сопоставления полей Microsoft Project. Чтобы указать, какое поле является полем синхронизации, используйте следующий синтаксис XML. Для указания поля синхронизации используйте элемент SyncField. Для атрибута ProjectField должно быть установлено допустимое поле Office Project.

<SyncField ProjectField="" />

В следующем примере показано, как задать pjTaskText25 в качестве поля синхронизации:

<SyncField ProjectField="pjTaskText25" />

Дополнительные сведения об использовании поля синхронизации в Office Project см. в статье Публикация или обновление рабочих элементов в Project [перенаправление].

Элемент ResourceNameSeparator

С помощью элемента ResourceNameSeparator вы можете задавать символ, разделяющий имена ресурсов в строке. Пользователи и ресурсы Team Foundation синхронизируются с пользователями службы каталогов Active Directory. Имена пользователей и ресурсов могут включать разделители, например, запятую для отделения фамилии, имени и отчества ресурса.

Это необязательный элемент. Если этот элемент не указан в сопоставлении, то Microsoft Project разделяет имена ресурсов с помощью сопоставлений по умолчанию, которые определены в следующей таблице.

Если в Active Directory и командном проекте используется разделитель списка

То в Office Project замените на

,

;

;

:

.

:

Если вы хотите указать другой символ, не перечисленный в приведенной выше таблице, то можно определить ResourceNameSeparator, используя следующий синтаксис:

<ResourceNameSeparator WorkItemTrackingCharacter="" ProjectCharacter=""/>

В следующем примере показано, как задать символ "*" в качестве разделителя, который должен использоваться в Office Project, когда в Team Foundation используется символ "-":

<ResourceNameSeparator WorkItemTrackingCharacter="-" ProjectCharacter="*"/>

Иерархический тип связи

При создании суммарных задач в Microsoft Project создается древовидная связь между родительской суммарной задачей и подчиненными или дочерними задачами. Для создания таких связей в Office Project по умолчанию используется System.LinkTypes.Hierarchy.

Тип связи зависимости

При создании связи между задачами в Microsoft Project вы создаете зависимые связи между задачами. Родительской задаче назначается связь предшественника, а последующей задаче назначается связь последователя. Это обозначения по умолчанию, определенные для типа связи System.LinkTypes.Dependency.

Сопоставление атрибутов, влияющих на публикацию и обновление

Следующие поля сопоставления и значения полей Microsoft Project определяют, должно ли значение для рабочего элемента публиковаться или обновляться.

  • Значение Публикация и обновление для каждого рабочего элемента.

  • Значение атрибута PublishOnly для конкретного поля сопоставления.

  • Значение атрибута IfSummaryRefreshOnly для конкретного поля сопоставления.

  • Классификация задачи как суммарной или родительской задачи.

    Родительская задача — это задача, которая имеет по крайней мере одну дочернюю задачу, публикуемую в Team Foundation Server.

Для рабочих элементов, которые не являются суммарными задачами

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

Публикация и обновление

(уровень задачи)

Атрибут PublishOnly

Поле публикуется?

Поле обновляется?

Нет

True или False

Нет

Нет

Только обновление

True или False

Нет

Да

Да

True

Да

Нет

Да

False

Да

Да

Для рабочих элементов, которые являются суммарными задачами

Если условия суммарной задачи выполняются, и атрибут IfSummaryRefreshOnly имеет значение true, то его значение заменяет значение PublishOnly. В следующей таблице указывается, будет ли публиковаться или обновляться суммарная или родительская задача, в зависимости от установленного значения Публикация и обновление и атрибутов поля сопоставления.

Публикация и обновление

(уровень задачи)

Атрибут PublishOnly

IfSummaryRefreshOnly

Атрибут

Поле публикуется?

Поле обновляется?

Нет

True или False

True или False

Нет

Нет

Только обновление

True

True

Нет

Да

Только обновление

True

False

Нет

Да

Только обновление

False

True или False

Нет

Да

Да

True или False

True

Нет

Да

Да

True

False

Да

Нет

Да

False

False

Да

Да

См. также

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

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

Добавление и изменение сопоставлений полей Project с полями TFS