One of the common issues that come up when you first generate a Team Project is that you try to generate a report and nothing comes up, or you'll get an error message such as "An error has occurred during report processing.(rsProcessingAborted)" or "rsErrorExecutingCommand." First, consider that your project initially doesn't have any data in it; therefore, you won't see much in the reports. Second, if you do have data in your project (for example, you have added work items), the warehouse refresh occurs only once an hour.
Another common problem when you first set up a Team Project is that you may see a little red x next to the Reports node. This means that you didn't set the appropriate permissions on the reporting site. Please follow the instructions in Chapter 4 for details on how to set up privileges using the Report Manager.
MSDN has great information on troubleshooting the data warehouse (http://msdn2.microsoft.com/en-us/library/ms244674.aspx) and troubleshooting SQL Server Reporting Services (http://msdn2.microsoft.com/en-us/library/ms244677.aspx).
Typically, the data warehouse refreshes data every hour. What happens is that the data are aggregated from the operational stores to the fact tables. Once that operation has occurred, then the cube is refreshed. There may be circumstances where the stakeholders in the project may need the report information to be refreshed more frequently.
If you use SQL Server 2005 Enterprise Edition, optimizations have been made to the product for parallel processing in increments. Whenever you are modifying the refresh frequency, be mindful of the overhead and the impact on your operations especially if you are planning to refresh more frequently.
The default refresh rate is once per hour. To change the refresh rate, you must have administrative privileges on the data tier. You can change the setting by using the WarehouseController Team Foundation Server Web service. Here are the specific steps:
Launch Internet Explorer (or your browser of choice) and type in the following link:
Go to the ControllerService page and click the ChangeSetting link.
Type in RunIntervalSeconds in the settingsID input field.
Type in the number of seconds between refreshes in the newValue input field. For example, an hour is 3600 seconds (60 minutes 60 seconds). To set the interval to half an hour, write in 1800 (30 minutes 60 seconds).
Click the Invoke button.
The Web service in question appears as shown in Figure 16-14.
Once you have set up the new refresh rate, you can verify it using the GetWarehouseStatus method. There are three default statuses that can come up: Idle, RunningAdapters, or ProcessingOlap. Once the data warehouse has been processed, the status will return to Idle.
There may be instances where you will need to completely rebuild the data warehouse. The Team Foundation Server Warehouse Setup Tool (SetupWarehouse) allows you to fix up either the relational database or the OLAP cube. You can access the tool at C:\Program Files\Microsoft Visual Studio 2005 Team Foundation Server\Tools.
You can rebuild the relational database using this command:
SetupWarehouse -rebuild -mturl MidTierURL -s ServerName -d TFSWarehouse-c wareHouseSchema.xml -a TFSServiceAccount -ra TFSReportAccount -edt TeamBuildDataBase
You can also rebuild the OLAP cube using the following command:
SetupWarehouse -o -s YourDataTierServer -d TFSWarehouse -c warehouseSchema.xml -a TFSServiceAccount -ra TFSReportAccount
A list of all the available options is available online at http://msdn2.microsoft.com/en-us/library/ms400783.aspx. You can also get a list of commands by typing the following in the command prompt: