Настройка файла сопоставления полей 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 указывает, что поле не публикуется в базе данных рабочих элементов, но обновляется из базы данных рабочих элементов, если выполняются следующие условия:
Любые обновления или вычисления, выполняемые 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