I_BPHierProcessKPIRecordType

DDL: I_BPHIERPROCESSKPIRECORDTYPE SQL: IBPHPROCREKPITYP Type: view TRANSACTIONAL Package: MDC_BP_HIER_GOV_BO

Record Type KPI of Record in MD Chg Proc

I_BPHierProcessKPIRecordType is a Transactional CDS View that provides data about "Record Type KPI of Record in MD Chg Proc" in SAP S/4HANA. It reads from 6 data sources and exposes 31 fields with key fields MasterDataChangeProcess, MDChgProcessStep, MDChgProcessSrceSystem, MDChgProcessSrceObject, MDChgProcessStep. It has 4 associations to related views. Part of development package MDC_BP_HIER_GOV_BO.

Data Sources (6)

SourceAliasJoin Type
I_MDChgProcessStep Step from
I_MDChgProcessStep Step union
I_MDChgProcessStep Step union
I_MDChgProcessStep Step union
I_MDChgProcessStep Step union
I_MDChgProcessStep Step union

Associations (4)

CardinalityTargetAliasCondition
[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 = '5669' or _MTCStep.MDChgProcessSrceObjectTypeCode = '987' )
[0..1] I_MDChgProcKPIFilterRecordType _KpiRecordTypeText $projection.MDChgProcKPIRecordType = _KpiRecordTypeText.MDChangeProcKPIValueKey

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName IBPHPROCREKPITYP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
AccessControl.personalData.blocking #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Record Type KPI of Record in MD Chg Proc view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #M view
VDM.viewType #TRANSACTIONAL view

Fields (31)

KeyFieldSource TableSource FieldDescription
KEY MasterDataChangeProcess Hierarchy MasterDataChangeProcess
KEY MDChgProcessStep Hierarchy MDChgProcessStep
KEY MDChgProcessSrceSystem Hierarchy MDChgProcessSrceSystem
KEY MDChgProcessSrceObject Hierarchy MDChgProcessSrceObject
MDChgProcKPIRecordType
MasterDataChangeProcess
KEY MDChgProcessStep Hierarchy MDChgProcessStep
KEY MDChgProcessSrceSystem Hierarchy MDChgProcessSrceSystem
KEY MDChgProcessSrceObject Hierarchy MDChgProcessSrceObject
MDChgProcKPIRecordType
MasterDataChangeProcess
KEY MDChgProcessStep Hierarchy MDChgProcessStep
KEY MDChgProcessSrceSystem Hierarchy MDChgProcessSrceSystem
KEY MDChgProcessSrceObject Hierarchy MDChgProcessSrceObject
MDChgProcKPIRecordType
MasterDataChangeProcess
KEY MDChgProcessStep Hierarchy MDChgProcessStep
KEY MDChgProcessSrceSystem Hierarchy MDChgProcessSrceSystem
KEY MDChgProcessSrceObject Hierarchy MDChgProcessSrceObject
MDChgProcKPIRecordType
MasterDataChangeProcess
KEY MDChgProcessStep Hierarchy MDChgProcessStep
KEY MDChgProcessSrceSystem Hierarchy MDChgProcessSrceSystem
KEY MDChgProcessSrceObject Hierarchy MDChgProcessSrceObject
MDChgProcKPIRecordType
MasterDataChangeProcess
KEY MDChgProcessStep Hierarchy MDChgProcessStep
KEY MDChgProcessSrceSystem Hierarchy MDChgProcessSrceSystem
KEY MDChgProcessSrceObject Hierarchy MDChgProcessSrceObject
MDChgProcKPIRecordType
_KPIRecordTypeText _KPIRecordTypeText
@AbapCatalog.sqlViewName: 'IBPHPROCREKPITYP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Record Type KPI of Record in MD Chg Proc'
@ObjectModel : {
  usageType : {
    dataClass: #MIXED,
    serviceQuality: #D,
    sizeCategory: #M
    }
  }
@VDM.viewType: #TRANSACTIONAL
define view I_BPHierProcessKPIRecordType

  // New Single Record

  as select from            I_MDChgProcessStep             as Step
    join                    I_MasterDataChangeProcess      as Process         on Step.MasterDataChangeProcess = Process.MasterDataChangeProcess
    left outer to many join I_BPHierarchyProcess           as Hierarchy       on  Hierarchy.MasterDataChangeProcess = Step.MasterDataChangeProcess
                                                                              and Hierarchy.MDChgProcessStep        = Step.MDChgProcessStep
    left outer to many join I_MDChgProcessMatchGroupRecord as MatchGroup      on  Hierarchy.MasterDataChangeProcess = MatchGroup.MasterDataChangeProcess
                                                                              and Hierarchy.MDChgProcessSrceSystem  = MatchGroup.MDChgProcessSrceSystem
                                                                              and Hierarchy.MDChgProcessSrceObject  = MatchGroup.MDChgProcessSrceObject
    left outer to many join mdc_own_bus_sys                as _OwnBusSystem   on Hierarchy.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    = '5669'
                                                                                or _MTCStep.MDChgProcessSrceObjectTypeCode = '987'
                                                                              )
{
  key Hierarchy.MasterDataChangeProcess,
  key Hierarchy.MDChgProcessStep,
  key Hierarchy.MDChgProcessSrceSystem,
  key Hierarchy.MDChgProcessSrceObject,
      cast ('S' as mdc_kpi_filter_val ) as MDChgProcKPIRecordType,
      @ObjectModel.text.element: ['_KpiRecordTypeText.MDChangeProcKPIValueKeyDesc']
      _KPIRecordTypeText
}
where
       Process.MDChgProcessGoal                 <> 'U'
  and  Process.MDChgProcessGoal                 <> 'B'
  and  Process.MDChgProcessGoal                 <> 'R'
  and  Process.MDChgProcessGoal                 <> 'D'
  and  Process.MDChgProcessGoal                 <> 'E'
  and(
       Step.MDChgProcessStepType                =  'VAL'
    or Step.MDChgProcessStepType                =  'ACT'
    or Step.MDChgProcessStepType                =  'BRC'
  )
  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 Hierarchy.MDChgProcessSourceModified <> 'D'

// Update

union select from         I_MDChgProcessStep             as Step
  join                    I_MasterDataChangeProcess      as Process         on Step.MasterDataChangeProcess = Process.MasterDataChangeProcess
  left outer to many join I_BPHierarchyProcess           as Hierarchy       on  Hierarchy.MasterDataChangeProcess = Step.MasterDataChangeProcess
                                                                            and Hierarchy.MDChgProcessStep        = Step.MDChgProcessStep
  join                    mdc_own_bus_sys                as OwnBusSystem    on Hierarchy.MDChgProcessSrceSystem = OwnBusSystem.own_business_system
  join                    I_MDChgProcessMatchGroupRecord as MatchGroup      on  Hierarchy.MasterDataChangeProcess = MatchGroup.MasterDataChangeProcess
                                                                            and Hierarchy.MDChgProcessSrceSystem  = MatchGroup.MDChgProcessSrceSystem
                                                                            and Hierarchy.MDChgProcessSrceObject  = MatchGroup.MDChgProcessSrceObject
/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
association [0..1] to I_MDChgProcKPIFilterRecordType as _KpiRecordTypeText on $projection.MDChgProcKPIRecordType = _KpiRecordTypeText.MDChangeProcKPIValueKey
{
  key Hierarchy.MasterDataChangeProcess,
  key Hierarchy.MDChgProcessStep,
  key Hierarchy.MDChgProcessSrceSystem,
  key Hierarchy.MDChgProcessSrceObject,
      cast ('U' as mdc_kpi_filter_val ) as MDChgProcKPIRecordType,
      @ObjectModel.text.element: ['_KPIRecordTypeText.MDChangeProcKPIValueKeyDesc']
      _KpiRecordTypeText
}
where
  (
       Step.MDChgProcessStepType                = 'VAL'
    or Step.MDChgProcessStepType                = 'ACT'
    or Step.MDChgProcessStepType                = 'BRC'
  )
  and  MatchGroup.MDChgProcMatchGrpIsBestRecord = 'X'
  and(
       MatchGroup.MDChgProcMatchGrpApprvlStatus = 'A'
    or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'M'
    or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'U'
  )
  and Hierarchy.MDChgProcessSourceModified <> 'D'

// Update

union select from         I_MDChgProcessStep             as Step
  join                    I_MasterDataChangeProcess      as Process         on Step.MasterDataChangeProcess = Process.MasterDataChangeProcess
  left outer to many join I_BPHierarchyProcess       as Hierarchy       on  Hierarchy.MasterDataChangeProcess = Step.MasterDataChangeProcess
                                                                            and Hierarchy.MDChgProcessStep        = Step.MDChgProcessStep
  join                    mdc_own_bus_sys                as OwnBusSystem    on Hierarchy.MDChgProcessSrceSystem = OwnBusSystem.own_business_system
  join                    I_MDChgProcessMatchGroupRecord as MatchGroup      on  Hierarchy.MasterDataChangeProcess = MatchGroup.MasterDataChangeProcess
                                                                            and Hierarchy.MDChgProcessSrceSystem  = MatchGroup.MDChgProcessSrceSystem
                                                                            and Hierarchy.MDChgProcessSrceObject  = MatchGroup.MDChgProcessSrceObject
/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
association [0..1] to I_MDChgProcKPIFilterRecordType as _KPIRecordTypeText on $projection.MDChgProcKPIRecordType = _KPIRecordTypeText.MDChangeProcKPIValueKey
{
  key Hierarchy.MasterDataChangeProcess,
  key Hierarchy.MDChgProcessStep,
  key Hierarchy.MDChgProcessSrceSystem,
  key Hierarchy.MDChgProcessSrceObject,
      cast ('U' as mdc_kpi_filter_val ) as MDChgProcKPIRecordType,
      @ObjectModel.text.element: ['_KPIRecordTypeText.MDChangeProcKPIValueKeyDesc']
      _KPIRecordTypeText
}
where
  (
       Step.MDChgProcessStepType                = 'VAL'
    or Step.MDChgProcessStepType                = 'ACT'
    or Step.MDChgProcessStepType                = 'BRC'
  )
  and  MatchGroup.MDChgProcMatchGrpIsBestRecord = 'X'
  and(
       MatchGroup.MDChgProcMatchGrpApprvlStatus = 'A'
    or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'M'
    or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'U'
  )
  and Hierarchy.MDChgProcessSourceModified <> 'D'

// Update without MTC

union select from         I_MDChgProcessStep        as Step
  join                    I_MasterDataChangeProcess as Process            on Step.MasterDataChangeProcess = Process.MasterDataChangeProcess
  left outer to many join I_BPHierarchyProcess      as Hierarchy          on Hierarchy.MasterDataChangeProcess = Step.MasterDataChangeProcess
                                                                          and Hierarchy.MDChgProcessStep        = Step.MDChgProcessStep
  join                    mdc_own_bus_sys           as OwnBusSystem       on Hierarchy.MDChgProcessSrceSystem = OwnBusSystem.own_business_system

/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
association [0..1] to I_MDChgProcKPIFilterRecordType as _KPIRecordTypeText on $projection.MDChgProcKPIRecordType = _KPIRecordTypeText.MDChangeProcKPIValueKey
{
  key Hierarchy.MasterDataChangeProcess,
  key Hierarchy.MDChgProcessStep,
  key Hierarchy.MDChgProcessSrceSystem,
  key Hierarchy.MDChgProcessSrceObject,
      cast ('U' as mdc_kpi_filter_val ) as MDChgProcKPIRecordType,
      @ObjectModel.text.element: ['_KPIRecordTypeText.MDChangeProcKPIValueKeyDesc']
      _KPIRecordTypeText
}
where
       Process.MDChgProcessGoal  = 'U'
  or   Process.MDChgProcessGoal  = 'B'
  or   Process.MDChgProcessGoal  = 'R'
  or   Process.MDChgProcessGoal  = 'D'
  or   Process.MDChgProcessGoal  = 'E'
  or   Process.MDChgProcessGoal  = 'G'
  and(
       Step.MDChgProcessStepType = 'VAL'
    or Step.MDChgProcessStepType = 'ACT'
    or Step.MDChgProcessStepType = 'BRC'
  )
  and Hierarchy.MDChgProcessSourceModified <> 'D'

// New Best Record

union select from         I_MDChgProcessStep             as Step
  join                    I_MasterDataChangeProcess      as Process         on Step.MasterDataChangeProcess = Process.MasterDataChangeProcess
  left outer to many join I_BPHierarchyProcess           as Hierarchy       on  Hierarchy.MasterDataChangeProcess = Step.MasterDataChangeProcess
                                                                            and Hierarchy.MDChgProcessStep        = Step.MDChgProcessStep
  join                    mdc_own_bus_sys                as OwnBusSystem    on Hierarchy.MDChgProcessSrceSystem <> OwnBusSystem.own_business_system
  join                    I_MDChgProcessMatchGroupRecord as MatchGroup      on  Hierarchy.MasterDataChangeProcess = MatchGroup.MasterDataChangeProcess
                                                                            and Hierarchy.MDChgProcessSrceSystem  = MatchGroup.MDChgProcessSrceSystem
                                                                            and Hierarchy.MDChgProcessSrceObject  = MatchGroup.MDChgProcessSrceObject
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
{
  key Hierarchy.MasterDataChangeProcess,
  key Hierarchy.MDChgProcessStep,
  key Hierarchy.MDChgProcessSrceSystem,
  key Hierarchy.MDChgProcessSrceObject,
      cast ('B' as mdc_kpi_filter_val ) as MDChgProcKPIRecordType,
      @ObjectModel.text.element: ['_KPIRecordTypeText.MDChangeProcKPIValueKeyDesc']
      _KPIRecordTypeText
}
where
  (
       Step.MDChgProcessStepType                = 'VAL'
    or Step.MDChgProcessStepType                = 'ACT'
    or Step.MDChgProcessStepType                = 'BRC'
  )
  and  MatchGroup.MDChgProcMatchGrpIsBestRecord = 'X'
  and  _OpenMatchGroup.MDChgProcessMatchGroupID is null
  and(
       MatchGroup.MDChgProcMatchGrpApprvlStatus = 'A'
    or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'M'
    or MatchGroup.MDChgProcMatchGrpApprvlStatus = 'U'
  )
  and Hierarchy.MDChgProcessSourceModified <> 'D'
 
union select from         I_MDChgProcessStep             as Step
  join                    I_MasterDataChangeProcess      as Process         on Step.MasterDataChangeProcess = Process.MasterDataChangeProcess
  left outer to many join I_BPHierarchyProcess           as Hierarchy       on  Hierarchy.MasterDataChangeProcess = Step.MasterDataChangeProcess
                                                                            and Hierarchy.MDChgProcessStep        = Step.MDChgProcessStep
/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
association [0..1] to I_MDChgProcKPIFilterRecordType as _KPIRecordTypeText on  $projection.MDChgProcKPIRecordType = _KPIRecordTypeText.MDChangeProcKPIValueKey
{
  key Hierarchy.MasterDataChangeProcess,
  key Hierarchy.MDChgProcessStep,
  key Hierarchy.MDChgProcessSrceSystem,
  key Hierarchy.MDChgProcessSrceObject,
      cast ('D' as mdc_kpi_filter_val ) as MDChgProcKPIRecordType,
      @ObjectModel.text.element: ['_KPIRecordTypeText.MDChangeProcKPIValueKeyDesc']
      _KPIRecordTypeText
}
where
  (
       Step.MDChgProcessStepType                = 'VAL'
    or Step.MDChgProcessStepType                = 'ACT'
    or Step.MDChgProcessStepType                = 'BRC'
  ) and Hierarchy.MDChgProcessSourceModified = 'D'