Product Information
Customer Projects Migration – Part 1: Migration of Fixed Price Projects (ongoing and partially billed) and Time & Expense Projects
Co-Authored by Anja Flatau
In this blog series I would like to provide answers for the following topics related to the migration of CPM projects (Customer Project Management – Project-Based Services) :
- General SAP recommendation: close projects in legacy system and create only new projects in SAP S/4HANA Cloud and do not try to migrate ongoing projects with
the full current status - If this is not possible then this blog series provides an approach how to handle the migration of CPM projects.
Part 1 (this blog): Commercial Project Migration – Part 1: Migration of Fixed Price Projects (ongoing and partially billed) and Time & Expense Projects
- Posting Logic
- Migration of Fixed Price Projects (ongoing and partially billed)
- Migration of Time & Expenses Projects
- Migration of Periodic Service Projects
- Migration of Bundles in Projects (Fixed Price & Periodic Service)
Out of scope in this blog series:
- Migration of CPM Projects in phase: “Completed” or “Closed”.
- Project duration of more than 5 years is not recommended. Projects with a longer duration decrease upload performance significantly.
- Down Payments / Down Payment Requests
- Standalone Selling Price (SSP)
Migration Flow: Step-by-Step Process
Preparation of project data
Prerequisites – Master Data Objects
Before the customer project migration can start, the following objects have to be maintained or migrated to the system:
- Customer Projects (with CPM master data migration object)
- Chart of Accounts
- Cost & Profit Centers
- Service Organizations
- Customers / Suppliers
- Materials
- Employees
- Cost & Sales rates
- Tax codes
- Bank accounts
- Exchange rates
Prerequisites – Finance Object Migration
The finance migration is independent from the ongoing projects migration. Nevertheless there are certain implications to be considered:
- Open Items:
- Are migrated as part of the financial migration
- When building up the current project status, open items have to be build up for the project, but have to be reversed on the customer account in order not to create
double entries
- Account balances:
- Are also build up during financial migration
- Whatever needs to be posted to build up the project status has to be cleaned up afterwards not to impact the account balances
- Tax reporting:
- is executed in the legacy system until cutover
- Tax postings are never transferred / migrated to the new S4H Cloud system
- How to handle this see slide Sales tax rates: all equal to 0%
Prerequisites – Set sales tax rates all equal to 0%
- All sales tax rates should be equal to 0% during billing. This will avoid the creation of tax amounts.
- The reason for this, is that we are not obliged to reverse the tax amounts afterwards.
- Before cut-over date set tax conditions to “tax exempt” (e.g. Germany: Tax Code A0)
Migration of project data
Migration of Fixed Price Projects
Ongoing fixed price projects can have been partially billed in the legacy system. The billed amount should be migrated into the new S/4HANA Cloud system.
Assumption: the migration approach is based upon the default revenue recognition key for fixed price projects “SPFP”.
Process:
App: Manage Your Solution
- Migration of CPM Projects via Migration Cockpit Object “CPM project” is supported in following phases: In-Planning, Contract Preparation, In-Execution
- The “CPM Project” can be enhanced with the App „Custom Fields and Logic” adding custom fields in the application.
If the “CPM Project” is enhanced this way, the custom fields will be reflected automatically also in the XML template. - The following objects must already have been maintained or migrated: Customer Master, Employee Master, Material Master, Cost Center Master, Profit Center Master,
Service Organization
Process:
- Download the migration template “CPM project”.
- Download the BH5 test script from https://rapid.sap.com/bp/scopeitems/BH5
- Follow the procedure described in the BH5 test script.
Outcome:
- Project in Stage “In Execution”
- Work Packages / Work Items
- Activity / Expense Planning
- Sales Order Header / Item
- Billing Plan Item
App: Plan Customer Projects
Check if project plan was created for all fix price work packages – without project plan data no PoC can be calculated!
Check if your billing plan was created -> Advice: for history billing plan entries ONE aggregated billing plan item would be sufficient and makes revenue migration easier
(less repostings / clean up)
Time postings from legacy system
App: Enter Activity Allocation
- Prerequisite: Creation of “Dummy Migration Cost Center” which is used as Sender Cost Center during Activity Allocation posting
- Upload already posted hours via app: Enter Activity Allocation (Scope Item J11)
- Level of aggregation: Hours by activity type, work package and work item (if applicable). Personnel number, service rendered date, text etc. not necessary, if no
employee specific cost rates exist. All postings can be done with last date of the period before the Go-Live e.g. 31.12. is go-live is 01.01. - Outcome:
- Correct number of hours per activity type on the project
- Correct cost on the project for POC calculation
Expense postings from legacy system
- Upload via Migration Cockpit Object: FI – G/L account balance and open/line item
- Summation of expenses per primary cost account (expense account) with level of detail: work package of project
- Expense G/L account line with reference to work package (debit) against the offset migration G/L account
- Expense G/L account line with reference to dummy cost center (credit) against the offset migration G/L account
- Outcome:
- Correct cost on the project for PoC calculation
- Expense G/L and Migration G/L both zero
Posting logic for historical revenue: Example
Create billing documents for already billed revenue of the project
App: “Release Billing Proposal”
Outcome: Debit Memo Request is created -> it would be sufficient to have one invoice for all historical revenue
App “Create Billing Documents”:
Outcome: Billing document out of DMR for historical revenue is created
“Tax Exempt” tax code is triggered: No tax line is generated!
Journal entry is created.
Billing Plan Item is marked as “Invoiced”
Reversal of Customer Open Items against Migration Account and Dummy Project
App: Post with Clearing
Step 4 in “Posting Logic” diagram:
- Enter the document date and posting date (choose same date as open items migration date)
- Enter company code
- Select Currency Rate
- Enter Posting Key “40” (Debit entry)
- Provide Account: Revenue Account against which was posted during billing e.g. 41910000 Billed Revenue Dom. – Time (see Journal Entry)
- Enter the amount (it is possible to re-post all open items of one customer at once)
- Enter the tax exempt Tax Code e.g. A0
- Select WBS element of the dummy migration project
- Choose “Process Open Items”
- Enter company code
- Change Account type to “D” (Customer)
- Select Customer ID
- Choose “Process Open Items”
- Click “Select All” (All items are activated by default)
- Click “Deactivate Items”
- Choose and activate the items which shall be reversed (items out of fixed price project migration)
- Click “Post”
App: Manage Customer Line Items
Check Journal Entry and Clearing Entry
App: Run Revenue Recognition – Projects
- In order to create the right values for “Deferred Revenue” and “Accrued Revenue” the revenue recognition run
has to be executed - In this run the “Deferred Revenue” out of the billing process is corrected according to the current PoC which has be calculated during the cost migration
Migration of Time & Expenses Projects:
App: Enter Activity Allocation
Current and outstanding transactional data
Hours:
- SAP recommendation: Bill all open Times & Expenses in the legacy system and do not migrate.
- As an exceptional case, post open hours from T&M Projects with highest level of detail by using Enter Activity Allocation app
- Alternative 1: Upload via API of transaction KB21N of S/4HANA Cloud Create Allocation Posting
- Alternative 2: Capture hours with the app “Enter Activity Allocation” (Scope Item J11)
Expenses:
- SAP recommendation: Bill all open Times & Expenses in the legacy system and do not migrate.
- As an exceptional case, upload via Migration Cockpit Object: FI – G/L account balance and open/line item
- One expense G/L account line with reference to project (workpackage) against the offset migration G/L account
- One expense G/L account line with reference to dummy cost center against the offset migration G/L account
- Outcome:
- WIP on the project
- Expense G/L and Migration G/L both zero
On Accounts:
- Upload via Migration Cockpit Object: FI – G/L account balance and open/line item
- One On Account G/L account line with reference to project (billing item) against the offset migration G/L account
- One On Account G/L account line with reference to dummy cost center against the offset migration G/L account
- Outcome:
- On Account on the project
- On Account G/L and Migration G/L both zero
Revenue Accruals:
- Entered via app: Revenue Recognition (Event-Based) Projects
- Outcome:
- Extra revenue accruals posted on the project
Nikolai Emling Great blog and will help lot of customers/projects!
Nikolai Emling Great , very detailed . Thank you Nikolai
Nikolai Emling Anja Flatau Thank you for sharing!
Thanks for sharing!
Finally ;-)!
Thanks for sharing! 🙂
Perfect blog perfectly written! Kudos 😀👍🏼
Great! Now we can use Apps. 'Manage Direct Activity Allocation' instead of Apps. 'Enter Activity Allocation' (obsolete).
Hi Nikolai Emling
Great blog!
I would like to know on the migration of actual time postings. After the latest upgrade, we don't have "Enter Activity Allocation" app available in S/4HANA Cloud. Do you know what is the replacement of this app and how can we do actuals time migration?
Regards,
Ann Paul
Hi Ann,
thanks for your feedback.
The replacement app is "Manage Direct Activity Allocation".
Beside the new Fiori UI you can now download xls templates to use for uploading (migrating) allocation items, e.g. time confirmation actuals.
Another great new feature: Copy the attributes of one allocation to create a new allocation.
More information:
https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F3697')/S27
Best regards,
Nikolai
Hi Nikolai Emling
I went through "Manage Direct Activity Allocation" and found that there is no option of mass upload available in this app. We can create new items and download the allocation items to .xls file. But if we need to migrate time records, it should allow mass upload through a template which is not available.
Am I missing something?
Regards,
Ann Paul
Hi Ann,
there should be an "Upload" button above the allocation items table.
Use this button to download the template (blank template or with current items).
Fill out the template and upload it by clicking on "Add".
Best regards,
Nikolai
1
2
Thank you so much Nikolai Emling for the detailed explanation. I could find it!
But for some reason, I am getting a runtime error for which I have raised an SAP incident as suggested in the error message.
Hi Nikolai Emling
Can you also please let me know if there is a need to change the accounting document type of data migration for the invoicing process? If yes, which is the configuration item to do the same?
Regards,
Ann Paul
Hi Ann,
No, configuration changes are not needed for historical revenue migration - creation of billing documents for already billed revenue of the project (Step 3).
Professional Services invoices / billing documents (billing type CI01) are always posted with accounting document type RV.
RV indicates billing document transfer, and is the default document type for SD billing documents (i.e. customer invoices).
Best regards,
Nikolai
Thank you so much for the clarification!! Nikolai Emling
Nikolai, could you please clarify the function of the "on account" conversion that you describe under the T&M scenario. There are two questions: