I_BPProcessKPIRecordType
MD Chg Proc Record Type KPI of a Record
I_BPProcessKPIRecordType is a Transactional CDS View that provides data about "MD Chg Proc Record Type KPI of a Record" in SAP S/4HANA. It reads from 3 data sources (I_BusinessPartnerProcess, I_MasterDataChangeProcess, I_MDChgProcessStep) and exposes 5 fields with key fields MasterDataChangeProcess, MDChgProcessStep, MDChgProcessSrceSystem, MDChgProcessSrceObject. It has 3 associations to related views. Part of development package MDC_BUPA_GOV_BO.
Data Sources (3)
| Source | Alias | Join Type |
|---|---|---|
| I_BusinessPartnerProcess | BusinessPartner | inner |
| I_MasterDataChangeProcess | Process | inner |
| I_MDChgProcessStep | Step | from |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | P_MDChgProcessOpenMatchGroup | _OpenMatchGroup | _OpenMatchGroup.MasterDataChangeProcess = MatchGroup.MasterDataChangeProcess and _OpenMatchGroup.MDChgProcessMatchGroupID = MatchGroup.MDChgProcessMatchGroupID |
| [0..1] | I_MDChgProcKPIFilterRecordType | _KPIRecordTypeText | $projection.MDChgProcKPIRecordType = _KPIRecordTypeText.MDChangeProcKPIValueKey |
| [0..1] | I_MDChgProcessStep | _MTCStep | $projection.MasterDataChangeProcess = _MTCStep.MasterDataChangeProcess and _MTCStep.MDChgProcessStepType = 'MTC' and ( _MTCStep.MDChgProcessSrceObjectTypeCode = '147' or _MTCStep.MDChgProcessSrceObjectTypeCode = '986' ) |
Annotations (7)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view | |
| EndUserText.label | MD Chg Proc Record Type KPI of a Record | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| VDM.viewType | #TRANSACTIONAL | view |
Fields (5)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MasterDataChangeProcess | I_BusinessPartnerProcess | MasterDataChangeProcess | |
| KEY | MDChgProcessStep | I_BusinessPartnerProcess | MDChgProcessStep | |
| KEY | MDChgProcessSrceSystem | I_BusinessPartnerProcess | MDChgProcessSrceSystem | |
| KEY | MDChgProcessSrceObject | I_BusinessPartnerProcess | MDChgProcessSrceObject | |
| _KPIRecordTypeText | _KPIRecordTypeText |
@AccessControl.authorizationCheck: #NOT_REQUIRED
@AccessControl.personalData.blocking: #NOT_REQUIRED
@EndUserText.label: 'MD Chg Proc Record Type KPI of a Record'
@ObjectModel : {
usageType : {
dataClass: #MIXED,
serviceQuality: #D,
sizeCategory: #M
}
}
@VDM.viewType: #TRANSACTIONAL
define view entity I_BPProcessKPIRecordType
as select from I_MDChgProcessStep as Step
inner join I_MasterDataChangeProcess as Process on Step.MasterDataChangeProcess = Process.MasterDataChangeProcess
inner join I_BusinessPartnerProcess as BusinessPartner on BusinessPartner.MasterDataChangeProcess = Step.MasterDataChangeProcess
and BusinessPartner.MDChgProcessStep = Step.MDChgProcessStep
left outer to many join I_MDChgProcessMatchGroupRecord as MatchGroup on BusinessPartner.MasterDataChangeProcess = MatchGroup.MasterDataChangeProcess
and BusinessPartner.MDChgProcessSrceSystem = MatchGroup.MDChgProcessSrceSystem
and BusinessPartner.MDChgProcessSrceObject = MatchGroup.MDChgProcessSrceObject
left outer to many join mdc_own_bus_sys as OwnBusSystem on BusinessPartner.MDChgProcessSrceSystem = OwnBusSystem.own_business_system
association [0..1] to P_MDChgProcessOpenMatchGroup as _OpenMatchGroup on _OpenMatchGroup.MasterDataChangeProcess = MatchGroup.MasterDataChangeProcess
and _OpenMatchGroup.MDChgProcessMatchGroupID = MatchGroup.MDChgProcessMatchGroupID
/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
association [0..1] to I_MDChgProcKPIFilterRecordType as _KPIRecordTypeText on $projection.MDChgProcKPIRecordType = _KPIRecordTypeText.MDChangeProcKPIValueKey
/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
association [0..1] to I_MDChgProcessStep as _MTCStep on $projection.MasterDataChangeProcess = _MTCStep.MasterDataChangeProcess
and _MTCStep.MDChgProcessStepType = 'MTC'
and (
_MTCStep.MDChgProcessSrceObjectTypeCode = '147'
or _MTCStep.MDChgProcessSrceObjectTypeCode = '986'
)
{
key BusinessPartner.MasterDataChangeProcess,
key BusinessPartner.MDChgProcessStep,
key BusinessPartner.MDChgProcessSrceSystem,
key BusinessPartner.MDChgProcessSrceObject,
case
// New Single Record
when Process.MDChgProcessGoal <> 'U'
and Process.MDChgProcessGoal <> 'B'
and Process.MDChgProcessGoal <> 'R'
and Process.MDChgProcessGoal <> 'D'
and Process.MDChgProcessGoal <> 'E'
and (
MatchGroup.MDChgProcessMatchGroupID is null
or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'D'
or MatchGroup.MDChgProcMatchGrpApprvlStatus = ''
or _OpenMatchGroup.MDChgProcessMatchGroupID is not null
or Step.MDChgProcessStep < _MTCStep.MDChgProcessStep
)
and OwnBusSystem.own_business_system is null
and BusinessPartner.MDChgProcessSourceModified <> 'D'
then cast ('S' as mdc_kpi_filter_val )
// Update
when ( MatchGroup.MDChgProcMatchGrpIsBestRecord = 'X'
and(
MatchGroup.MDChgProcMatchGrpApprvlStatus = 'A'
or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'M'
or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'U'
)
or (
Process.MDChgProcessGoal = 'U'
or Process.MDChgProcessGoal = 'B'
or Process.MDChgProcessGoal = 'R'
or Process.MDChgProcessGoal = 'D'
or Process.MDChgProcessGoal = 'E'
or Process.MDChgProcessGoal = 'G'
and MatchGroup.MasterDataChangeProcess is null
)
)
and OwnBusSystem.own_business_system is not null
and BusinessPartner.MDChgProcessSourceModified <> 'D'
then cast ('U' as mdc_kpi_filter_val )
// New Best Record
when MatchGroup.MDChgProcMatchGrpIsBestRecord = 'X'
and _OpenMatchGroup.MDChgProcessMatchGroupID is null
and(
MatchGroup.MDChgProcMatchGrpApprvlStatus = 'A'
or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'M'
or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'U'
)
and OwnBusSystem.own_business_system is null
and BusinessPartner.MDChgProcessSourceModified <> 'D'
then cast ('B' as mdc_kpi_filter_val )
// New Deletion
when BusinessPartner.MDChgProcessSourceModified = 'D'
then cast ('D' as mdc_kpi_filter_val )
else cast ('' as mdc_kpi_filter_val )
end as MDChgProcKPIRecordType,
@ObjectModel.text.element: ['_KpiRecordTypeText.MDChangeProcKPIValueKeyDesc']
_KPIRecordTypeText
}
where
Step.MDChgProcessStepType = 'VAL'
or Step.MDChgProcessStepType = 'BRC'
or Step.MDChgProcessStepType = 'ACT'
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