The Issues page in Project Web Access incorrectly displays the number of issues as zero (0) for all projects in Project Server 2002 (837650)



The information in this article applies to:

  • Microsoft Project Server 2002
  • Microsoft Project Web Access

SYMPTOMS

When you log on to Microsoft Project Server 2002 by using Microsoft Project Web Access and you click Issues to view a summary of issues for all projects, you may find that the Issues page in Microsoft Project Web Access does not display the correct number of issues for projects. The grid displays zeros (0's) for all projects. You experience these symptoms even when issues are associated with one or more projects in Microsoft Project Server.

CAUSE

This issue may occur in situations if one or more tables of databases in Microsoft SQL Server that are used by Project Server 2002 were created by a user who is not the default database owner (dbo). This issue may occur if the configuration database administrator account is changed to a use a different user account, and the user account is incorrectly specified as the owner of the tables in the SharePoint Team Services from Microsoft databases. Note that this issue occurs although the user account is assigned to the fixed database db_owner role in SQL Server. There is a distinct difference between a dbo of a database and the db_owner role in SQL Server.

If the tables are created by a user who is not the dbo, the tables that SharePoint Team Services creates when a subweb is created are user-specific objects. For example, the table is created as UserName.TableName instead of dbo.TableName. Project Server 2002 expects that all tables belong to the dbo. Because Project Server cannot query the tables that are created as user-specific objects, the total number of issues that is returned for projects is 0.

RESOLUTION

To resolve this issue, specify the default dbo as the owner of all tables in the SharePoint databases in SQL Server. To do so, use one of the following methods, depending on your situation.

Method 1: Use the sp_changeobjectowner stored procedure to specify dbo as the owner of the tables

Use the sp_changeobjectowner stored procedure to specify dbo as the owner of the tables that are currently owned by another user account. For additional information about how to do so, click the following article number to view the article in the Microsoft Knowledge Base:

275312 INF: SQL Server procedure to change object owner

Method 2: Manually specify dbo as the owner of the tables

You can manually specify the dbo as the owner of the tables. Use this method if you only have to change the ownership of only several tables. The following procedure changes the owner of the table, and then changes the owner to the user who is specified as the database owner in SharePoint Team Services. To do so, follow these steps:
  1. Use the sp_changeobjectowner stored procedure to specify dbo as the owner of all user objects in the following tables:

    ows_ProjectX_Contacts
    ows_ProjectX_Discussions
    ows_ProjectX_Documents
    ows_ProjectX_Events
    ows_ProjectX_Issues
    ows_ProjectX_Links

  2. Use SQL Server Enterprise Manager or use the sp_dropuser stored procedure to remove the SQL Server account from the database.
  3. Use the sp_changedbowner stored procedure to change the owner of the object to the user account that is currently specified as the dbo.

MORE INFORMATION

The database owner (dbo) is a user who has implied permissions to perform all activities in the database. Any member of the sysadmin fixed server role who uses a database is mapped to the dbo. Additionally, an object that is created by a member of the sysadmin fixed server role automatically belongs to the dbo. For example, if User1 is a member of the sysadmin fixed server role and creates a table named T1, T1 belongs to the dbo and is qualified as dbo. T1, not as User1.T1. Conversely, if User1 is not a member of the sysadmin fixed server role but is a member of the db_owner fixed database role and User1 creates a table named T1, T1 belongs to User1 and is qualified as User1.T1. The table belongs to User1 because User1 did not qualify the table as dbo.T1. The dbo user cannot be deleted and is always present in every database. Only objects that are created by members of the sysadmin fixed server role (or by the dbo user) belong to dbo. The following conditions are true for objects that are created by user who is not a member of the sysadmin fixed server role (including members of the db_owner fixed database role):
  • The objects belong to the user who creates the object, and does not belong to the dbo.
  • The objects are qualified with the name of the user who created the object.
For more information about the sp_changeobjectowner, the sp_dropuser, and the sp_changedbowner stored procedures, see SQL Server Books Online. For more information about the database owner (dbo) and the db_owner fixed database role, see SQL Server Books Online. To view SQL Server Books Online, click Start, point to Programs, point to Microsoft SQL Server, and then click Books Online.

For more information about how to deploy Project Server 2002 across non-trusted domains, visit the following Microsoft Web site: For more information about Microsoft Project Server 2002, visit the following Microsoft Web site:

Modification Type:MinorLast Reviewed:7/27/2006
Keywords:kbprb KB837650 kbAudITPRO