Work Itemy i MS Project, czyli problem z odświeżaniem dat

header_imgJeśli zdarzyło Ci się kiedykolwiek importować zadania z TFS do Projecta, to ten post może być dla Ciebie. Jeśli kiedykolwiek zastanawiałeś się, dlaczego podczas importu standardowo gubione są ustawienia dat, to ten post z całą pewnością jest dla Ciebie! 🙂

 

Na codzień pracuję z projectem i z niego publikuję zadania do TFS. Ostatnio kolega chciał zassać sobie do nowego pliku Projecta aktualne zadania, żeby mieć możliwość śledzenia, co się kiedy kończy i kiedy powinny być dostępne nowe funkcjonalności do testowania. I co się okazało?
Work Itemy oczywiście może pobrać, pobierze się ich długość(czas trwania), ale wszystkie ustawią mu się na starcie projektu – czyli standardowo na dzień utworzenia pliku. Dlaczego tak się dzieje? A dlatego, że mapowania TFS<->Project są tak skonfigurowane, że StartDate i FinishDate się mogą publikować na linii Project->TFS, ale nie odświeżają się na linii TFS->Project? I już 🙂

Tak wyglądają zadania zaprojektowane w projekcie i wysłane do TFS:

 

project_norm

 

A tak wyglądają zassane do nowego projecta z TFS:

 

project_import

 

Co więcej, jeśli ściągniemy do Projecta Work Itemy, nic nie zmienimy i cykniemy Publish, to zgodnie z poprzednim zdaniem, uda się je zaktualizować na TFS, przy okazji przestawiając wszystkim daty wykonania :)) Cool, prawda?

Ale na szczęście…

… da się coś z tym zrobić. Trzeba zmodyfikować wspomniane domyślne mapowania. Służy do tego narzędzie TFSFieldMapping, instalowane razem z Team Explorerem(znajduje się w katalogu <X>:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE). Składnia jest następująca:

TFSFieldMapping upload|download <server_URL> <team_project> <file_path>

Pobrany niezmodyfikowany plik wygląda następująco:

 

 

Jak widać, pola Microsoft.VSTS.Scheduling.StartDate oraz Microsoft.VSTS.Scheduling.FinishDate mają ustawiony atrybut PublishOnly na “true”, co w efekcie powoduje działanie opisane powyżej. Wystarczy zmienić wartości w obu przypadkach na false, ponownie skorzystać z narzędzia TFSFieldMapping(tym razem używając opcji upload) i… work itemy pobierane z TFS będą poprawnie odświeżały swoje daty! 🙂

No Comments

Post a Comment

Time limit is exhausted. Please reload CAPTCHA.