I_ProdCmplncPhrsTxtWthFallback

DDL: I_PRODCMPLNCPHRSTXTWTHFALLBACK Type: view COMPOSITE Package: EHFND_RAP_PHRASE

Text for every Phrase in every Language

I_ProdCmplncPhrsTxtWthFallback is a Composite CDS View that provides data about "Text for every Phrase in every Language" in SAP S/4HANA. It reads from 1 data source (P_ProdCmplncPhrsTxtWthFallback) and exposes 5 fields with key field ProdCmplncPhrsUUID. Part of development package EHFND_RAP_PHRASE.

Data Sources (1)

SourceAliasJoin Type
P_ProdCmplncPhrsTxtWthFallback P_ProdCmplncPhrsTxtWthFallback from

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IPHRSTXTFB view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Text for every Phrase in every Language view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.dataCategory #TEXT view
ObjectModel.representativeKey ProdCmplncPhrsUUID view
VDM.viewType #COMPOSITE view

Fields (5)

KeyFieldSource TableSource FieldDescription
KEY ProdCmplncPhrsUUID ProdCmplncPhrsUUID
ProdCmplncPhrs ProdCmplncPhrs
ProdCmplncPhrsCode ProdCmplncPhrsCode
ProdCmplncPhrsILLText ProdCmplncPhrsILLText
ProdCmplncPhrsEnglishText ProdCmplncPhrsEnglishText
@AbapCatalog: {
  sqlViewName: 'IPHRSTXTFB',
  compiler.compareFilter: true,
  preserveKey: true }

@AccessControl.authorizationCheck: #NOT_REQUIRED

@ClientHandling.algorithm: #SESSION_VARIABLE

@EndUserText.label: 'Text for every Phrase in every Language'

@ObjectModel: {
  usageType: {
    serviceQuality: #A,
    sizeCategory:  #L,
    dataClass: #MASTER },
  dataCategory: #TEXT,
  representativeKey: 'ProdCmplncPhrsUUID' }

@VDM.viewType: #COMPOSITE

define view I_ProdCmplncPhrsTxtWthFallback
  as select from P_ProdCmplncPhrsTxtWthFallback
{
      /**** Keys ****/

  key ProdCmplncPhrsUUID                   as ProdCmplncPhrsUUID,

      //      //Needed for VDM conformity - a text node needs the language as a key field - Is it an issue if we leave it out?

      //      @Semantics.language: true

      //  key cast($session.system_language as langu preserving type )                       as Language,



      /**** Content ****/

      @Semantics.text: true
      cast(
        case
          when ProdCmplncPhrsCode is initial
            then ProdCmplncPhrsText
          when ProdCmplncPhrsCode is not initial
            then concat('(', concat(ProdCmplncPhrsCode, concat_with_space(')', cast(ProdCmplncPhrsText as ehfnd_description_xxl), 1)))
        end
      // There might be a bit of text which is cut of with this cast. We can't work around this, as the case can't result in anything longer.

      // Currently we can not change this as...

      // 1.) Result of Concat Operation has a maximum length of 1333

      // 2.) Cast from Char to String or SString is not supported

      // 3.) Maximum lentgth of CDS-Char-Fields is 1333

      as ehfnd_phrs_text preserving type ) as ProdCmplncPhrsText,

      ProdCmplncPhrs                       as ProdCmplncPhrs,
      ProdCmplncPhrsCode                   as ProdCmplncPhrsCode,
      ProdCmplncPhrsILLText                as ProdCmplncPhrsILLText,
      ProdCmplncPhrsEnglishText            as ProdCmplncPhrsEnglishText
}