Custom CDS Views – What’s New in 2208
As a cloud customer, you will again receive a new version of the Custom CDS Views app with the SAP S/4HANA Cloud 2208 release*. So it is time again to provide you with the latest updates.
[TLDR] Here is the brief summary of the highlights:
- Copy functionality for existing Custom CDS Views [more]
- Intelligent “Suggest association condition” functionality [more]
- Ability to migrate (and rework) almost all Custom CDS views from the old app [more]
- Ability to exclude single elements from the analytics runtime extensibility [more]
- Support “null” in the association and filter conditions [more]
You can now copy existing custom CDS Views. A copy will duplicate the view, similar to a “save as” while keeping the structure and the scenario stable. The underlying views (in case of a view stack) will remain untouched. In other words, this is a regular and no “deep” copy.
This feature was requested by customers for various reasons: E.g, it comes handy when you plan to do some changes on an existing Custom CDS View and want to test them in a copy first or when you need to build some very similar CDS views with only minor changes. So I am very happy that we can finally offer it now.
We introduced the suggestion of the join condition a while ago but so far, we only added the key fields of the target data source. With this release, we added some more magic (well at least more convenience) and suggest a complete association condition if there are matching fields in the primary data source or in the projection.
The icon and button remain the same, they just “do more” now 🙂
We still have the old, deprecated Custom CDS Views app, but since last release, it is read only as you might you remember. One of the problems with that was that you could not rework your old Custom CDS views in the old app and you could not migrate them to the new app in some cases if they still had to be reworked. So this was a kind of a deadlock situation. With this release, you can now migrate all** Custom CDS views from the old app to the new app and, if needed, do the necessary rework there.
The analytics runtime extensibility allows to extend analytical queries during the runtime. This means that you can e.g. dynamically add new attributes to such a query that are so far only available in underlying views. By default, this behaviour is switched on, but there may be situations, when you do not want to enable this for certain fields. E.g., when you have added a field only for technical reasons or when it shall only be used in a calculation or case decision. In this case, you can now exclude this field from the runtime extensibility. By default, the switch is “off” which includes the field in the runtime extensibility game.
Especially if your data comes from different data sources, it may happen that the data contains values that are “null”. “Null” more or less means, not defined and is the initial value of an empty column in a table row.
The problem with these values is that they behave differently than just empty values. You would typically expect that “null” equals “null”, but this is not the case. “Null” is so to say unknown rather than a specific value and if you compare two unknown values, they are unlikely to be equal. Chances are high that they are not. This is the reason why in CDS views as well as in most databases “null” equals “null” is considered as false.
So it can make sense to check values for null or to filter null values.
The current raw data preview is quite basic and lots of you are missing options like filtering and sorting. Apart from that, the missing preview features are still keeping us from fully retiring the old Custom CDS Views app. Enough reasons to focus on improving the preview experience of custom CDS views.
Stay healthy & thanks for reading!
** Some Custom CDS Views can still not be migrated e.g., if they have contradicting scenarios and usages. These views will need to be refactored. In this rare cases you will be asked to open a ticket and we will then help to get the view fixed and migrated as well.