At first glance, Collaboration Projects (cProjects) appears to be complex. However, you’ll discover that it can be easy to configure and use. Find out how cProjects can help you manage your projects, and learn how the Workforce Management and middleware integration synchronizes front-end applications with back-end SAP ERP Central Component modules.
Key Concept
Collaboration Projects (cProjects) is a Web-based application project management functionality provided by SAP via a Web URL. It is a standard integration package in SAP CRM, and it is integrated with other SAP modules. cProjects is a cross-industry tool that you use to plan and monitor development and consultant projects. All cProjects configuration is performed in SAP CRM. This functionality comes free with a standard SAP ERP license.
Collaboration Projects (cProjects) is a Web application used by project managers and other resources to access SAP CRM. cProjects provides enhanced functions for projects and business scenarios that require an easy-to-use and flexible project management tool. It is integrated with SAP Accounting, SAP ERP Human Capital Management (SAP ERP HCM), SAP CRM, SAP Supplier Relationship Management (SAP SRM), and order processing. In this article, I focus on cProjects configuration in the SAP CRM system and CRM Middleware replication, though I also reference some SAP ERP HCM aspects for cProjects Resource Management.
Data created or maintained in cProjects is captured in SAP CRM, and you can replicate this project data (e.g., project structures) to the SAP ERP Central Component (SAP ECC) Project System (PS) module using middleware. You can also integrate HR data from SAP ERP HCM into SAP CRM via Application Link Enabling (ALE). In addition to SAP standard functionality, you can customize the application to suit to your business needs. In this article, I discuss each of these in detail.
I’ll provide you with an overview of cProjects configuration and the processes involved from the creation of a project to its closure. This article is primarily targeted towards SAP CRM functional and technical managers and team members who understand the capabilities available in SAP CRM, but it will also help project managers and business leads discover what cProjects can offer for their new implementation.
Note
The cProjects suite is contained in the licenses for SAP Product Lifecycle Management (SAP PLM), SAP ERP (which includes SAP CRM), and SAP Business Suite. You do not need to pay for a separate license.
What You Should Know Before Configuring cProjects
Figure 1 shows a high-level version of a sample SAP CRM integration with SAP ERP modules. This is the level of integration I have performed in cProjects implementations.
Figure 1
cProjects and SAP CRM integration with SAP ERP modules
To successfully and efficiently manage projects, the project manager and other team members should be able to perform the following typical tasks and processes in a project management tool with ease:
- The project manager creates a project, a project structure, roles, and scheduling
- The project manager calculates planned cost and revenue
- The project manager notifies the resource manager to secure and assign resources on the project roles
- The resource manager checks for resource availability
- The resource manager staffs the roles with internal resources or procures external vendor partner resources
- The project manager links to business objects (e.g., quotes, sales contracts, purchase order items, and project work breakdown structures)
- The project manager and resource manager communicate details and staffing schedules for the project to project team members
- The project team starts work on the project and creates a project status report
- The project team creates documents and assigns them to project elements in cProjects
- The project team captures time and expenses on the project
- The billing department generates invoices and bills the customers or clients for the project work
- Accounts payable settles the purchase order-related invoices with the vendors for the work performed by vendor/partner employees on the project
- Actual costs and revenue are posted in Profitability Analysis (CO-PA) for the project
- The project manager runs actual cost/revenue reports and various status reports for the project management office
- The project team completes project tasks and charges time and expenses on the project
- The project manager verifies and closes the project
Now I’ll describe some of these steps in a bit more detail and describe how cProjects comes into play. Every project needs resources to get the work done. For this, as you probably know, the project manager creates roles that each have assigned finite start and end dates. Cost and billing rates are maintained for each of these roles, and these rates can be standard or project specific. These roles are then assigned to project tasks. The project manager can run planned cost and revenue reports and adjust the project tasks, roles, dates, and cost/bill rate.
After fine-tuning the project shell (i.e., creating a project with phases and tasks that is not yet operational), the project manager starts the staffing process. The project manager can either request staff for each role or can globally request a staffing process for the entire project. This triggers a notification to the resource manager. Based on the size of the company, there may be a resource management pool or the project manager may be the resource manager. The resource manager looks for resources by availability, qualification, and skills, and then books them on projects. This is facilitated between SAP ERP HCM and SAP CRM via ALE integration technology, which integrates SAP ERP HCM data into SAP CRM and cProjects. The resource manager can generate an email notifying resources and their managers about projects, tasks, staffing details, and other project-related information. If internal resources are not available, external consulting resources can be procured by the resource manager.
The project manager can link purchase orders, sales orders, and project system elements with other SAP objects using object links functionality and monitor the progress of the project by creating evaluations on staffing, planned costs and revenue, and project resources. Project managers can also close individual project tasks, phases, and eventually the whole project when it is complete. Before closing the project, all the resources (team members) are released. The project elements are closed only after the time is booked and approved. After the project is closed, all related phases and tasks in the project are closed and time can no longer be booked.
Note
Object links are business objects relevant to a project that can be located in different SAP systems. It is critical and productive to have an overview of these objects directly in cProjects. You can connect the objects that you defined or activated in customizing for cProjects in SAP CRM to the application as object links.
Evaluations give you an overview of your project data. When creating an evaluation, the system checks whether predefined threshold values have been violated. You can create threshold values that determine if the project’s status is green, yellow, or red.
Figure 2 helps you visualize how the project is structured and how roles and resources are assigned to a project.
Figure 2
Typical project structure
Steps to Create a cProjects Project
Now let’s go through the specific steps in a cProjects project:
- Step 1. Create a project with start and finish dates
- Step 2. Create project phases with start and end dates
- Step 3. Create project tasks under each phase with a start date, end date, and work effort
- Step 4. Create project roles (e.g., project manager and architect) on the project with specific start and end dates and capacity
- Step 5. Assign roles to project tasks
- Step 6. Run reports to verify costs, revenue, and staffing schedule to ensure they are in compliance with the project scope, budget, and time
- Step 7. Request staffing
- Step 8. Search for resource availability by schedule, skills, and qualification
- Step 9. If internal resources are not available, procure external resources
- Step 10. Staff internal and external resources on the project
- Step 11. The project manager communicates staffing details as well as project or task start and end dates to the project team members
- Step 12. The project manager runs various reports to see the project’s status
- Step 13. The project work is performed
- Step 14. Internal and external resources complete booking time on project
- Step 15. The project manager closes the project
I’ll translate the above business process requirements into configuration elements in an SAP system. I will list some of the important cProjects configuration steps in SAP CRM and the output of this on the cProjects user screen. For this article’s steps, the assumption is that your Basis team has set up SAP CRM, SAP ECC, and other systems such as SAP SRM and SAP NetWeaver Business Warehouse (SAP NetWeaver BW). I use this example because if SAP SRM is integrated with cProjects and SAP CRM, it should be fully set up. SAP NetWeaver BW is used by many implementations for reporting, so it should also be set up.
Log on to SAP CRM and follow menu path IMG > Collaboration Projects (
Figure 3). The cProjects configuration shown in this article is carried out in the Collaboration Projects section of the SAP CRM IMG.
Figure 3
cProjects configuration area in SAP CRM
First I will configure the appearance of the cProjects interface. Follow IMG menu path Collaboration Projects > Basic Settings > Define General Interface Settings. This is the landing page for all cProjects users, such as the project manager, resource manager, and other project resources. Here you can define the header row and page information. The header could be your company logo and the page information could resemble your company’s Web site.
Figure 4 displays the output on the cProjects screen after you make your general interface settings. In my example, the header row is the SAP Experts logo and the page information is the
SAP Professional Journal advanced search page.
Figure 4
How cProjects is displayed on the user screen
Next, to define time units for the cProjects implementation, follow IMG menu path Collaboration Projects > Basic Settings > Define Time Units (
Figure 5). In my example, I’m using HR (hours) as the unit of work, but you can use minutes, days, weeks, or months. As a result of this configuration, users see the project time unit as hours on the project structure, resource staffing, and reporting areas in the cProjects user interface.
Figure 5
Define time units for cProjects
For the next step, configure what your users can and cannot see on the cProjects user interface. Your users should only be able to view the data they are authorized to see. Follow IMG menu path Collaboration Projects > Basic Settings > Define Initial Views for cProjects. Here, you can assign initial views to a role. Each user assigned to the role sees these views after accessing cProjects. For example, your project manager, resource manager, and individual team members should have different levels of access to data. In
Figure 6, the project manager role is configured to access more views on cProjects than the resource manager or team member roles. You can also restrict what a user can do based on the project type (e.g., for pre-sales projects, you can disable resource management and evaluations).
Figure 6
Configuration to define initial views for cProjects
Figure 7 displays how the project manager views cProjects now. The project manager role is configured to see all views except resource management. You can see this in the header area.
Figure 7
Sample cProjects view for a project manager
Next, define the project types you want to use in your cProjects and make project type-specific settings. Follow IMG menu path Collaboration Projects > Structure > Define Project Types (
Figure 8). The configured project types in this screen are shown in the insert in
Figure 8. Here, you should define all your project types, which can include Time & Materials, Fixed Price, Internal, Spot Consulting, and Pre-Sales. The background of
Figure 8 displays the output of this project type configuration. The user can use the Project Type drop-down menu to display the list of project types. (Note that the following figures have the same setup as
Figure 8, with the configuration as an insert and the results on the screen in the background.)
Figure 8
A cProjects user can select configured project types
Every project has different phases. Therefore, you must define the phases that are allowed under each project type. Follow IMG menu path Collaboration Projects > Structure > Define Phase Types. The insert in
Figure 9 displays a list of all the configured phase types. The Phase Type drop-down menu in
Figure 9 displays all phase types to the cProjects user.
Figure 9
The allowed phase types on your projects
Each phase can have one or more tasks, and you can configure what tasks are allowed on your project. Follow IMG menu path Collaboration Projects > Structure > Define Task Types to configure the task types that can be used in cProjects. The insert in the
Figure 10 displays the task type configuration.
Figure 10
Configure the allowed task type on your projects
You can now activate the object types for which you want to create object links in your project. Activated object types found in the standard systems are predefined in the standard SAP CRM system. Here’s an example of this: After you create a project in cProjects, you replicate this data into SAP ERP and integrate with PS, sales and distribution (SD), and materials management (MM). The integration element among these modules is the project work breakdown structure (WBS) element. The project created in cProjects after replication into SAP ERP creates WBS elements in PS, so the cProjects project ID is the same as the PS project WBS. After you activate the standard object links, you can assign the objects to your cProjects via this object link. The project manager (or other user) can access the SAP ERP project, purchase order, and sales contacts (among other things) with this object link. By adding the object links in cProjects, the user does not need to log on to various systems to view details such as purchase orders, sales contracts, or internal orders. Your system administrator can make appropriate settings based on your role so you can access data. Object links display a subset of data as defined by the system administrator as per your role. Object links do not take users to the target system.
To set this up, follow IMG menu path Collaboration Projects > Structure > Define Object Types for Object Links.
Figure 11 displays the configuration screen and possible object types available in the SAP system. You can also create custom object types. The project manager and team members can link purchase orders, sales orders, and project WBS elements via object link functionality. After the objects are linked, project team members can click the link to display details of the object.
Figure 11
Activate the object link and then link the object link to an object type
Figure 12 displays the location where the users can attach the object links by following menu path Projects > Structure > Object links.
Figure 12
Create links to SAP ERP projects, sales contracts, and purchase order line items
In the next configuration setting, you integrate components from SAP ERP HCM with business partners in cProjects. Follow IMG menu path Collaboration Projects > Resource Management > Business Partner > Set Up Integration with HR. Employee data is distributed in cProjects for employees from existing HR master data. This integration is enabled via ALE, as stated earlier. In the standard SAP system, business partners are not integrated with the SAP ERP HCM application components from the SAP ERP system. You can integrate your HR data as shown in
Figure 13. Set up what you want to integrate between your SAP ERP HCM and SAP CRM systems.
Figure 13
Set up integration with SAP ERP HCM for your cProjects
Here are some of the critical aspects of these configuration settings:
- Activate HR Integration = X: This switch specifies integration from an SAP ERP HCM system is active. This setting replicates employee data from SAP ERP HCM. Organizational units are integrated with the business partner. The switch displays whether employees are replicated from SAP ERP HCM using ALE or created locally.
- Integration of O-BP Activated = ON: Integration between the organizational unit and the business partner is active. When an organizational unit is created via the ALE inbox or in a dialog, a corresponding business partner is generated in the organizational unit role. Any changes made to organizational units are also made to the business partner. There are ON, OFF, and CREATE options. With the CREATE option, when an organizational unit is created, so is a business partner. If any changes are made to an organizational unit, the business partner is not updated.
- Integration of Employees/BP Activated = ON: The switch displays whether employees are replicated from SAP ERP HCM using ALE or created locally. Employees are copied from SAP ERP HCM using ALE. Therefore, they cannot be maintained as business partners.
- Number Range for BP for HR Employees = ZE: Define custom number ranges for your cProjects business partners (e.g., employees/vendor partner employees).
After the resource manager completes the staffing process, he or she should communicate project and staffing details to the team resources. You can enable this communication via groupware integration functionality in SAP CRM. (Your system administrator should already have set up this functionality). You need to assign templates or forms to your email and groupware communication. The forms are language specific. The standard system provides various forms as templates for the subject line and the body text of emails to the selected manager or resource. It also provides templates for emails describing tasks and announcing appointments. Follow IMG menu path Collaboration Projects > Resource Management > Basic Settings for Resource Management > Assign Forms for Emails and Groupware Communication.
Figure 14 displays various templates and form configuration. For my example, I used custom forms for the email subject and email body.
Figure 14
Assign a form for email communication
Project resource planning allows you to optimize your resource deployment. It focuses on using your employees efficiently and assigning them to projects or orders based on certain requirements and qualifications. Resource planning requires you to create roles for each project; specifically, you define possible project role types and assign them to the project types. The system then proposes these project role types for the creation of roles in the application. For each project role type, you can specify whether it is relevant for the resource search (i.e., whether you can use the resource search to staff this role). To set this up, follow IMG menu path Collaboration Projects > Resource Management > Define Project Role Types for Project Type (
Figure 15).
Figure 15
Project role configuration and setup
In
Figure 15, you define project roles. Also, you can configure project types with or without extended staffing by checking or unchecking the Ext.Staffing Process check box. If it is checked, this role can staff these resources directly without going through the resource management team. If you check the Res.Mgmt check box, this means the role is relevant for resource management. This specifies that the planned effort reduces the availability of resources and increases capacity utilization for the project role for which this indicator is set.
In
Figure 16, you define possible project role types and assign them to project types. Here you can control the availability of a project role for certain projects. For example, you could configure project role Architect to be available only on project types Time & Material, Education, and Fixed Price.
Figure 16
Define project role applicability to project types
Based on the roles configured in the system and the project type, the project manager can select the roles that can be staffed on the project via a drop-down menu (
Figure 17).
Figure 17
User interface of configured roles
Next, you define the cost/revenue rate used in costing. The cost rate is the internal cost rate charged to the employee cost center. The bill rate is the billing amount charged to the customer or client for project work. Cost rates and bill rates are maintained in CO-PA and replicated to SAP CRM by following IMG menu path Collaboration Projects > Connection to External Systems > Accounting Integration > Integration using single-object controlling > Replicate Cost/Revenue Rates in SAP ERP.
Project users cannot change cost rate and list rate values. If the bill rate is different from standard bill rates (e.g., if your project manager decides to add a premium or discount the billing rate), it overrides the standard bill rate. In some cases, your project manager may decide not to bill the customer for a re-work and can select the NonBillable check box. The project manager should follow menu path cProjects URL > Projects > Resources > Costing to make these adjustments (
Figure 18).
Figure 18
Project cost and revenue rates
cProjects is integrated with Microsoft Project and allows you to exchange data between these two applications. You can transfer data from Microsoft Project to cProjects and vice versa. After the project manager completes staffing the project roles with resources, he or she can export cProjects data into Microsoft Project and distribute this to project resources. In the next configuration setting, define the fields for exporting and importing from Microsoft Project. Follow IMG menu path Collaboration Projects > Connection to External Systems > Microsoft Project Integration > Assign Fields for Export. Here, you map cProjects fields to Microsoft Project fields. You can export to Microsoft Project from cProjects via menu path cProjects URL > Projects > Export.
Figure 19 displays how to export your project from cProjects to Microsoft Project, while
Figure 20 displays the exported project in Microsoft Project.
Figure 19
Download cProjects to Microsoft Project
Figure 20
Output of the exported cProjects into Microsoft Project
An evaluation is a project view of data extracted from a project. This view helps you measure the project’s progress, which activities are on track, and which activities need to be refined. You can define the threshold values used in evaluations to identify critical situations. To do this, follow IMG menu path Collaboration Projects > Evaluations > Define Attributes and Object Types for Evaluations (
Figure 21). This particular output is for a cost/revenue evaluation of my project.
Figure 21
Evaluation for cost/revenue
After the project is created and staffed, it is replicated via SAP CRM middleware into the SAP ERP system. You can then view it in PS using transaction CJ20N (Project Builder).
Figure 22 shows a project replicated from SAP CRM to SAP ERP.
Figure 22
Replicated project
Middleware Configuration
To enable communication between SAP CRM and SAP ERP, you must perform configuration steps for the SAP CRM middleware and related application components. Most of these configuration steps deal with communication between the SAP CRM server and related application components. In the SAP CRM server, you define Remote Function Call (RFC) communication parameters for the application components you will use. You can check the status of your middleware using the Monitoring Cockpit, a central monitoring and navigation tool. Basis administrators perform middleware configuration via IMG menu path Customer Relationship Management > CRM Middleware and Related Components. Here, the administrator can set up logical systems, RFC users, RFC destinations, queue settings, message flow setup, and groupware integration.
The data exchange between the SAP CRM server and the sites (such as SAP ERP and SAP NetWeaver BW) is defined in a replication model. Business object types are represented technically by business document (BDoc) types. A single replication object is generated from a BDoc type using the Administration Console.
You use SAP CRM middleware to replicate, synchronize, and distribute data between different components of SAP CRM. Its main part is provided by the SAP CRM server. It links the various types of data producers (such as the SAP ERP back end or the SAP CRM server applications) to provide project team members with the information they require.
Replication objects are grouped logically in publications (also known as data containers). A publication makes one or more replication objects available for replication. Sites can then subscribe to one or more publications to receive data relevant for their work. In a mobile scenario, you can assign employees to the company and organizations to a site.
Perform the following steps from the administration cockpit:
- Create the object type site: A site is a physical dataset and is a receiver or supplier of data for the replication defined on the SAP CRM server
- Subscribe the site to publications: Assign replication objects to a publication
- Define the replication objects: A replication object is an object that contains information on how a BDoc type is distributed
- Define criteria values: Control messaging by adding filter conditions (e.g., segment name and segment field name)
Follow menu path SAP Easy Access > SAP Menu > Architecture and Technology > Middleware > Administration > Administration Console or use transaction SMOEC to see the screen shown in
Figure 23.
Figure 23
Middleware Administration console
During monitoring messages between SAP CRM and SAP ERP, you can easily identify your project record by defining a dynamic queue name for your cProjects. In this example, I dynamically use the project ID as the queue name. You can define the queue name in table SMOFQFIND (
Figure 24). You can use transaction SM30 to maintain the queue name for BDoc type CRM_CPRJ_MBDOC. You can also track the message flow for your cProjects from the dynamic project ID that is maintained in table SMOFQFIND.
Figure 24
Define the dynamic queue name
The next step is to monitor the BDoc message flow between SAP CRM and other SAP systems. Some of the important transaction codes for monitoring BDocs are listed below:
- SMWP: Monitoring Cockpit
- SMW01: Display BDoc Messages
- SMW02: Display BDoc Message Summary
- SMW02A: BDoc Message Error Analysis
- SMWMFLOW: Display Message Flow Statistics
- SMWT: Display Middleware Trace
- SMQ1: Display Outbound RFC Queues
- SMQ2: Display Inbound RFC Queues
As an example, you can display BDocs using transaction SMW01. This transaction lists all the BDocs with error, intermediate state, rejected, and processed statuses.
Figure 25 shows the selection screen for transaction SMW01 and you can filter this report by BDoc Message instance such as BDoc type, BDoc Message ID, User and BDoc state, or Send Date and Time.
Figure 25
Selection screen for BDoc messages for transaction SMW01
Click the execute icon

(or press F8) to display the report for processed records. The report output displays all the projects that are successfully replicated to SAP ERP (
Figure 26).
Figure 26
Successful BDocs
When you run a report for error only, you see all the BDocs that failed during replication. You can get details about why they failed by selecting one of the error BDocs and clicking the show BDoc message errors/receivers icon

.
Figure 27 shows two issues with the BDoc. One of them is that the project currency and company code currencies are different. The other is that the company code is changed in cProjects, and it is different from the company code replicated earlier into SAP ERP.
Figure 27
Error BDoc and details
Figure 28 displays an intermediate BDoc. Their status is shown in yellow, which means they are in an intermediate state and can be reprocessed. Replication is not successful in this case. This can happen because the record is locked. You can reprocess the BDoc message by selecting the record and clicking the reprocess BDoc message icon

.
Figure 28
Intermediate BDoc and reprocessing BDocs
Srini Munagavalasa
Srinivasa (Srini) Munagavalasa has 14 years of experience in various SAP modules. Srini has worked on multiple SAP global implementations at major clients. He has experience as a project manager, deployment lead, build manager, and technical development manager.
If you have comments about this article or publication, or would like to submit an article idea, please contact the
editor.