Scrum项目TFS Warehouse中添加并填充OriginalEstimate字段的可行方案问询
Absolutely, you can add a custom OriginalEstimate field and configure it to sync with the TFS Warehouse for your Scrum project. Since the out-of-the-box Scrum process template doesn’t include this field (unlike Agile), you’ll need to set this up manually, but it’s totally doable. Here’s a step-by-step breakdown to make it happen:
Step 1: Create the Custom Work Item Field
First, add the OriginalEstimate field to the relevant work item types in your Scrum project (like Product Backlog Items, Tasks, etc.):
- Open the TFS Work Item Type Editor (either via Visual Studio or the TFS Web Portal’s Process settings).
- Select your Scrum project’s process template, then the work item type you want to update.
- Add a new field with:
- Name:
OriginalEstimate(matching the Agile field name for consistency) - Type: Choose Integer or Decimal depending on whether you track estimates in whole hours or fractions.
- Reference Name: Use a unique identifier (e.g.,
YourOrg.OriginalEstimate) to avoid conflicts with system fields.
- Name:
- Make sure to add the field to the work item form so users can input values.
Step 2: Configure Warehouse Sync for the Custom Field
Next, map this custom field to the TFS Warehouse so its data gets populated:
- Use the
witadmincommand-line tool to export the current field mapping for your project:witadmin exportfieldmapping /collection:http://your-tfs-server:8080/tfs/DefaultCollection /p:YourScrumProjectName /f:fieldmapping.xml - Open the exported
fieldmapping.xmlfile, and add a mapping entry for your custom field. Example snippet:
Adjust the<FIELD type="Integer" name="OriginalEstimate" refname="YourOrg.OriginalEstimate"> <WAREHOUSE fieldName="OriginalEstimate" type="Integer" /> </FIELD>typeattribute if you chose Decimal instead of Integer. - Import the modified mapping file back to TFS:
witadmin importfieldmapping /collection:http://your-tfs-server:8080/tfs/DefaultCollection /p:YourScrumProjectName /f:fieldmapping.xml
Step 3: Trigger Warehouse Synchronization
After updating the mapping, sync the warehouse to pull in the custom field data:
- You can either wait for the scheduled incremental sync (usually runs every hour) or trigger an immediate sync via the TFS Administration Console:
- Open the TFS Administration Console.
- Navigate to Application Tier > Reporting.
- Click Start Warehouse Sync to initiate a full or incremental sync.
Step 4: Verify the Data in the Warehouse
Once sync completes, query the TFS Warehouse tables to confirm the field is populated. For example, run this SQL query against the TFS Warehouse database:
SELECT [System.Id], [OriginalEstimate], [System.WorkItemType] FROM [Tfs_Warehouse].[dbo].[CurrentWorkItemView] WHERE [System.TeamProject] = 'YourScrumProjectName'
Key Notes:
- Ensure you have Project Administrator or TFS Administrator permissions to make these changes.
- If you need this field across multiple Scrum projects, update the global Scrum process template instead of individual projects—this will apply the field to all new Scrum projects.
- Always test changes in a non-production environment first to avoid disrupting your team’s workflow.
内容的提问来源于stack exchange,提问作者Rama

