-
Notifications
You must be signed in to change notification settings - Fork 0
Collaborative Draft
The Collaborative Draft feature enables multiple users of a Fiori Application to work simultaneously and collaboratively on the same draft instance of an entity, similar to co-working experiences one might be already used to from working with other state of the art web applications. The creator of a draft instance and all other authorized users are allowed to modify, activate, resume or discard the draft instance. To accomplish this, a permanent WebSocket-connection is established between the client and the ABAP Application Server to transfer data in real-time. It is also possible to invite other users to collaborate with you on a draft instance. However, an explicit invitation is not required to join a collaborative draft.

The purpose of the guide is provide you with basic information on how to include the Collaborative Draft feature in a RAP Business Object (BO) that you generate with the OData UI Service from Scratch generator.
You will also be provided with some pointers and ideas on how to expand your BO and enhance it with additional functionality, while having the opportunity to raise questions and address feedback directly.
- Concept documentation for Collaborative Draft Handling on the SAP Help Portal in the Learn section
- Blog Post on "How to collaborate on an entity of a draft enabled RAP Business Object?", which also provides a step-by-step guide on how to enable an existing draft-enabled RAP BO for collaborative draft
This feature is available for the following products:
- SAP BTP, ABAP environment as of 2508
- SAP S/4HANA Cloud as of 2508
- SAP S/4HANA and SAP S/4HANA Cloud, private edition as of 2025
If you get stuck or need a reference point, you may always refer to this simple Reference Scenario in the package /DMO/FLIGHT_COLLDRAFT, showcasing the Collaborative Draft feature.
This guide provides links to official documentation on the SAP Help Portal, that contains the steps required to...
- Create a RAP BO that is exposed as a OData V4 UI Service with a generator
- Enable Collaborative Draft capabilities for the exposed BO
- Access to the AI5 ABAP System in a SAP BTP ABAP environment
- Know your participant number, so you can identify your development package in the ABAP System
- Make sure to have an up-to-date version of the ABAP Development Tools in Eclipse (ADT)
Important
For organization purposes, please use the pre-generated feature-specific package for Collaborative Draft in AI5: ZDEVELOPER_COLLDRAFT_###
The goal is to...
- generate a draft-enabled RAP BO,
- and expose it as an OData V4 UI Service.
The entities and data fields you want to use for your application are entirely up to you, but to experience the Collaborative Draft feature, you need some editable data fields.
Your prompt could look like this, where ### is your assigned participant number:
Create a transactional application for a travel agency. Create a root entity for travels and a child entity for bookings. Add some fields like end_date, start_date, total_price and description with meaningful names. Create all repository objects with the suffix '###' and the prefix 'CD_'.
Generate your UI Service using the OData UI Service from Scratch Wizard. Step-by-step instructions on how to use the wizard can be found on the SAP Help Portal here.
After generating your BO, you should try to launch the Fiori Elements App Preview from the Service Binding artifact to verify, that the UI Service works as expected end-to-end.
Tip
If you are not very familiar with draft altogether, this would be a good opportunity to check the behavior of your application before adding Collaborative Draft capabilities.
Important
You don't have to concern yourself with role authorizations in this CodeJam. Your user is already equipped with all required business roles and catalogs to fully experience the Collaborative Draft.
Follow the guide for Developing Transactional Apps with Collaborative Draft Capabilities provided in the Develop section of the RAP documentation on the SAP Help Portal to add Collaborative Draft capabilities to your BO.
Once again, launch the Fiori Elements App Preview from the Service Binding artifact of your now modified BO to verify that the UI service works end-to-end as expected and experience the Collaborative Draft in action.
Tip
What about inviting other participants, or the experts present in the session, to collaborate with you on a draft?
- Combine Collaborative Draft with other features showcased in this CodeJam, for example, add Recommendations to your BO
- Add Event-driven Side Effects to your BO, another feature that makes use of a WebSocket-connection
- Add authorizations to your BO, for example:
- Restrict READ and EDIT based on an authorization-relevant field
- Allow EDIT only for users with a specific business role
- We appreciate your feedback. See Tell Us what You Think.
- A dedicated ABAP System in an SAP BTP ABAP environment (2602) is prepared for this event. Access the Fiori Launchpad here: AI5 Fiori Launchpad. Follow this link to create your ABAP Cloud Project in ADT
- To logon to the service instance, use your assigned username and password.
- You have been assigned a participant number (for example ###=042) and corresponding development packages ZDEVELOPER_### are already available in the system.
- Please work inside your assigned packages. There is one subpackage for every feature available.
- This CodeJam repository, especially the feature guides in the Wiki
- ABAP Flight Reference Scenario
- Flight Reference Scenario on GitHub
-
Flight Reference Scenario in the System in the package
/DMO/FLIGHT
- RAP Documentation on the SAP Help Portal
- RAP on SAP Community
- ABAP Cheat Sheets
- The RAP Experts present at the event - get in touch!
ABAP Platform - Roadmap Information
We appreciate your feedback. Use any of the options below:
- Provide general feedback for a feature
Let us know what you think about a feature you implemented:- Go to Issues in this repository. Choose New Issue-->Feature Feedback.
- Select the feature label, complete the form with ratings and comments, and submit.
- Report a problem (bug, documentation issue, enhancement idea, question)
Help us improve the feature by reporting problems you experience during development:- Go to Issues in this repository. Choose New Issue-->Feature Problem Report.
- Select the feature label and an additional problem category (
bug,documentationenhancement idea,question) - Describe your findings and submit.
- Provide event feedback
You will be asked to participate in a small survey when the event is concluded to give feedback regarding the CodeJam itself - Talk to the experts.