MSDN Magazine - December 2008 - (Page 51) house cube, only the relational warehouse database. You can use DateTime, Double, Integer, and String fields for detail fields. Finally, you use a measure field, which only supports Double and Integer data, when you want to use a formula (such as sum or count) or do a similar operation on a field. If you choose measure, you’ll want to pick an option from the formula field. It’s important to note that the current documentation incorrectly states that only sum is valid. It’s important to remember that once you apply the Reportable attribute to a field, you cannot change it. However, you can apply the attribute to a field after you’ve already used it. Any revisions to a work item after you’ve made its field Reportable will be in the warehouse (if applicable). However, TFS will not backfill data into the warehouse for changes made prior to setting the field as Reportable. Once you’ve created the field, you’ll want to specify where it should appear on the form. Click the Layout tab in the Work Item Type editor. You can click the Preview Form button to examine the current work item. In the tree view, move down until you see the Tab Page—Details node. Under it you’ll find a Group node and, below that, two Column nodes. Under the first column node, beneath the Group—General node, you’ll find a single Column node. Right-click on it and select New Control. Select the newly added control node and change the FieldName to MSDN.Mag.Beverage using the Property Grid to the right. Change the label to Beverage and then preview the results. If you’re happy, save your work and close any open editors. Using the Process Template Editor, click the Upload button and navigate to the folder that has your modified ProcessTemplate.xml file. Once you’ve uploaded your template, run the New Team Project wizard and create a team project called MSDNMagDemo. (I recommend you test this using a Virtual PC image, as discussed in the “Essential Power Tools” installment of Team System mentioned earlier.) Once you’ve created your team project, add a new Bug work item and switch to the Details tab. You should see your new field. Close the new Bug without saving it. Figure 11 The Completed Bug Work Item with the New Beverage Field Editing Customized Templates Imagine you’d like to change this newly created field to have a specific list of allowed beverages. In addition, you want to be able to run reports on the field. Because you’ll want this change to take effect for both the team project you just created as well as any new team projects, you’ll need to do a little extra work. First, reopen the Bug work item template by clicking Process Editor | Work Item Types | Open WIT from File. Navigate to C:\PMT\ MSDN Magazine Agile 1.0\WorkItem Tracking\TypeDefinitions and select the Bug.xml file. Locate the Beverage field, select it, and then select the Open command on the toolbar at the top of the fields list. Change the Reportable field value to dimension. Next, click the Rules tab and then click New on the toolbar. As you can see from the Select a rule type dialog, each field can have a number of rules applied to it. Select ALLOWEDVALUES and click OK. In the ALLOWEDVALUES dialog, click New. In List Item Edit, enter Coffee and click OK. Repeat two more times adding Soda msdnmagazine.com and Juice to the list (feel free to be as creative as you like, or as your project allows). Once you’ve completed the list, click OK to close the ALLOWEDVALUES dialog. Click OK to close the Field Definition dialog and save your changes using the Save command on the Visual Studio File menu. At this point, you’ve changed the file on disk. You need to re-upload the template as before. When you attempt to do so without any additional changes to the ProcessTemplate.xml file, you’ll receive a warning that the template already exists. Click Yes to overwrite the previous copy of the template. This solves the problem for new team projects. However, you need to fix the existing Bug work item template in the MSDNMagDemo team project. Click Process Editor | Work Item Types | Import WIT from File Server. In the Import Work Item Type Definition dialog, click the Browse button and select the Bug.xml file at C:\PMT\MSDN Magazine Agile 1.0\WorkItem Tracking\ TypeDefinitions. Then, in the list of team projects in the Project to import to tree, select the MSDNMagDemo team project and click OK. If the MSDNMagDemo team project doesn’t appear, you’ll need to close and restart Visual Studio. Before you try to add a new Bug, you must refresh the Work Item definition cache by right-clicking on the Work Items folder under the MSDNMagDemo team project node in the Team Explorer window and select Refresh. Figure 11 shows what you should see. I hope you’ve seen that Microsoft put a ton of effort into providing not only a tool but a tool with prescriptive guidance. I recommend you spend time getting to know both of the built-in templates (or even those produced by the community). Just give yourself time to understand the implications that picking a template will have on your team and your overall development progress. Brian a. randell is a Senior Consultant with MCW Technologies LLC. He spends his time speaking, teaching, and writing about Microsoft technologies. Brian is the author of Pluralsight’s Applied Team System course and is a Microsoft MVP. Contact Brian via his blog at mcwtech.com/cs/blogs/brianr. December 2008 51 http://www.mcwtech.com/cs/blogs/brianr http://www.msdnmagazine.com
Table of Contents Feed for the Digital Edition of MSDN Magazine - December 2008 MSDN Magazine - December 2008 Contents Toolbox CLR Inside Out Advanced Basics Cutting Edge Patterns In Practice Team System Real-World WF Visual Studio OBA Tools SOA Data Access Geneva Framework Test Run Foundations Windows With C++ Going Places End Bracket MSDN Magazine - December 2008 MSDN Magazine - December 2008 - (Page Intro) MSDN Magazine - December 2008 - Contents (Page Cover1) MSDN Magazine - December 2008 - Contents (Page Cover2) MSDN Magazine - December 2008 - Contents (Page 1) MSDN Magazine - December 2008 - Contents (Page 2) MSDN Magazine - December 2008 - Contents (Page 3) MSDN Magazine - December 2008 - Contents (Page 4) MSDN Magazine - December 2008 - Contents (Page 5) MSDN Magazine - December 2008 - Contents (Page 6) MSDN Magazine - December 2008 - Contents (Page 7) MSDN Magazine - December 2008 - Contents (Page 8) MSDN Magazine - December 2008 - Contents (Page 9) MSDN Magazine - December 2008 - Contents (Page 10) MSDN Magazine - December 2008 - Toolbox (Page 11) MSDN Magazine - December 2008 - Toolbox (Page 12) MSDN Magazine - December 2008 - Toolbox (Page 13) MSDN Magazine - December 2008 - Toolbox (Page 14) MSDN Magazine - December 2008 - CLR Inside Out (Page 15) MSDN Magazine - December 2008 - CLR Inside Out (Page 16) MSDN Magazine - December 2008 - CLR Inside Out (Page 17) MSDN Magazine - December 2008 - CLR Inside Out (Page 18) MSDN Magazine - December 2008 - CLR Inside Out (Page 19) MSDN Magazine - December 2008 - CLR Inside Out (Page 20) MSDN Magazine - December 2008 - CLR Inside Out (Page 21) MSDN Magazine - December 2008 - Advanced Basics (Page 22) MSDN Magazine - December 2008 - Advanced Basics (Page 23) MSDN Magazine - December 2008 - Advanced Basics (Page 24) MSDN Magazine - December 2008 - Advanced Basics (Page 25) MSDN Magazine - December 2008 - Advanced Basics (Page 26) MSDN Magazine - December 2008 - Advanced Basics (Page 27) MSDN Magazine - December 2008 - Advanced Basics (Page 28) MSDN Magazine - December 2008 - Cutting Edge (Page 29) MSDN Magazine - December 2008 - Cutting Edge (Page 30) MSDN Magazine - December 2008 - Cutting Edge (Page 31) MSDN Magazine - December 2008 - Cutting Edge (Page 32) MSDN Magazine - December 2008 - Cutting Edge (Page 33) MSDN Magazine - December 2008 - Cutting Edge (Page 34) MSDN Magazine - December 2008 - Cutting Edge (Page 35) MSDN Magazine - December 2008 - Cutting Edge (Page 36) MSDN Magazine - December 2008 - Patterns In Practice (Page 37) MSDN Magazine - December 2008 - Patterns In Practice (Page 38) MSDN Magazine - December 2008 - Patterns In Practice (Page 39) MSDN Magazine - December 2008 - Patterns In Practice (Page 40) MSDN Magazine - December 2008 - Patterns In Practice (Page 41) MSDN Magazine - December 2008 - Patterns In Practice (Page 42) MSDN Magazine - December 2008 - Patterns In Practice (Page 43) MSDN Magazine - December 2008 - Team System (Page 44) MSDN Magazine - December 2008 - Team System (Page 45) MSDN Magazine - December 2008 - Team System (Page 46) MSDN Magazine - December 2008 - Team System (Page 47) MSDN Magazine - December 2008 - Team System (Page 48) MSDN Magazine - December 2008 - Team System (Page 49) MSDN Magazine - December 2008 - Team System (Page 50) MSDN Magazine - December 2008 - Team System (Page 51) MSDN Magazine - December 2008 - Real-World WF (Page 52) MSDN Magazine - December 2008 - Real-World WF (Page 53) MSDN Magazine - December 2008 - Real-World WF (Page 54) MSDN Magazine - December 2008 - Real-World WF (Page 55) MSDN Magazine - December 2008 - Real-World WF (Page 56) MSDN Magazine - December 2008 - Real-World WF (Page 57) MSDN Magazine - December 2008 - Real-World WF (Page 58) MSDN Magazine - December 2008 - Real-World WF (Page 59) MSDN Magazine - December 2008 - Real-World WF (Page 60) MSDN Magazine - December 2008 - Real-World WF (Page 61) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 62) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 63) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 64) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 65) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 66) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 67) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 68) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 69) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 70) MSDN Magazine - December 2008 - Visual Studio OBA Tools (Page 71) MSDN Magazine - December 2008 - SOA Data Access (Page 72) MSDN Magazine - December 2008 - SOA Data Access (Page 73) MSDN Magazine - December 2008 - SOA Data Access (Page 74) MSDN Magazine - December 2008 - SOA Data Access (Page 75) MSDN Magazine - December 2008 - SOA Data Access (Page 76) MSDN Magazine - December 2008 - SOA Data Access (Page 77) MSDN Magazine - December 2008 - SOA Data Access (Page 78) MSDN Magazine - December 2008 - SOA Data Access (Page 79) MSDN Magazine - December 2008 - SOA Data Access (Page 80) MSDN Magazine - December 2008 - SOA Data Access (Page 81) MSDN Magazine - December 2008 - Geneva Framework (Page 82) MSDN Magazine - December 2008 - Geneva Framework (Page 83) MSDN Magazine - December 2008 - Geneva Framework (Page 84) MSDN Magazine - December 2008 - Geneva Framework (Page 85) MSDN Magazine - December 2008 - Geneva Framework (Page 86) MSDN Magazine - December 2008 - Geneva Framework (Page 87) MSDN Magazine - December 2008 - Geneva Framework (Page 88) MSDN Magazine - December 2008 - Geneva Framework (Page 89) MSDN Magazine - December 2008 - Geneva Framework (Page 90) MSDN Magazine - December 2008 - Test Run (Page 91) MSDN Magazine - December 2008 - Test Run (Page 92) MSDN Magazine - December 2008 - Test Run (Page 93) MSDN Magazine - December 2008 - Test Run (Page 94) MSDN Magazine - December 2008 - Test Run (Page 95) MSDN Magazine - December 2008 - Test Run (Page 96) MSDN Magazine - December 2008 - Test Run (Page 97) MSDN Magazine - December 2008 - Test Run (Page 98) MSDN Magazine - December 2008 - Test Run (Page 99) MSDN Magazine - December 2008 - Test Run (Page 100) MSDN Magazine - December 2008 - Foundations (Page 101) MSDN Magazine - December 2008 - Foundations (Page 102) MSDN Magazine - December 2008 - Foundations (Page 103) MSDN Magazine - December 2008 - Foundations (Page 104) MSDN Magazine - December 2008 - Foundations (Page 105) MSDN Magazine - December 2008 - Foundations (Page 106) MSDN Magazine - December 2008 - Foundations (Page 107) MSDN Magazine - December 2008 - Foundations (Page 108) MSDN Magazine - December 2008 - Windows With C++ (Page 109) MSDN Magazine - December 2008 - Windows With C++ (Page 110) MSDN Magazine - December 2008 - Windows With C++ (Page 111) MSDN Magazine - December 2008 - Windows With C++ (Page 112) MSDN Magazine - December 2008 - Going Places (Page 113) MSDN Magazine - December 2008 - Going Places (Page 114) MSDN Magazine - December 2008 - Going Places (Page 115) MSDN Magazine - December 2008 - Going Places (Page 116) MSDN Magazine - December 2008 - Going Places (Page 117) MSDN Magazine - December 2008 - Going Places (Page 118) MSDN Magazine - December 2008 - Going Places (Page 119) MSDN Magazine - December 2008 - End Bracket (Page 120) MSDN Magazine - December 2008 - End Bracket (Page Cover3) MSDN Magazine - December 2008 - End Bracket (Page Cover4)
For optimal viewing of this digital publication, please enable JavaScript and then refresh the page. If you would like to try to load the digital publication without using Flash Player detection, please click here.