cancel
Showing results for 
Search instead for 
Did you mean: 

Can we create complex transactional FIORI apps using RAP?

coishr
Explorer
0 Kudos

We have to migrate ESS' webdynpro applications to UI5 Fiori apps. But our webdynpro applications are very complex and bulky. We are receiving a lot of input data in non-tabular format and then processing through complex logic. There are numerous screen level validations as well. Upon processing, the data is written down in multiple standard as well as custom tables. 

Can we create such complex Fiori apps using SAP RAP Model or we should follow some other model for this task. One approach is to create multiple ODATA services without CDS view and Annotations and then process the data in individual function modules. CDS/BOPF/RAP are appropriate for tiny applications where not much front end coding is required.

For example, can we create travel expense application using SAP RAP model ?

Accepted Solutions (0)

Answers (3)

Answers (3)

Andre_Fischer
Product and Topic Expert
Product and Topic Expert
0 Kudos

RAP can certainly be used to build complex applications as you can see from several large applications.

SAP S/4HANA development has been completely moved to the ABAP RESTful application programming model.

1. Complex validation and determinations can be used if your RAP application uses the draft concept. Here you can validate the data before it is actually persisted.

2. From what you describe your implementation is a brownfield implementation and would either have to use a managed implementation with unmanaged save or an umanaged implementation where the developer has to take care of all create, update and delete statements.

Unmanaged Save | SAP Help Portal

3. As of 2023 you can also model side-effects already in the backend. In older SAP S/4HANA releases side effects can also be used, but have to be modelled on SAPUI5 side. Side effects allow for responsive UI's.

Side Effects | SAP Help Portal

4. When a Fiori Elements List report template does not suite your needs there is always the possibility to build a SAPUI5 app based on a code based implementation.

 

 

thomas_mller13
Participant
0 Kudos

Due to the fact that the http connection is stateless the draft has to be managed on the frontend or it has to be managed in the database. The first case is bad since all the validation information is on server side. The second case is bad since you store records in DB that have to be deleted later. This concept is not elegant and destroys the possibility to create applications using a MVC model. MVC was possible with WebDynpro and is perfectly possible with SAPGUI. But it is not possible with UI5. The draft concept was not existing in the very beginning of UI5. So obviously SAP didn't realize that there is a problem at all in the beginning. UI5 is simply not mature and it will be probably never. SAP makes everything new but worse than before. I cannot understand this strategy.

coishr
Explorer
0 Kudos
@Andre_Fischer can you provide some tutorials for creating complex fiori apps with heavy and complex GUI using RAP ?
thomas_mller13
Participant
0 Kudos

If you have a complicated validation logic and you want to encapsulate this logic in a ABAP model class, this class is not persistent over serveral roundtrips due to the REST API conecpt. Thus, the validation has to be made on client side, which is very bad, since all the information for validation is on server side. E.g. the concept of restful applications in the context of complicted business transactions with user interaction is a stupid idea. 

coishr
Explorer
0 Kudos
so what should be the approach to develop fiori apps for such scenarios? should we remove client side validations, take all the input from the user and send it to backend through multiple odata services. And process the input data in backend and display the result back to client ?
Andre_Fischer
Product and Topic Expert
Product and Topic Expert
0 Kudos
It is not a stupid idea. The whole development of SAP S/4HANA is based on the ABAP RESTful application programming model now.
thomas_mller13
Participant
0 Kudos

There is a concept called "Draft Handling" for UI5 that is intended to substitute stateful transaction handling. Of course this is a crutch, but it should actually solve your problem.

coishr
Explorer
0 Kudos
my query is i dont want to create list report based apps. i will have around 50+ individual input fields. some inputs will be in tabular format. and all these inputs will be processed after applying client side validations and then the results will be updated in backend ERP table. Whats the best way out to achieve this ? Would RAP be able to fulfill this requirement ?