C_ProdSubstnSet
Product Substitution Set
C_ProdSubstnSet is a Consumption CDS View that provides data about "Product Substitution Set" in SAP S/4HANA. It reads from 1 data source (I_ProdSubstnSet) and exposes 49 fields with key field MDSubstnUUID.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ProdSubstnSet | I_ProdSubstnSet | from |
Annotations (9)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| EndUserText.label | Product Substitution Set | view | |
| ObjectModel.representativeKey | MDSubstnUUID | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| VDM.viewType | #CONSUMPTION | view | |
| UI.headerInfo.typeNamePlural | Product Substitutions | view |
Fields (49)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MDSubstnUUID | MDSubstnUUID | ||
| MDSubstnObjectType | MDSubstnObjectType | |||
| Product | Product | |||
| ProductDescription | ||||
| SubstituteProduct | SubstituteProduct | |||
| SubstituteProductDescription | ||||
| MDSubstnContextObjectType | MDSubstnContextObjectType | |||
| Plant | Plant | |||
| PlantName | ||||
| MDSubstnContextObjectType2 | MDSubstnContextObjectType2 | |||
| MDSubstnGroup | MDSubstnGroup | |||
| MDSubstnGroupDescription | ||||
| MDSubstnVersionValue | MDSubstnVersionValue | |||
| MDSubstnSet | MDSubstnSet | |||
| MDSubstnIsExit | MDSubstnIsExit | |||
| MDSubstnIsLeading | MDSubstnIsLeading | |||
| MDSubstnSequenceValue | MDSubstnSequenceValue | |||
| MDSubstnConversionNumerator | MDSubstnConversionNumerator | |||
| MDSubstnConversionDenominator | MDSubstnConversionDenominator | |||
| MDSubstnConversionPercent | MDSubstnConversionPercent | |||
| MDSubstnValidityStartDate | MDSubstnValidityStartDate | |||
| MDSubstnValidityStartTime | MDSubstnValidityStartTime | |||
| MDSubstnValidityEndDate | MDSubstnValidityEndDate | |||
| MDSubstnValidityEndTime | MDSubstnValidityEndTime | |||
| TimeZoneID | TimeZoneID | |||
| MDSubstnReason | MDSubstnReason | |||
| MDSubstnReasonDescription | ||||
| MDSubstnStatus | MDSubstnStatus | |||
| MDSubstnStatusDescription | ||||
| MDSubstnIsRlvtForATPProd | MDSubstnIsRlvtForATPProd | |||
| MDSubstnIsRelevantForESPP | MDSubstnIsRelevantForESPP | |||
| CreatedByUser | CreatedByUser | |||
| CreationDateTime | CreationDateTime | |||
| LastChangedByUser | LastChangedByUser | |||
| LastChangeDateTime | LastChangeDateTime | |||
| _MDObjectType | _MDObjectType | |||
| _ContextObjectTypeCode | _ContextObjectTypeCode | |||
| _ContextObjectTypeCode2 | _ContextObjectTypeCode2 | |||
| _Product | _Product | |||
| _SubstituteProduct | _SubstituteProduct | |||
| _Plant | _Plant | |||
| _Group | _Group | |||
| _ExitIndicator | _ExitIndicator | |||
| _LeadIndicator | _LeadIndicator | |||
| _TimeZone | _TimeZone | |||
| _Reason | _Reason | |||
| _Status | _Status | |||
| _MDSubstnIsRlvtForATPProd | _MDSubstnIsRlvtForATPProd | |||
| _MDSubstnIsRelevantForESPP | _MDSubstnIsRelevantForESPP |
@AccessControl:{
authorizationCheck: #CHECK,
personalData.blocking: #REQUIRED
}
@EndUserText.label: 'Product Substitution Set'
@ObjectModel:{
representativeKey: 'MDSubstnUUID',
semanticKey: [ 'Product', 'SubstituteProduct', 'Plant', 'MDSubstnGroup', 'MDSubstnReason' ],
usageType:{
dataClass: #MASTER,
sizeCategory: #L,
serviceQuality: #C
}
}
@VDM: {
viewType: #CONSUMPTION
}
@UI: {
headerInfo: {
typeNamePlural: 'Product Substitutions'
}
}
/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ] } */
define view entity C_ProdSubstnSet
as select from I_ProdSubstnSet
{
@UI: {
hidden: true
}
key MDSubstnUUID,
@UI: {
hidden: true
}
MDSubstnObjectType,
@Consumption: {
semanticObject: 'Material'
}
@ObjectModel.text.element: ['ProductDescription']
Product,
@UI: {
hidden: true
}
_Product._Text[1:Language=$session.system_language].ProductName as ProductDescription,
@Consumption: {
semanticObject: 'Material'
}
@ObjectModel.text.element: ['SubstituteProductDescription']
@UI: {
lineItem: [
{ position: 10, importance: #HIGH }
],
textArrangement: #TEXT_LAST
}
SubstituteProduct,
@UI: {
hidden: true
}
_SubstituteProduct._Text[1:Language=$session.system_language].ProductName as SubstituteProductDescription,
@UI: {
hidden: true
}
MDSubstnContextObjectType,
@ObjectModel.text.element: ['PlantName']
@UI: {
hidden: true
}
Plant,
@UI: {
hidden: true
}
I_ProdSubstnSet._Plant.PlantName,
@UI: {
hidden: true
}
MDSubstnContextObjectType2,
@ObjectModel.text.element: ['MDSubstnGroupDescription']
@UI: {
hidden: true
}
MDSubstnGroup,
@UI: {
hidden: true
}
_Group._GroupText[1:Language=$session.system_language].MDSubstnGroupDescription,
@UI: {
hidden: true
}
MDSubstnVersionValue,
@UI: {
hidden: true
}
MDSubstnSet,
@UI: {
lineItem: [
{ position: 40, importance: #HIGH }
]
}
MDSubstnIsExit,
@UI: {
lineItem: [
{ position: 20, importance: #HIGH }
]
}
MDSubstnIsLeading,
@UI: {
lineItem: [
{ position: 30, importance: #HIGH }
]
}
MDSubstnSequenceValue,
@UI: {
lineItem: [
{ position: 50, importance: #MEDIUM }
]
}
MDSubstnConversionNumerator,
@UI: {
lineItem: [
{ position: 60, importance: #MEDIUM }
]
}
MDSubstnConversionDenominator,
@UI: {
lineItem: [
{ position: 70, importance: #MEDIUM }
]
}
MDSubstnConversionPercent,
@UI: {
hidden: true
}
MDSubstnValidityStartDate,
@UI: {
hidden: true
}
MDSubstnValidityStartTime,
@UI: {
hidden: true
}
MDSubstnValidityEndDate,
@UI: {
hidden: true
}
MDSubstnValidityEndTime,
@UI: {
hidden: true
}
TimeZoneID,
@ObjectModel.text.element: ['MDSubstnReasonDescription']
@UI: {
lineItem: [
{ position: 80, importance: #HIGH }
]
}
MDSubstnReason,
@UI: {
hidden: true
}
_Reason._Text[1:Language=$session.system_language].MDSubstnReasonDescription,
@ObjectModel.text.element: ['MDSubstnStatusDescription']
@UI: {
lineItem: [
{ position: 100, importance: #MEDIUM, criticality: 'MDSubstnStatusCriticality', criticalityRepresentation: #WITHOUT_ICON }
],
textArrangement: #TEXT_ONLY
}
MDSubstnStatus,
@UI: {
hidden: true
}
case MDSubstnStatus
when 'A' then 3
else 0
end as MDSubstnStatusCriticality,
_Status._Text[1:Language=$session.system_language].MDSubstnStatusDescription,
MDSubstnIsRlvtForATPProd,
@UI: {
hidden: true
}
MDSubstnIsRelevantForESPP,
CreatedByUser,
CreationDateTime,
LastChangedByUser,
LastChangeDateTime,
/* Associations */
_MDObjectType,
_ContextObjectTypeCode,
_ContextObjectTypeCode2,
_Product,
_SubstituteProduct,
_Plant,
_Group,
_ExitIndicator,
_LeadIndicator,
_TimeZone,
_Reason,
_Status,
_MDSubstnIsRlvtForATPProd,
_MDSubstnIsRelevantForESPP
}
where
MDSubstnObjectType = 'Product'
and MDSubstnContextObjectType = 'Plant'
and(
MDSubstnContextObjectType2 is initial
or MDSubstnContextObjectType2 is null
)
and MDSubstnSet is not initial
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MDSUBSTNGRP",
"I_MDSUBSTNGRPTEXT",
"I_MDSUBSTNRSN",
"I_MDSUBSTNRSNTEXT",
"I_MDSUBSTNSTS",
"I_MDSUBSTNSTSTEXT",
"I_PLANT",
"I_PRODSUBSTNSET",
"I_PRODUCT",
"I_PRODUCTTEXT"
],
"ASSOCIATED":
[
"I_INDICATOR",
"I_MDSUBSTNGRP",
"I_MDSUBSTNRSN",
"I_MDSUBSTNSTS",
"I_PLANT",
"I_PRODUCT",
"I_SAPOBJECTTYPE",
"I_TIMEZONE"
],
"BASE":
[
"I_PRODSUBSTNSET"
],
"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