C_ProdSubstnSet

DDL: C_PRODSUBSTNSET Type: view_entity CONSUMPTION

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)

SourceAliasJoin Type
I_ProdSubstnSet I_ProdSubstnSet from

Annotations (9)

NameValueLevelField
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)

KeyFieldSource TableSource FieldDescription
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":""
}
}*/