Skip to content

Collaborative Draft

Andre Fischer edited this page Feb 20, 2026 · 35 revisions

Feature Overview

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.

image

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.

💡 Development Effort: S 💡

Further Reading

Availability

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

Reference Scenario

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.


Development Guide

This guide provides links to official documentation on the SAP Help Portal, that contains the steps required to...

  1. Create a RAP BO that is exposed as a OData V4 UI Service with a generator
  2. Enable Collaborative Draft capabilities for the exposed BO

Prerequisites

  • 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)

1. Generate a Draft-Enabled OData V4 UI Service

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.

2. Add Collaborative Draft Capabilities to your BO

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?


Feature Enhancement Ideas

  • 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

Feedback

Technical Setup

  • 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.

Resources

RAP Outlook

ABAP Platform - Roadmap Information

Tell us what you think

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, documentation enhancement 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.

Clone this wiki locally