C_ProdSubstnExclsn

DDL: C_PRODSUBSTNEXCLSN Type: view_entity CONSUMPTION

Product Exclusion

C_ProdSubstnExclsn is a Consumption CDS View that provides data about "Product Exclusion" in SAP S/4HANA. It reads from 1 data source (I_MDSubstnExclsn) and exposes 26 fields with key field MDSubstnUUID. It has 4 associations to related views. It is exposed through 1 OData service (UI_PRODSUBSTITUTION_MANAGE). It is used in 1 Fiori application: Manage Substitutions - Products.

Data Sources (1)

SourceAliasJoin Type
I_MDSubstnExclsn I_MDSubstnExclsn from

Associations (4)

CardinalityTargetAliasCondition
[1..1] I_Product _Product $projection.Product = _Product.Product
[0..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[1..1] I_Indicator _MDSubstnIsRlvtForATPProd $projection.MDSubstnIsRlvtForATPProd = _MDSubstnIsRlvtForATPProd.IndicatorValue
[1..1] I_Indicator _MDSubstnIsRelevantForESPP $projection.MDSubstnIsRelevantForESPP = _MDSubstnIsRelevantForESPP.IndicatorValue

Annotations (6)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
EndUserText.label Product Exclusion view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.serviceQuality #A view
VDM.viewType #CONSUMPTION view

OData Services (1)

ServiceBindingVersionContractRelease
UI_PRODSUBSTITUTION_MANAGE UI_PRODSUBSTITUTION_MANAGE V2 C1 NOT_RELEASED

Fiori Apps (1)

App IDApp NameTypeDescription
F4785 Manage Substitutions - Products Transactional An application to manage product substitutions

Manage Substitutions - Products

Business Role: Master Data Specialist - Product Data

With this app, you can create and manage product substitutions. You can use this app to substitute a product with another product. For example, a supplier selling product A realizes that the product is out of stock. The supplier can substitute the product with product B to fulfill business requirements. You can create multiple substitutions for a product. Additionally, you can create aATP and eSPP relevant product substitutions. Note Extended Service Parts Planning (eSPP) application area does not support groups. Advanced Available To Promise (aATP) application area does not support the following: Time validities Sets Conversions using numerator and denominator Conversion percentage Groups

Key Features: You can use this app to: Create, edit, and delete product substitutions. Create plant-specific substitutions. You must ensure that both the product and its substitute belong to the same plant. Provide reasons for substitutions. View preceding and succeeding substitutions. Specify the order in which the substitutions are performed by sequencing them. Specify when a chain of substitutions has to stop. Specify which substitution has precedence. View product substitution graph.

Fields (26)

KeyFieldSource TableSource FieldDescription
KEY MDSubstnUUID MDSubstnUUID
MDSubstnObjectType MDSubstnObjectType
Product
MDSubstnContextObjectType MDSubstnContextObjectType
Plant
MDSubstnContextObjectType2 MDSubstnContextObjectType2
MDSubstnGroup MDSubstnGroup
MDSubstnVersionValue MDSubstnVersionValue
MDSubstnValidityStartDateTime MDSubstnValidityStartDateTime
MDSubstnValidityEndDateTime MDSubstnValidityEndDateTime
TimeZoneID TimeZoneID
MDSubstnReason MDSubstnReason
MDSubstnStatus MDSubstnStatus
MDSubstnIsRlvtForATPProd MDSubstnIsRlvtForATPProd
MDSubstnIsRelevantForESPP MDSubstnIsRelevantForESPP
_MDObjectType _MDObjectType
_ContextObjectTypeCode _ContextObjectTypeCode
_ContextObjectTypeCode2 _ContextObjectTypeCode2
_Product _Product
_Plant _Plant
_Group _Group
_TimeZone _TimeZone
_Reason _Reason
_Status _Status
_MDSubstnIsRlvtForATPProd _MDSubstnIsRlvtForATPProd
_MDSubstnIsRelevantForESPP _MDSubstnIsRelevantForESPP
@AccessControl:{
  authorizationCheck: #CHECK
}
@EndUserText.label: 'Product Exclusion'
@ObjectModel:{
    usageType:{
      dataClass: #MASTER,
      sizeCategory: #M,
      serviceQuality: #A
  }
}
@VDM: {
  viewType: #CONSUMPTION
}

/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ]  } */
define view entity C_ProdSubstnExclsn
  as select from I_MDSubstnExclsn
  association [1..1] to I_Product   as _Product                   on $projection.Product = _Product.Product
  association [0..1] to I_Plant     as _Plant                     on $projection.Plant = _Plant.Plant
  association [1..1] to I_Indicator as _MDSubstnIsRlvtForATPProd  on $projection.MDSubstnIsRlvtForATPProd = _MDSubstnIsRlvtForATPProd.IndicatorValue
  association [1..1] to I_Indicator as _MDSubstnIsRelevantForESPP on $projection.MDSubstnIsRelevantForESPP = _MDSubstnIsRelevantForESPP.IndicatorValue
{
  key MDSubstnUUID,

      @Consumption.hidden: true
      MDSubstnObjectType,

      @ObjectModel.foreignKey.association: '_Product'
      cast( MDObject as productnumber )        as Product,

      @Consumption.hidden: true
      MDSubstnContextObjectType,

      @ObjectModel.foreignKey.association: '_Plant'
      cast( MDSubstnContextObject as werks_d ) as Plant,

      @Consumption.hidden: true
      MDSubstnContextObjectType2,

      MDSubstnGroup,
      MDSubstnVersionValue,
      MDSubstnValidityStartDateTime,
      MDSubstnValidityEndDateTime,
      TimeZoneID,
      MDSubstnReason,
      MDSubstnStatus,
      MDSubstnIsRlvtForATPProd,
      MDSubstnIsRelevantForESPP,

      /* Associations */
      _MDObjectType,
      _ContextObjectTypeCode,
      _ContextObjectTypeCode2,
      _Product,
      _Plant,
      _Group,
      _TimeZone,
      _Reason,
      _Status,
      _MDSubstnIsRlvtForATPProd,
      _MDSubstnIsRelevantForESPP
}
where
       MDSubstnObjectType         = 'Product'
  and  MDSubstnContextObjectType  = 'Plant'
  and(
       MDSubstnContextObjectType2 is initial
    or MDSubstnContextObjectType2 is null
  )