If you create rules in the Approval Center PRIOR to Project Server SP1, this is how it looks. Notice there are only three columns “Name”, “Description” and “Apply Automatically”
Figure 1 – Pre SP1 Rules Page
If your users have created Rules in the Approval Center PRIOR to Project Server SP1, they cannot edit them POST SP1.
Once I apply Project Server Sp1, how do I know if a rule was created PRE SP1?
If you view the rules, the PRE SP1 rules will have “Automatically Publish” shown as blank (its actually a null) – see image.
Figure 2 – Post SP1 Rules Page with Rules from Pre SP1
They can create new rules POST SP1, but cannot edit prior rules due to a known issue. This error occurs because the Project Server 2010 Service Pack 1 update adds a new column, RULE_AUTOMATIC_PUBLISH, to the MSP_Rules table, and all existing rows are left with a null value.
See below, I created a new rule and appended the “SP1” text to the name. That rule has the “Automatically Publish” field.
Figure 3 – Post SP1 Rules Page with Rules from Post SP1
The ULS error is
System.Data.StrongTypingException: The value for column 'RULE_AUTOMATIC_PUBLISH' in table 'Rules' is DBNull. ---> System.InvalidCastException: Specified cast is not valid.
As a workaround for this issue, there are couple of options:
- You can delete and then re-create the approval rule (if you know what the rule is – not an option IMHO – are you going to notify your users that “oops – there is a bug – redo your rules again”)
- Making an update directly to the MSP_RULES table in the Project Server 2010 Published database that holds the rules definitions (valid option)
- This error is fixed in the June 2011 Cumulative Update for Project Server 2010 @ http://go.microsoft.com/fwlink/p/?LinkID=209620
This is also documented @ http://technet.microsoft.com/en-us/library/hh272536.aspx