C_SubstanceTextTP

DDL: C_SUBSTANCETEXTTP Type: view CONSUMPTION

Substance Name

C_SubstanceTextTP is a Consumption CDS View that provides data about "Substance Name" in SAP S/4HANA. It reads from 1 data source (I_SubstanceTextTP) and exposes 10 fields with key fields SubstanceUUID, Language. It has 2 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_SubstanceTextTP text from

Associations (2)

CardinalityTargetAliasCondition
[1..1] C_SubstanceQryTP _Substance $projection.SubstanceUUID = _Substance.SubstanceUUID
[0..*] I_LanguageText _LanguageText $projection.Language = _LanguageText.Language

Annotations (23)

NameValueLevelField
EndUserText.label Substance Name view
VDM.viewType #CONSUMPTION view
AccessControl.authorizationCheck #CHECK view
AbapCatalog.sqlViewName CSUBTP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.allowExtensions true view
ObjectModel.dataCategory #TEXT view
ObjectModel.transactionalProcessingDelegated true view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled true view
ObjectModel.representativeKey SubstanceUUID view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
UI.headerInfo.typeName Substance Name view
UI.headerInfo.title.label Substance Names view
UI.headerInfo.title.value SubstanceName view
UI.presentationVariant.sortOrder.by LanguageISOCode view
UI.presentationVariant.sortOrder.direction #ASC view
Search.searchable true view

Fields (10)

KeyFieldSource TableSource FieldDescription
KEY SubstanceUUID I_SubstanceTextTP SubstanceUUID
KEY Language I_SubstanceTextTP Language
LanguageForEdit I_SubstanceTextTP LanguageForEdit
LanguageName
LanguageISOCode _LanguageForEdit LanguageISOCode
SubstanceName I_SubstanceTextTP SubstanceName
_Substance _Substance
_Language _Language
_LanguageForEdit _LanguageForEdit
_LanguageText _LanguageText
/*----------------------------------------------------------------------------------------------------------------------
    View for Multi Language Name(s) of a Substance
------------------------------------------------------------------------------------------------------------------------*/
@EndUserText.label: 'Substance Name'

@VDM.viewType: #CONSUMPTION

@AccessControl.authorizationCheck: #CHECK

@AbapCatalog: {
  sqlViewName:            'CSUBTP',
  compiler.compareFilter: true,
  preserveKey:            true 
}

@ClientHandling.algorithm: #SESSION_VARIABLE

@Metadata: {
  allowExtensions: true
}

@ObjectModel: {
   dataCategory: #TEXT,
   transactionalProcessingDelegated: true,
   createEnabled:                    true,
   updateEnabled:                    true,
   deleteEnabled:                    true,
   representativeKey:                'SubstanceUUID',
   semanticKey:                      ['LanguageForEdit'],
   usageType: {
     dataClass:      #MASTER,
     serviceQuality: #C,
     sizeCategory:   #L
   }
}

@UI.headerInfo:{
  typeName: 'Substance Name',
  //typeNamePlural: 'Substance Names',

  title: {
    label: 'Substance Names',
    value: 'SubstanceName'
  }
}
@UI.presentationVariant.sortOrder : {
  by: 'LanguageISOCode',
  direction: #ASC
  }

@Search.searchable: true
define view C_SubstanceTextTP
  as select from I_SubstanceTextTP as text

  association [1..1] to C_SubstanceQryTP as _Substance    on $projection.SubstanceUUID = _Substance.SubstanceUUID

  association [0..*] to I_LanguageText   as _LanguageText on $projection.Language = _LanguageText.Language
{

  key   text.SubstanceUUID,

        @ObjectModel.foreignKey.association: '_Language'
  key   text.Language,

        @Consumption.valueHelp: '_LanguageForEdit'
        @ObjectModel.text.element: ['LanguageName']
        text.LanguageForEdit                                                        as LanguageForEdit,

        @ObjectModel.readOnly: true
        @Search:
        {
          defaultSearchElement: true,
          ranking: #MEDIUM,
          fuzzinessThreshold: 0.8
        }
        _LanguageForEdit._Text[1: Language = $session.system_language].LanguageName as LanguageName,

        @ObjectModel.readOnly: true
        _LanguageForEdit.LanguageISOCode                                            as LanguageISOCode,

        @Semantics.text: true
        @Search:
        {
          defaultSearchElement: true,
          ranking: #HIGH,
          fuzzinessThreshold: 0.8
        }
        text.SubstanceName,

        /* Associations */
        @ObjectModel.association.type: [#TO_COMPOSITION_ROOT, #TO_COMPOSITION_PARENT]
        _Substance,
        _Language,
        _LanguageForEdit,
        _LanguageText
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_LANGUAGE",
"I_LANGUAGETEXT",
"I_SUBSTANCETEXTTP"
],
"ASSOCIATED":
[
"C_SUBSTANCEQRYTP",
"I_LANGUAGE",
"I_LANGUAGETEXT"
],
"BASE":
[
"I_SUBSTANCETEXTTP"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/