Statusing Class

Includes methods for managing status updates and assignments in Microsoft Office Project Server 2007.

Inheritance Hierarchy

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Web.Services.Protocols.WebClientProtocol
        System.Web.Services.Protocols.HttpWebClientProtocol
          System.Web.Services.Protocols.SoapHttpClientProtocol
            WebSvcStatusing.Statusing

Namespace:  WebSvcStatusing
Assembly:  ProjectServerWebServices (in ProjectServerWebServices.dll)

Syntax

'Declaration
<WebServiceBindingAttribute(Name := "StatusingSoap", Namespace := "http://schemas.microsoft.com/office/project/server/webservices/Statusing/")> _
Public Class Statusing _
    Inherits SoapHttpClientProtocol
'Usage
Dim instance As Statusing
[WebServiceBindingAttribute(Name = "StatusingSoap", Namespace = "http://schemas.microsoft.com/office/project/server/webservices/Statusing/")]
public class Statusing : SoapHttpClientProtocol

Remarks

The Statusing class is used to provide and update status on assignments from the current user's point of view. Statusing uses user context-based security.

Users play three roles in the Statusing environment: Status Manager, Assignment Owner, and Work Resource.

The status manager is sent assignment updates, new assignments, and new tasks for approval. The status manager is most often the project manager. The project manager can delegate this task to another user.

The assignment owner is responsible for the assignment. The assignment owner reports status, makes updates, or delegates as appropriate. Changes made by the assignment owner must be approved by the status manager.

The work resource actually provides the work on this assignment. The work resource can be the same as the assignment owner, but can be different; for example, a foreman can be an assignment owner, and the members of his crew would be the work resources.

The Statusing class also makes use of team resources. A full discussion of team resources is beyond the scope of this section. Team resources are resources that can be given assignments in proxy for a group of resources on a team. Work resources and assignment owners can then reassign work to and from the team resource.

The lifecycle of an assignment can be confusing. There are four places where assignments can be created or stored: the Draft database, the base assignment table, the saved assignment table, and the updated table.

Figure 1. Status update life cycle

Managing assignments in the Statusing methods

The original assignments are created in the original project in the Draft database. When the project is published, the assignment is copied to the base assignment table and an identical copy is copied to the saved assignment table. When the assignment owner or resource makes changes to the assignment, the changes are kept in the saved assignment table. When the assignment owner or resource publishes the changes, the updated assignment is copied to the updated assignment table. The assignments stored in the updated assignment table are visible to the status manager, who can accept or reject the changes. If the status manager accepts these changes, the changes are copied to the new working copy of the project in the Draft database. These changes must be published from the Draft database to the Published database to update the base assignments table with the new information.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Statusing Members

WebSvcStatusing Namespace