C_SubstanceTextTP
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)
| Source | Alias | Join Type |
|---|---|---|
| I_SubstanceTextTP | text | from |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | C_SubstanceQryTP | _Substance | $projection.SubstanceUUID = _Substance.SubstanceUUID |
| [0..*] | I_LanguageText | _LanguageText | $projection.Language = _LanguageText.Language |
Annotations (23)
| Name | Value | Level | Field |
|---|---|---|---|
| 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)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| 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":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA