Updated 13 October 2023. The app is now also available for SAP S/4HANA, on-premise edition or SAP S/4HANA Cloud, private edition, 2023 at the GitHub repository, branch ABAP-platform-2023.
A good day to you and welcome to another round of 'What's New in the Feature Showcase App' show!
*audience applause*
My name is Jessie and I am your host today from the ABAP Platform. If you are new onto the scene, read
this blog post to find out what exactly this
feature showcase app is. And without further ado, let's dive right into the plethora of features that are available in conjunction with the newest release of SAP BTP, ABAP Environment (aka Steampunk) Release 2308.
Leading Entity
Leading Entity, now I know where to click
You can now mark an entity as the leading node in a service. This would be then be reflected in the service binding, and the entity would be shown with a tiny 'L', thus making it easier for users to find the root node/starting point for the app preview.
👆 #LeadingEntity
IANA Timezone
With an annotation, you can convert a timezone to the IANA standard
and assign it to a timestamp, which will automatically be converted.
This can also be used in an action input parameter (see next point).
👆 #IANATimezone ´,
#IANATimezoneAParameter
Mandatory Action Parameter
Mandatory Field(s) in an Action Input. IANA Timezone also pops its head out
Following in the footstep of mandatory fields of an instance, you can now mark field(s)/parameter(s) in action input as mandatory. This is shown in UI with a red star.
👆 #MandatoryParameter
QuickView - Finally working in oData V4
QuickView, not just a dream
After a long wait, we can finally announce that QuickView is working for oData V4 services. Click on a QuickView link, lo and behold, a pop up box appears.
👆 #QuickView
It is also possible to setup QuickView for a target that does not have UUID keys, you just need to use a null value indicator for referential constraints to be generated.
👆 #QuickViewNullValueIndicator
A new Way to declare Semantic Objects
Instead of using @Consumption annotation to declare semantic objects, you can now declare them at a number of @UI annotations, e.g. @UI.lineItem, @UI.fieldGroup, etc.
👆 #UISemanticObject
What's new for Actions
Inline Actions
You can now configure an action to be inline. How the action looks like, depends on whether it is on the list report or object page. See images below for a clearer view.
Line Item, action button in individual lines instead of toolbar
Object Page, action button in form instead of section
👆 #InlineActionInLineItem
👆 #InlineActionInForm
Copy Action
Copy is not part of the CUD operation of the RAP framework, however you can define a factory action to deep copy an instance. Adding a new annotation will instruct UI to render the Copy button harmoniously with Edit and Delete, depending on whether it is in the list report or object page. See images below for a clearer view
👆 #CopyActionInLineItem
👆 #OPCopyAction
Determining Actions
Action my foot(er)!
If you prefer to have the action at the footer of the object page instead, we got you covered.
👆 #OPDetermineAction
DataFieldWithAction - A slightly different Action 'Button'
The major difference between this new data field and DataFieldForAction, is that the label is tied to a data value and not just a general text you define. Another noticeable difference is that the button is now a link, though that may change in the future. See images below for a clearer view of how it looks in list report and object page.
👆 #WithActionInLineItem
👆 #WithActionInOP
And not forgetting the underdogs, a couple of features that were already available before but have not been showcased yet.
Exporting List Report to PDF
I prefer PDF
You know about exporting the list report into excel, but did you know you could also export them to PDF? Now you have twice the headache of deciding which format to choose.
👆 Export to PDF
useForValidation in Value Help
You can't give a wrong answer here, I tried
You can use value help as an input validator. But take care to not abuse the usage, read the Guide to know why.
👆 #useForValidationVH
And with this, we come to the end of our show. A gentle reminder that if you already have the previous version of the app in your system, run the data generator after you have done the pull and activated the objects.
Try out the
new release today and win(get) yourself a beautiful Fiori app. Feedback and comments are also very much welcomed. See you next release!