A_ProdSubstnPredecessor
Product Substitution Predecessor
A_ProdSubstnPredecessor is a Consumption CDS View that provides data about "Product Substitution Predecessor" in SAP S/4HANA. It reads from 1 data source (R_ProdSubstnPrdcssrTP) and exposes 32 fields with key fields MDSubstnUUID, MDSubstnMasterUUID. It is exposed through 1 OData service (API_PRODUCTSUBSTITUTION_2). Part of development package ODATA_PROD_SUBSTN_API.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| R_ProdSubstnPrdcssrTP | R_ProdSubstnPrdcssrTP | projection |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #MANDATORY | view | |
| ObjectModel.query.implementedBy | ABAP:CL_PRODSUBSTN_QUERY | view | |
| ObjectModel.representativeKey | MDSubstnUUID | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| VDM.viewType | #CONSUMPTION | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| EndUserText.label | Product Substitution Predecessor | view | |
| OData.entityType.name | ProdSubstnPredecessor_Type | view |
OData Services (1)
| Service | Binding | Version | Contract | Release |
|---|---|---|---|---|
| API_PRODUCTSUBSTITUTION_2 |
Fields (32)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MDSubstnUUID | MDSubstnUUID | ||
| KEY | MDSubstnMasterUUID | MDSubstnMasterUUID | ||
| MDSubstnObjectType | MDSubstnObjectType | |||
| Product | Product | |||
| SubstituteProduct | SubstituteProduct | |||
| MDSubstnContextObjectType | MDSubstnContextObjectType | |||
| Plant | Plant | |||
| MDSubstnContextObjectType2 | MDSubstnContextObjectType2 | |||
| MDSubstnGroup | MDSubstnGroup | |||
| 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 | |||
| MDSubstnStatus | MDSubstnStatus | |||
| MDSubstnIsRlvtForATPProd | MDSubstnIsRlvtForATPProd | |||
| MDSubstnIsRelevantForESPP | MDSubstnIsRelevantForESPP | |||
| CreatedByUser | CreatedByUser | |||
| CreationDateTime | CreationDateTime | |||
| LastChangedByUser | LastChangedByUser | |||
| LastChangeDateTime | LastChangeDateTime | |||
| _Product | _Product | |||
| _SubstituteProduct | _SubstituteProduct |
@AccessControl: {
authorizationCheck: #MANDATORY
}
@ObjectModel: {
query.implementedBy: 'ABAP:CL_PRODSUBSTN_QUERY',
representativeKey: 'MDSubstnUUID',
semanticKey: [ 'Product', 'SubstituteProduct', 'Plant', 'MDSubstnGroup', 'MDSubstnReason' ],
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #M
}
}
@Metadata.ignorePropagatedAnnotations: true
@VDM: {
viewType: #CONSUMPTION,
lifecycle: {
contract.type: #PUBLIC_REMOTE_API
},
usage.type: [#TRANSACTIONAL_PROCESSING_SERVICE]
}
@EndUserText.label: 'Product Substitution Predecessor'
@OData.entityType.name: 'ProdSubstnPredecessor_Type'
define view entity A_ProdSubstnPredecessor
as projection on R_ProdSubstnPrdcssrTP
{
key MDSubstnUUID,
@ObjectModel.foreignKey.association : '_Substitution'
key MDSubstnMasterUUID,
MDSubstnObjectType,
Product,
SubstituteProduct,
MDSubstnContextObjectType,
Plant,
MDSubstnContextObjectType2,
MDSubstnGroup,
MDSubstnVersionValue,
MDSubstnSet,
MDSubstnIsExit,
MDSubstnIsLeading,
MDSubstnSequenceValue,
MDSubstnConversionNumerator,
MDSubstnConversionDenominator,
MDSubstnConversionPercent,
MDSubstnValidityStartDate,
MDSubstnValidityStartTime,
MDSubstnValidityEndDate,
MDSubstnValidityEndTime,
TimeZoneID,
MDSubstnReason,
MDSubstnStatus,
MDSubstnIsRlvtForATPProd,
MDSubstnIsRelevantForESPP,
CreatedByUser,
CreationDateTime,
LastChangedByUser,
LastChangeDateTime,
/* Associations */
/*_ContextObjectTypeCode,
_ContextObjectTypeCode2,
_CreatedByUser,
_ExitIndicator,
_Group,
_LastChangedByUser,
_LeadIndicator,
_MDObjectType,
_MDSubstnIsRelevantForESPP,
_MDSubstnIsRlvtForATPProd,
_Plant,
_Product,
_Reason,
_Status,
_SubstituteProduct, */
@Consumption.hidden: true // exposed for DCL
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
_Product,
@Consumption.hidden: true // exposed for DCL
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
_SubstituteProduct,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
_Substitution : redirected to parent A_ProdSubstn_2
//_TimeZone
}
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