ProjectsCheckin Method

Description

Checks in projects, and optionally creates a site for each project on the server that is hosting Microsoft Windows SharePointâ„¢ Services for Microsoft Office Project Server 2003.

Syntax

<Request>
   <ProjectsCheckin>
      <Project>
         <ProjectType></ProjectType>
         <ProjectID></ProjectID>
         <ProjectName></ProjectName>
         <ProjectSummaryRecord></ProjectSummaryRecord>
      </Project>
      <Forced></Forced>
      <ServerPath></ServerPath>
   </ProjectsCheckin>
</Request>

Parameters

ProjectType

Optional. Valid values for ProjectType are as follows; the PDS ignores any other values:

Type Description
0 Regular project (default)
1 Project template
2 Global template
3 Resource global

If ProjectType is 2 or 3, the PDS ignores ProjectID and ProjectName, and clears the global template or resource global of access rights.

ProjectID* or *ProjectName

Optional. The PDS checks in the specified project ID or project name. Either ProjectID or ProjectName is required if ProjectType is 0 or 1. If ProjectID is specified, the PDS ignores ProjectName.

ProjectName is the project name as stored in the PROJ_NAME field of the MSP_PROJECTS table (the concatenation of the project identifier and the version name, separated by a period).

ProjectSummaryRecord

Optional. Valid for a ProjectType of 0; otherwise, it is ignored. ProjectSummaryRecord contains an XML structure that represents the project summary record information that is posted to Project Server. Each ProjectSummaryRecord parameter is paired with the project identifier immediately preceding it.

Forced

Optional. Designates that the project is being force-checked in by an administrator, but not published. Default is 0.

ServerPath

Optional. If ServerPath is included, and if the Project Server administrator has set the option for automatic creation of Windows SharePoint Services sites, the PDS also creates the project site in the associated Windows SharePoint Services installation. The value for ServerPath is, for example, http://myserver/projectserver.

Return Value

If all requested project check-ins are successful, the method returns a successful HRESULT and STATUS. However, if one of the requested project check-ins fails, they all fail, and the return includes each project that failed and an error code.

<Reply>
   <HRESULT></HRESULT>
   <STATUS></STATUS>
   <UserName></UserName>
</Reply>

Remarks

The PDS checks Project Server security for the currently logged-on user, and determines whether that user has sufficient permission to check in each requested project. The PDS also ensures that the current user has the project checked out. If permissions are adequate and the project is currently checked out by the user, the PDS marks the project as checked in. This method does not revoke access to the project in the security table (see ProjectsAccessCompleted).

If ProjectSummaryRecord is specified, after the check-in is complete, the PDS starts the process that populates the project view tables with the ProjectSummaryRecord value for each checked-in project. If the ProjectType is 2 (the enterprise global), the PDS also updates the custom field aliases in Project Server.

If Forced is set to 1, the project is checked in but not published. For any check-in, if the field PROJ_LOCKED is set, the PROJ_EXT_EDITED field is set to 1. Also, the PROJ_LOCKED, PROJ_READ_WRITE, READ_ONLY, and PROJ_READ_COUNT fields are cleared. When the PDS performs a check-in, only the default version of a project is automatically published.

ProjectsCheckin accepts multiple sets of projects.