How to query 'history' field in Team Foundation Server (TFS)? - tfs

I am trying to capture the history of changes when a user story is moved from one iteration to another.
I am trying to query in TFS and using the history field, but don't know what values to put in the value field to capture when a user story is moved to a new iteration. See image below.

I am trying to capture the history of changes when a user story is
moved from one iteration to another.
Unfortunately you cannot capture the information as the History filed is not the real change history for all actions. It just records the Discussion History.
And the work item query is to return work items which matched the given conditions from TFS but not the specific history information.
If you just want to get the real history (iteration change information in your scenario) for a specific work item, then you can call the REST API - Get Work item revisions
If you want to filter the work items which have the specific discussion words, then you can specify the words as the value of the History field. Reference below screenshot:

Related

Find WorkItems that were assigned and finished in the last 30 days

I would like to see a list of workitems assigned to a particular person. I would also like get information about when those workitems were completed. Is there any column like assigned_date and finished_date that i could use?
I saw [Status]='AssignedTo' but didnt find anything that says when it was assigned and when it was finished
This link provides some info that I am looking for but not everything.
You could use the operator “Was Ever” that searches for a value in a field in the history of Work Items. Such a query will return all Work Items you were/someone assigned to, even if now they are assigned to a different person.
However, there is not any assigned_date and finished_date you could use. Several date and identity fields are set based on workflow states or transitions. You could find all
Date and Iteration Path fields here.
You have to use Revisions - List Rest API to return the list of fully hydrated work item revisions and fetch the work item assigned and finished time. Finally check if they are in the last 30 days.
GET https://dev.azure.com/{organization}/{project}/_apis/wit/workItems/{id}/revisions?api-version=6.1-preview.3

How to get TFS query result but for a previous date

Is it possible to execute a TFS query and get the results not for today but for a previous date?
I just want to see the results that were available in that date.
To clarify: I need to see the state of the work items on a give date to see their evolution over time.
According to your clarification, you need see the state of the work items on a give date. There is not a direct way to achieve it in Work Item Query.
You can only use Was Ever in Work Item Query to list items based on State past assignments, like:
state Was Ever Active
Or you can use State Change Date <= YYYY-MM-DD and State Change Date > YYYY-MM-DD to list all work items that changed State on YYYY-MM-DD. (Need to check whether TFS 2010 has State Change Date field)
Of course you can combine other clauses to narrow down the query.
What you want is actually the work item history. You need to get the work item history programmatically using TFS API. You can check this blog below to use the API:
http://www.codeproject.com/Articles/243653/TFS-SDK-Work-Item-History-Visualizer-using-TFS-API
I think you can create pivot table report to connect to TFS cube. For your requirement to see work items' evolution over time, you can define the pivot table as:
Check these two links for the details: https://msdn.microsoft.com/en-us/library/ms244678 and https://msdn.microsoft.com/en-us/library/ms244710.aspx

Hyperlink from a count query to extract associated data in access

I have a Count query that uses multiple criteria to produce a result looking like:
count ID
1 "abc"
4 "bcd"
5 "def"
1 "cde"
This shows how many times the ID appears in a given database. The datasource is through an odbc connection that updates automatically. So the ID values change everytime it is opened. I would like to try to turn the unique ID or the associated count into a hyperlink that when clicked will return all information involved in the count (*note the database has much more information associated with the ID's than is counted, a date range of the previous three months is applied.) Can this be done simply?
Database format:
ID Instance Device DateBeg DateEnd
Thanks in advance,
LP
The short version -
This should be simple to do using a report (but could also be done using a form I will be explaining how to do a report for this version). You would just make a report that includes all of your fields then call the report on click. It is important to mention that you will need to view the query via a form to make this work.
A more detailed version -
The first step will be to make a form based on your query (you will not be able to do this directly from a query). To do this select your query then click on the create tab then click Multiple Items Form. Adjust as needed.
Then create a report that shows ALL of the records how you want it to display. (I will call it rpt_ViewDetails) (we will limit later)
When you are done adjusting click on the field that contains the "abc" etc. results (if this is a calculated field it will be more complicated.) I will call this field "Criteria" for the example. Go to the events tab on the property sheet (in design view). use the On Dbl Click event and go to code builder.
This is what the code would look like (place in between the private sub.... and the end sub lines of code):
DoCmd.OpenReport "frm_ViewDetails", acViewNormal, , "[Criteria] = " & Me.Critera
Let me know if you have any trouble with this, also let me know if the structure is different than I am assuming, I will need a more detailed report of what the query is doing if this is the case, what the structure of the database is etc.

TFS 2008 Cube Report between two points in time

In TFS 2008, I'd like to be able to create a pivot table/chart to show the difference in a specific field between two given points in time. The reason is we put our initial estimates in at the beginning and then update it to the total number of hours we did against the item when we finish. An obvious answer to this, would be two separate fields, one for initial and one for final, but that isn't how it was set up, so the only way I can pull the data is querying against the history of the work item.
I am up for writing a custom SQL query or updating the cube with a new perspective if necessary, but ideally, I'd like to just pull it together with the TFS cube into excel 2007. I was looking at the Work Item History perspective, but I'm just not seeing anything close enough in there.
The Work Item history in the TFS cube indeed exposes the state of the work item fields over time. You can just select the start and end point in the pivot table connected to the cube datasource as the row or column. On the other axis, select the field you want to display. The values in the table will show the values for the fields in both points in time.

How can I get a report of all work items added to an iteration after a given date?

I need to produce a report, similar to the Unplanned Work report included with the MS Agile Process Template, but which lists me all work items which were added to an iteration after a given date.
The work item may have already been created before that date, so I can't used the created date.
Can anyone give any guidance on how I can go about this? If I can achieve it in Excel then that would be perfect...
Thanks.
Ok, took some work. Interesting enough though to put some effort in it ...
First screenshot is a Pivot table connected to the Analysis Cube. The most left colum shows the ID of a workitem. The second column shows the ChangeDate. In the row header I have included every iteration that I am interested in. What you see happening in the Excel sheet is items moving from one sprint to the other. For example, workitem 27 was created for iteration 1 at 14-3-2011. On 13-4-2011 it was moved to iteration 2. On 12-5-2011 it was moved to iteration 3. etc.
If I narrow down the filter to a specific iteration I actually see items entering the iteration and leaving the iteration. If I also change the ChangeDate filter, I can focus on items entering after a specific date, as you requested. Again, you can see item 27 enter iteration 2 at 13-4 and leave at 12-5. You can juggle around with the columns to get the view you want.
Finally, the options I used to get this view from TFS.
Hope this exceeds your expectations :-)

Resources