Personalizar o mapeamento de campo entre o Project Server e o Team Foundation Server
Para sincronizar dados entre um plano da empresa e um projeto de equipe, você deve associar os campos de apenas item em Visual Studio Team Foundation Server 2012 com os campos no Microsoft Project Server.Você pode adicionar campos e especificar como se personalizando sincronizam os mapeamentos do campo.Você pode mapear campos internos ou personalizados em O.Por exemplo, você pode compartilhar dados que não se relacionam a agendas (como centros de custo, nomes de equipe, ou status de integridade) se você adicionar os campos que armazenam esses tipos de dados para os mapeamentos.
Você mantém um conjunto de mapeamentos de campo para cada coleção de projeto de equipe que hospeda os projetos de equipe que você deseja sincronizar com Project Server.Você deve definir os mapeamentos de campo para cada coleção de projeto de equipe que você mapeou a uma instância de acesso de O Web ou projetos (PWA) o aplicativo da Web.Você pode carregar os mapeamentos padrão, ou você pode personalizar um arquivo de mapeamento e carregá-lo.Para carregar os mapeamentos padrão, consulte Mapeamentos de carregamento posteriormente neste tópico.
Cuidado |
---|
Os mapeamentos para a integração de Team Foundation Server (TFS) e de Project Server são diferentes de arquivos de mapeamento para Microsoft Project.Para obter mais informações, consulte O arquivo de mapeamento de campo do Microsoft Project. |
Como mostra a ilustração a seguir, você personaliza os mapeamentos das cinco etapas:
Personalizando os mapeamentos do campo entre o Team Foundation Server e o Project Server
Importante |
---|
Você pode atualizar o arquivo de mapeamento tão frequentemente como você deseja.Os campos que aparecem na guia de Project Server são atualizados para cada tipo de item de trabalho que participa na sincronização de dados.Você não deve alterar manualmente as definições para o guia de Project Server .Para obter mais informações, consulte Personalizar a guia do Project Server posteriormente neste tópico. |
Neste tópico
Usar como mapeamentos padrão
Determine campos adicionais mapear
Mapeamentos baixar um Arquivo
Atualizar mapeamentos
Carregar mapeamentos
Personalizar a guia do Project Server(opcional)
Observação |
---|
Para uma demonstração de exibição, consulte a seguinte página no site da Microsoft: Gerenciando mapeamentos de campo para a integração do Team Foundation Server e do Project Server. |
Permissões Necessárias
Para concluir os procedimentos neste tópico, você deve ter o conjunto de permissões de Administrar a integração com o Project Server a Permitir.Além disso, a conta de serviço para Team Foundation Server deve ser concedido Administrar a integração com o Project Server.Para obter mais informações, consulte Atribuir permissões para oferecer suporte à integração do Project Server e do Team Foundation Server.
Usar como mapeamentos padrão
Os mapeamentos determinam quais campos são sincronizados quando um usuário atualizar informações em Team Foundation ou no Project Server.Cada um dos seguintes tipos de sincronização tem seu próprio conjunto de mapeamentos:
Para publicar a sincronização, os dados no Project Server atualizam os dados em Team Foundation.Você usa o elemento de targetToTfs para especificar o campo no Project Server que atualiza o campo em Team Foundation.
Para sincronização de status, os dados em Team Foundation são enviados a fila de status no Project Server.Você usa o elemento de tfsToTarget para especificar o campo que atualiza o campo da fila de status no Project Server.
Para obter mais informações sobre esses dois tipos de sincronização, consulte Visão geral do processo de sincronização para o Team Foundation Server e a integração do servidor.
A tabela a seguir lista o conjunto padrão de campos que são mapeados entre Team Foundation e Project Server.A tabela também indica que tipos de itens de trabalho usando os campos baseados nos modelos padrão do processo que TFS fornece.Você não deve alterar esses mapeamentos se você está mapeando a um projeto de equipe criado de um modelo de processo que é baseado na melhoria do processo de (CMMI) de programação de software agile ou de integração modelo de maturidade de recurso.Se você está mapeando a um projeto de equipe criado do modelo de processo do scrum, você precisará fazer algumas alterações conforme o Alterações necessárias para fazer quando um mapeamento da equipe O que foi criado do modelo de processo do scrum descreve posteriormente neste tópico.
Para obter mais informações sobre mapeamentos e do processo de sincronização, consulte Referência de elemento XML de mapeamento de campo para a integração do Team Foundation Server e do servidor.
Team Foundation campo |
Campo do Project Server |
Campo da fila de status |
Tipos de itens de trabalho em agile |
Tipos de itens de trabalho em CMMI |
Tipos de itens de trabalho no scrum |
---|---|---|---|---|---|
Nome |
Nome da tarefa |
Nome |
Todos |
Todos |
Todos |
Atribuído A |
Recursos |
Recursos |
Todos |
Todos |
Todos |
Trabalho concluído |
Trabalho real da tarefa |
Trabalho real de recurso |
Tarefa |
Tarefa |
Nenhum |
Restante trabalho |
Restante da tarefa trabalho |
Restante do recurso trabalho |
Tarefa |
Tarefa |
Tarefa |
Avaliação original |
Linha de base de trabalho |
|
Tarefa |
Erros, solicitação de alteração, problema, requisito, risco, e tarefa |
Nenhum |
Data de início |
Iniciar tarefa |
Recurso Início |
Tarefa e artigo de usuário |
Tarefa e requisito |
Nenhum |
Data de término |
Suporte de tarefas |
Suporte de recurso |
Tarefa e artigo de usuário |
Tarefa e requisito |
Nenhum |
De volta ao topo
Alterações necessárias para fazer quando um mapeamento da equipe O que foi criado do modelo de processo do scrum
Há duas alterações que você deve fazer para ativar o fluxo de dados de um projeto de equipe criado de um scrum 2,0 ou um modelo de processo do scrum 1,0.Você deve adicionar o trabalho concluído e os valores originais de classificação para o tipo de item de trabalho de tarefas, e você deve remover elementos que exigem o campo restante de trabalho ser vazia quando um membro da equipe altera o estado a Concluído ou a Removido.
Para atualizar a definição de tipo de tarefa de scrum
Abra uma janela de prompt de comando onde o Visual Studio ou o team Explorer são instalados e insira:
cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE
Em uma edição de 64 bits do Windows, substitua %programfiles% com %programfiles(x86)%.
Para exportar o definição de tipo para a tarefa, digite o seguinte comando, substituindo os dados para os argumentos que são mostradas aqui, onde CollectionURL especifica a URL de uma coleção de projeto de equipe, ProjectName especifica o nome de um projeto de equipe definido dentro da coleção, e “DirectoryPath\FileName.xml” especifica o nome e local para o arquivo a ser exportado.Escolha Enter.
witadmin exportwitd /collection: /p:"ProjectName" /n:"Task" /f:"DirectoryPath\FileName.xml"
Em um editor de texto ou no Visual Studio, abra o arquivo que você exportou.
Dentro da seção de definição de FIELDS , adicione esse trecho de código antes do elemento para trabalho restante:
<FIELD name="Completed Work" refname="Microsoft.VSTS.Scheduling.CompletedWork" type="Double" reportable="measure" formula="sum"> <HELPTEXT>The number of units of work that have been spent on this task</HELPTEXT> </FIELD> <FIELD name="Original Estimate" refname="Microsoft.VSTS.Scheduling.OriginalEstimate" type="Double" reportable="measure" formula="sum"> <HELPTEXT>Initial value for Remaining Work - set once, when work begins. </HELPTEXT> </FIELD>
Dentro da seção de <WORKFLOW> , remova o seguinte trecho de código de <STATE value="Done"> e as definições de <STATE value="Removed"> :
<FIELD refname="Microsoft.VSTS.Scheduling.RemainingWork"> <EMPTY /> </FIELD>
Dentro da seção de <FORM> , adicione os seguintes elementos de Control :
<Control FieldName="Microsoft.VSTS.Scheduling.OriginalEstimate" Type="FieldControl" Label="Original Estimate:" LabelPosition="Left" /> <Control FieldName="Microsoft.VSTS.Scheduling.CompletedWork" Type="FieldControl" Label="Completed:" LabelPosition="Left" />
Salve e feche o arquivo.
Importar o arquivo, substituindo os dados para os argumentos que são mostrados.
witadmin importwitd /collection: /p:"ProjectName" /f:"DirectoryPath\FileName.xml"
Atualizar sua página de itens de trabalho ou do projeto de equipe verificar as alterações.
Para obter mais informações, consulte Exportar e importar os tipos de Item de trabalho de um projeto existente, Definir campos de item de trabalho, e Criar e personalizar um formulário de item de trabalho.
De volta ao topo
Determine campos adicionais mapear
Determine as seguintes informações para cada campo que você deseja sincronizar além dos campos padrão:
O nome da referência do campo em Team Foundation.Se você deseja sincronizar um campo em Project Server com um campo que você deve criar Team Foundationem, crie o primeiro campo em cada tipo de item de trabalho que você está sincronizando.Para obter mais informações, consulte Referência de campos de item de trabalho para o Visual Studio ALM e Definir campos de item de trabalho.
O nome do campo no Project Server que atualizará o campo em Team Foundation.Para obter uma lista de campos disponíveis, consulte Restrições em mapear campos de Project Server para a integração com o Team Foundation Server.
O nome do campo na ser atualizado no Server e o nome do campo no Project Server que atualizará o campo de espelho em Team Foundation Server serão atualizadas.
Exibir os campos no item de trabalho de.Você define o valor do atributo de displayTfsField a true para os campos que você deseja que apareça no formulário de apenas item.Você define o valor do atributo de displayTfsMirror a true para o formulário de apenas item.
Se resolver conflitos de dados permitindo que o valor do campo em Team Foundation substitua o valor do campo no Project Server ou mantém os dois valores.Essa decisão determina o valor do atributo de onConflict .Quando onConflict=”PsWins” é definido, o valor do campo no Project Server substitui valor do campo em Team Foundation.Para obter mais informações, consulte Field Elements and Attributes.
Valores adicionais que você deve definir para suportar listas de opções ou tabelas de pesquisa personalizados no Project Server.
De volta ao topo
Limitações dos dados que você pode mapear
Após determinar que campos você deseja mapear, observe as seguintes restrições:
Você pode enviar somente informações de nível de tarefa, campos pjTask*, do Project Server ao Team Foundation Server.
Você pode enviar somente informações de recurso nível, campos de pjResource*, de Team Foundation Server a fila de status Project Server.
O campo título é o único campo que você pode enviar a Team Foundation Server e a fila de status.
O Rollup é calculado automaticamente para o atribuído a, o trabalho concluído, e os campos restantes de trabalho.Você não pode mapear campos adicionais e ter o rollup calculado para eles.Para obter mais informações, consulte Trabalhar com Rollup de recursos em projetos da empresa mapeados para os projetos de equipe.
Você deve certificar-se que os tipos de dados ou as unidades de cada campo que você mapeia atendem aos critérios de mapeamento de campo para campos padrão e personalizados de empresa.Para obter mais informações, consulte “tipos de dados e critérios de mapeamento de campo” em Restrições em mapear campos de Project Server para a integração com o Team Foundation Server.
Você pode mapear os campos associados com as listas de opções em Team Foundation.No entanto, você deve criar tabelas de pesquisa em Project Server para corresponder as listas de opções.Você não pode automaticamente sincronizar listas de opções e tabelas de pesquisa.
Para obter mais informações, consulte Restrições em mapear campos de Project Server para a integração com o Team Foundation Server.
De volta ao topo
Exemplo: Mapeando o nome de equipe para aparecer em O
No exemplo, o campo de cadeia de caracteres personalizado em Team Foundation, MyCompany.MyOrg.DevTeamName, é mapeado para um campo de texto personalizado da empresa em Project Server, Meu nome de equipe empresarial.Você pode usar este exemplo para exibir no windows service Pack o nome de equipe que está associado com uma tarefa.
<field tfsName="MyCompany.MyOrg.DevTeamName" tfsMirrorName="Mirror.MyCompany.MyOrg.DevTeamName" displayTfsField="false" displayTfsMirror="false" onConflict="DoNothing">
<tfsToTarget>
<target provider="ProjectServerStatusQueue" name=" My Company Team Name" />
</tfsToTarget>
<targetToTfs>
<target provider="ProjectServerPublished" name=" My Company Team Name" />
</targetToTfs>
</field>
Coloque quaisquer aparecem no formulário de item de trabalho.Além disso, se os valores não coincidirem, cada campo mantém seu próprio valor.
De volta ao topo
Exemplo: Exibindo os caminhos da área de iteração em O e
Você pode mapear os campos de Área (System.AreaPath) e de Iteração System.IterationPath () em Team Foundation de modo que eles apareçam nos planos de projeto.Porque esses campos do caminho da árvore são alteradas frequentemente, você deve mapear de texto como campos em O.Gerentes de projeto que usam esses campos devem manualmente para o caminho completo de área ou caminho de iteração.
Importante |
---|
A implementação atual de Team Foundation Server e de integração de Project Server não oferece suporte a sincronização automática de lista de valores permitidas, listas de opções, listas globais, ou listas de caminho da árvore que são definidas para os campos mapeadas entre os dois produtos de servidor.Para melhor experiência, você deve fazer as entradas manuais no plano de projeto que coincidem com aqueles em Team Foundation.Se você especificar uma entrada que não é válida, uma caixa de diálogo de validação aparecerá quando você publica o plano. |
Para adicionar os campos e da área de iteração para um plano de projeto, execute as seguintes ações:
Adicione dois campos da empresa de cliente a Project Server, e rotular-los como Área) (TFS e Iteração) (TFS.
Para obter mais informações, consulte a seguinte página no site da Microsoft: Criar tabelas de pesquisa e campos personalizada da empresa.
Exporte os mapeamentos do campo da coleção de projeto de equipe onde os projetos de equipe são definidos.
Para obter mais informações, consulte Mapeamentos baixar um Arquivo posteriormente neste tópico.
Adicione o seguinte código ao arquivo:
<field tfsName="System.AreaPath" tfsMirrorName="Mirror.System.AreaPath" displayTfsField="true" displayTfsMirror="true"> <tfsToTarget> <target provider="ProjectServerStatusQueue" name="Area (TFS)" /> </tfsToTarget> <targetToTfs> <target provider="ProjectServerPublished" name="Area (TFS)" /> </targetToTfs> </field> <field tfsName="System.IterationPath" tfsMirrorName="Mirror.System.IterationPath" displayTfsField="true" displayTfsMirror="true"> <tfsToTarget> <target provider="ProjectServerStatusQueue" name="Iteration (TFS)" /> </tfsToTarget> <targetToTfs> <target provider="ProjectServerPublished" name="Iteration (TFS)" /> </targetToTfs> </field>
Importar o campo que atualizado os mapeamentos arquivo descreve como Carregar mapeamentos posteriormente neste tópico.
Sincronizar seu plano de projeto com o Project Server.
Adicione as duas novas colunas para os novos campos, área (TFS) e (TFS), iteração para o plano de projeto
As alterações feitas aos campos de Área e de Iteração em Team Foundation serão sincronizadas com esses campos no plano de projeto.Além disso, você pode atualizar estes campos em O e publicar suas alterações a Team Foundation se você especificar os valores que foram definidos em Team Foundation.
De volta ao topo
Baixe os mapeamentos um Arquivo
Observação |
---|
Você pode baixar mapeamentos apenas uma coleção de projeto de equipe que foram carregados.Se você deseja baixar os mapeamentos padrão do arquivo, você deve primeiro carregar os mapeamentos padrão, conforme descrito em Para carregar os mapeamentos padrão posteriormente neste tópico.Como alternativa, você pode copiar o conteúdo dos mapeamentos padrão.Para obter mais informações, consulte Default Field Mappings. |
Para baixar os mapeamentos para um arquivo
Para executar a ferramenta de linha de comando TfsAdmin , abra uma janela de prompt de comando onde Visual Studio ou Team Explorer sejam instalados e insira:
cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE
Em uma edição de 64 bits do Windows, substitua %programfiles% com %programfiles(x86)%.
Digite o seguinte comando, e pressione ENTER.
TfsAdmin ProjectServer /DownloadFieldMappings /collection:tpcUrl /filePath:MappingFile
Substitua tpcUrl com o localizador de recursos uniforme (URL) a coleção de projeto de equipe, e substitua MappingFile com o caminho e o nome do arquivo que você irá personalizar.
Espere até que as seguintes mensagens apareçam:
BaixandoMappingFilepara Coleção do Projeto de EquipetpcUrl.
Você baixou com êxito o arquivo de mapeamento de campoMappingFilepara a Coleção de Projeto de EquipetpcUrl.
De volta ao topo
Atualizar os mapeamentos
Para cada campo que você deseja adicionar ao arquivo de mapeamento, você especifica o elemento de field e seus subelements e atributos.Para obter mais informações, consulte Referência de elemento XML de mapeamento de campo para a integração do Team Foundation Server e do servidor.
De volta ao topo
Carregar os mapeamentos
Você carrega mapeamentos usando o comando de UploadFieldMappings .Você pode carregar os mapeamentos padrão usando a opção de /usedefaultfieldmapping .Caso contrário, você deve especificar um arquivo que contém os elementos de mapeamento.
Para carregar os mapeamentos padrão
No prompt de comando, digite o seguinte comando, e pressione ENTER.
TfsAdmin ProjectServer /UploadFieldMappings /collection:tpcUrl /usedefaultfieldmappings
Substitua tpcUrl com o URL a coleção de projeto de equipe.
Espere até que as seguintes mensagens apareçam:
Carregando mapeamentos padrão do campo paraCollectionUri.
Você carregou com êxito mapeamentos do campo à coleçãoCollectionUri.
Para carregar os mapeamentos de um arquivo
No prompt de comando, digite o seguinte comando, e pressione ENTER.
TfsAdmin ProjectServer /UploadFieldMappings /collection:tpcUrl /filePath:MappingFile /force
Substitua tpcUrl com o URL a coleção de projeto de equipe, e substitua MappingFile com o caminho e o nome do arquivo de mapeamento personalizados.Especificar /force se você estiver atualizando os mapeamentos existentes.
Espere até que as seguintes mensagens apareçam:
CarregandoMappingFilepara Coleção de Projeto de EquipetpcUrl.
Você carregou com êxito o arquivo de mapeamento de campoMappingFilepara a Coleção de Projeto de EquipetpcUrl.
De volta ao topo
Personalizar a guia do Project Server
Quando você associa um plano de projeto da empresa com um projeto de equipe, o guia do Project Server está adicionado ao formulário de item de trabalho, como mostra a ilustração a seguir.A guia é adicionado apenas 2 os tipos de itens de trabalho que você especifica para participar na sincronização de dados.Você personaliza este guia definindo os atributos de displayTfsField ou de displayTfsMirror a true para aqueles campos que você deseja que apareça no formulário.
Guia do Project Server
Importante |
---|
Os mapeamentos do campo que são definidos para a coleção de projeto de equipe determinar os campos que aparecem na guia de Project Server .Após esse guia foi adicionado a um tipo de item de trabalho para um projeto de equipe, você pode atualizá-lo alterando os mapeamentos de campo para a coleção.Se você personaliza manualmente o formulário de item de trabalho adicionando campos para a guia de Project Server ou alterando seu lugar no formulário, o guia não pode obter atualizado automaticamente com as alterações futuras que você faz a mapeamentos do campo.Se esta condição ocorre, você pode alterar a guia manualmente.Para obter mais informações, consulte Elementos XML adicionados à definição para o tipo de item de trabalho. |
Para obter mais informações sobre cada campo padrão que aparece na guia de Project Server , consulte Campos de adicionados Project Server à sincronização de dados de suporte.
De volta ao topo
Consulte também
Tarefas
Configurar a integração do Team Foundation Server e do Project Server
Conceitos
Especificar os tipos de item de trabalho que podem ser sincronizado
Administrar a integração do Team Foundation Server e do Project Server