Posts

Working with Reporting DB

Microsoft did a nice job of creating the reporting database in Project Server. The data is so conveniently available that developers can easily create complicate reports. The downside of this is that, for large instance of Project Server, if the developers are not careful about the their queries, the reports may have a time-out problem. I come across one scenario today: It is a typical query built from project view, task view, resource view, and time-phased assignment view with a sub-query. the query structure looks like this: select table1.* ,other tables...... from (select .... from .....) as table1 inner join [other tables]...... where table1.aValue > 0 and other filters.... If I move the filter (table11.aValue > 0) into the sub query, the query will 6 time faster!

A lesson learned in SSRS 2005

I was working on some large SSRS reports for Project Server 2007. I found sum(column A + column B) is not same as sum(column A) + sum(column B). Because, if there is any Null value in columns A or B, the first one will generate #ERROR message and the second one will handle this better. Something you learned from elementary school is not sure any more in this complex world.

How to check-in Multiple documents in SharePoint Document Library

Some time, people use the explorer view to upload a lot of document into a SharePoint Document library, but it is a pain to check in them one by one. You can go to http://mysharepoint.com/mysite/_layout/sitemanger.aspx to check in all once.

How to replace "*" in Excel

In Excel, if you want to replace "*" with something else and you are using the "Find and Replace ..." menue item, it wont work because Excel thinks "*" is a wild card character. The trick is to use "~*", which is the escape character. Another unannounced feature in Microsoft world.

An Application to Scan Hours Entered for a group of users

Image
I just finished development of a small application, which can scan hours entered by a group of users. This application consists of two parts: 1. A web service (PSI Extension) handles impersonation and return the data set of time phased hours entered. 2. A Win-Form Application to call the web service to summarize the hours.

How to create a Resource Center View using RBS

Image
Create a Category named "Resource by RBS" Give the security group permission for viewing resource enterprise data and view resource assignment Create a resource center view that belongs to the category created in Step 1. Don't check the option of "RBS filtering" RBS filtering works if you want to only see people below your RBS level. By using this method you can have more flexibility. For example, you can see people who has same level of RBS as yours.