About the Service for EDM

The Project Data Service (PDS) provides the primary interface to integrate Microsoft Office Project Server 2003 with other business applications. The Service for Enterprise Data Maintenance (EDM) builds on the PDS to provide higher-level and easier ways to exchange data between Project Server and other applications through a “file drop” mechanism, as well as through a SOAP programmatic interface. The Service for EDM still relies on XML for the data format, and aggregates multiple PDS calls to do the core work.

An enterprise may have several Line of Business (LOB) applications already in place, in addition to Project Server for Enterprise Project Management (EPM). Other applications include human resources (HR), financial, professional services automation (PSA), customer relationship management (CRM), and skills-learning portal systems. Many of these LOB systems have the ability to simply drop a formatted file to a designated location on a regular basis. In other cases a developer can easily add a SOAP call or HTTP Post that directly accesses the Service for EDM functions.

The value of the Service for EDM in Project Server is two-fold:

  • A business rules layer can map data between another LOB application and similar data from Project Server, to better integrate with existing data in Project Server.

  • The development work to more tightly integrate Project Server with a variety of LOB applications is simplified.

Scenarios

The Service for EDM provides three main functions: resource data synchronization, project team synchronization, and updating custom field value lists. The linked topics describe the XML structure and use of these functions. The scenarios for using these functions are as follows:

  • Resource Data Methods Resource data needs to be synchronized between an HR system and Project Server on a nightly basis. The HR system drops a properly formatted XML file into a specified folder every night at midnight. The XML file may include resource metadata such as the values for custom fields that are to be applied to each resource.

    The Service for EDM gets the XML file, applies some business rules to the data in the file, and makes the appropriate PDS calls to synchronize the resource data with the Enterprise Resource Pool in the Project Server database.

    The resource data methods include ResourcesUpdate and ResourcesDeactivate.

  • ProjectTeam Method A business has a PSA system where new resources are added to projects based on availability, skills, and so on. The business needs to synchronize these “project team” additions in the PSA system with the appropriate projects in Project Server.

    When the resource manager commits the changes in a team, the PSA system uses the SOAP interface of the Service for EDM to send the new project team list to Project Server. The Service for EDM then applies some business rules and makes the appropriate PDS calls to add or delete members from the team in the Project Server database.

  • EnterpriseFieldUpdate Method A business has a system such as a skills-learning portal or an HR system that holds the value lists for certain enterprise custom fields (like location or skills). The HR system drops a file every night that contains the new list of values. The Service for EDM then applies some business rules and makes the appropriate PDS calls to update the value lists for the enterprise custom fields.

See Configuring the Service for EDM for information on how to configure the service for a file drop or a SOAP client.

Multiple Requests

The Service for EDM supports batching of calls. For example, one request can contain one or more calls to the Service for EDM methods ProjectTeam, EnterpriseFieldUpdate, ResourcesUpdate, and ResourcesDeactivate.

The Service for EDM also supports batching of direct calls to the PDS.