I_ImpctMgmtObjectListTP

DDL: I_IMPCTMGMTOBJECTLISTTP Type: view_entity TRANSACTIONAL

Impact Management Object List - TP

I_ImpctMgmtObjectListTP is a Transactional CDS View that provides data about "Impact Management Object List - TP" in SAP S/4HANA. It reads from 15 data sources and exposes 26 fields with key fields ImpctMgmtSourceEntityName, ImpctMgmtSourceFieldName, ImpctMgmtTargetEntityName, ImpctMgmtSourceFieldName, ImpctMgmtTargetEntityName.

Data Sources (15)

SourceAliasJoin Type
I_Bodefinition _BoDef inner
I_Bodefinition _BoDef inner
I_Bodefinition _BoDef1 inner
I_ImpctMgmtConfiguration _OBJ_SEL from
I_ImpctMgmtConfiguration _OBJ_SEL union
I_ImpctMgmtConfiguration _OBJ_SEL union
I_ImpctMgmtConfiguration _OBJ_SEL1 inner
I_ImpctMgmtConfiguration _OBJ_SEL1 inner
I_ImpctMgmtConfiguration _OBJ_SEL1 inner
DDCDS_ENTITY_ELEMENTS _source inner
DDCDS_ENTITY_ELEMENTS _source inner
DDCDS_ENTITY_ELEMENTS _source inner
DDCDS_ENTITY_ELEMENTS _target inner
DDCDS_ENTITY_ELEMENTS _target inner
DDCDS_ENTITY_ELEMENTS _target inner

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
EndUserText.label Impact Management Object List - TP view
VDM.viewType #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #MIXED view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
Metadata.ignorePropagatedAnnotations true view

Fields (26)

KeyFieldSource TableSource FieldDescription
KEY ImpctMgmtSourceEntityName
KEY ImpctMgmtSourceFieldName DDCDS_ENTITY_ELEMENTS element_name
KEY ImpctMgmtTargetEntityName
ImpctMgmtSourceObjDescription _OBJ_SEL_T ImpctMgmtObjectDescription
ImpctMgmtSourceIsKeyFld DDCDS_ENTITY_ELEMENTS is_key
ImpctMgmtSourceFieldText _source_field_desc ddtext
ImpctMgmtTargetFieldName DDCDS_ENTITY_ELEMENTS element_name
ImpctMgmtTargetIsKeyField DDCDS_ENTITY_ELEMENTS is_key
ImpctMgmtTargetFieldText _target_field_desc ddtext
KEY ImpctMgmtSourceFieldName DDCDS_ENTITY_ELEMENTS element_name
KEY ImpctMgmtTargetEntityName
ImpctMgmtSourceObjDescription _OBJ_SEL_T ImpctMgmtObjectDescription
ImpctMgmtSourceIsKeyFld DDCDS_ENTITY_ELEMENTS is_key
ImpctMgmtSourceFieldText _source_field_desc ddtext
ImpctMgmtTargetFieldName DDCDS_ENTITY_ELEMENTS element_name
ImpctMgmtTargetIsKeyField DDCDS_ENTITY_ELEMENTS is_key
ImpctMgmtTargetFieldText _target_field_desc ddtext
KEY ImpctMgmtSourceFieldName DDCDS_ENTITY_ELEMENTS element_name
KEY ImpctMgmtTargetEntityName
ImpctMgmtSourceObjDescription _OBJ_SEL_T ImpctMgmtObjectDescription
ImpctMgmtSourceIsKeyFld DDCDS_ENTITY_ELEMENTS is_key
ImpctMgmtSourceFieldText _source_field_desc ddtext
ImpctMgmtTargetFieldName DDCDS_ENTITY_ELEMENTS element_name
ImpctMgmtTargetIsKeyField DDCDS_ENTITY_ELEMENTS is_key
ImpctMgmtTargetFieldText _target_field_desc ddtext
ImpctMgmtTargetObjDescription _OBJ_SEL_T_Target ImpctMgmtObjectDescription
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Impact Management Object List - TP'
@VDM.viewType: #TRANSACTIONAL
@ObjectModel: { usageType:{
                serviceQuality: #X,
                sizeCategory: #S,
                dataClass: #MIXED } }
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@Metadata.ignorePropagatedAnnotations: true

define view entity I_ImpctMgmtObjectListTP
  //Connection by Domain

  as select from           I_ImpctMgmtConfiguration  as _OBJ_SEL
    inner join             DDCDS_ENTITY_ELEMENTS     as _source            on _source.entity_name = _OBJ_SEL.ImpctMgmtEntityName
    inner join             DDCDS_ENTITY_ELEMENTS     as _target            on  _target.entity_name <> _source.entity_name
                                                                           and _target.domain_name =  _source.domain_name
                                                                           and _target.is_key      =  'X'
    inner join             I_ImpctMgmtConfiguration  as _OBJ_SEL1          on  _target.entity_name             = _OBJ_SEL1.ImpctMgmtEntityName
                                                                           and _OBJ_SEL1.ImpctMgmtObjectSource = '01'
    left outer to one join I_ImpctMgmtConfigurationT as _OBJ_SEL_T         on _OBJ_SEL_T.ImpctMgmtObjectTypeName = _OBJ_SEL.ImpctMgmtObjectTypeName
    left outer to one join I_ImpctMgmtConfigurationT as _OBJ_SEL_T_Target  on _OBJ_SEL_T_Target.ImpctMgmtObjectTypeName = _OBJ_SEL1.ImpctMgmtObjectTypeName
    left outer to one join dd04t                     as _source_field_desc on  _source_field_desc.rollname   = _source.data_element
                                                                           and _source_field_desc.ddlanguage = $session.system_language
    left outer to one join dd04t                     as _target_field_desc on  _target_field_desc.rollname   = _target.data_element
                                                                           and _target_field_desc.ddlanguage = $session.system_language

{

          @ObjectModel.text.element: ['ImpctMgmtSourceObjDescription']
  key     upper(_source.entity_name)                   as ImpctMgmtSourceEntityName,
          @ObjectModel.text.element: ['ImpctMgmtSourceFieldText']
  key     _source.element_name                         as ImpctMgmtSourceFieldName,
          @ObjectModel.text.element: ['ImpctMgmtTargetObjDescription']
  key     upper(_target.entity_name)                   as ImpctMgmtTargetEntityName,

          _OBJ_SEL_T.ImpctMgmtObjectDescription        as ImpctMgmtSourceObjDescription,
          @Semantics.booleanIndicator:true
          _source.is_key                               as ImpctMgmtSourceIsKeyFld,
          _source_field_desc.ddtext                    as ImpctMgmtSourceFieldText,
          @ObjectModel.text.element: ['ImpctMgmtTargetFieldText']
          _target.element_name                         as ImpctMgmtTargetFieldName,
          @Semantics.booleanIndicator:true
          _target.is_key                               as ImpctMgmtTargetIsKeyField,
          _target_field_desc.ddtext                    as ImpctMgmtTargetFieldText,
          _OBJ_SEL_T_Target.ImpctMgmtObjectDescription as ImpctMgmtTargetObjDescription

}
where
  _OBJ_SEL.ImpctMgmtObjectSource = '01'

union select from        I_ImpctMgmtConfiguration  as _OBJ_SEL
  inner join             I_Bodefinition            as _BoDef             on _BoDef.BusinessObject = _OBJ_SEL.ImpctMgmtEntityName
  inner join             DDCDS_ENTITY_ELEMENTS     as _source            on _source.entity_name = _BoDef.CDSView
  inner join             DDCDS_ENTITY_ELEMENTS     as _target            on  _target.entity_name <> _source.entity_name
                                                                         and _target.domain_name =  _source.domain_name
                                                                         and _target.is_key      =  'X'
  inner join             I_ImpctMgmtConfiguration  as _OBJ_SEL1          on _target.entity_name = _OBJ_SEL1.ImpctMgmtEntityName

  left outer to one join I_ImpctMgmtConfigurationT as _OBJ_SEL_T         on _OBJ_SEL_T.ImpctMgmtObjectTypeName = _OBJ_SEL.ImpctMgmtObjectTypeName
  left outer to one join I_ImpctMgmtConfigurationT as _OBJ_SEL_T_Target  on _OBJ_SEL_T_Target.ImpctMgmtObjectTypeName = _OBJ_SEL1.ImpctMgmtObjectTypeName

  left outer to one join dd04t                     as _source_field_desc on  _source_field_desc.rollname   = _source.data_element
                                                                         and _source_field_desc.ddlanguage = $session.system_language
  left outer to one join dd04t                     as _target_field_desc on  _target_field_desc.rollname   = _target.data_element
                                                                         and _target_field_desc.ddlanguage = $session.system_language
{
  key    upper(_OBJ_SEL.ImpctMgmtEntityName)          as ImpctMgmtSourceEntityName,
  key    _source.element_name                         as ImpctMgmtSourceFieldName,
  key    upper(_target.entity_name)                   as ImpctMgmtTargetEntityName,
         _OBJ_SEL_T.ImpctMgmtObjectDescription        as ImpctMgmtSourceObjDescription,
         _source.is_key                               as ImpctMgmtSourceIsKeyFld,
         _source_field_desc.ddtext                    as ImpctMgmtSourceFieldText,
         _target.element_name                         as ImpctMgmtTargetFieldName,
         _target.is_key                               as ImpctMgmtTargetIsKeyField,
         _target_field_desc.ddtext                    as ImpctMgmtTargetFieldText,
         _OBJ_SEL_T_Target.ImpctMgmtObjectDescription as ImpctMgmtTargetObjDescription

}
where
  _OBJ_SEL.ImpctMgmtObjectSource = '02'

union select from        I_ImpctMgmtConfiguration  as _OBJ_SEL
  inner join             I_Bodefinition            as _BoDef             on _BoDef.BusinessObject = _OBJ_SEL.ImpctMgmtEntityName
  inner join             DDCDS_ENTITY_ELEMENTS     as _source            on _source.entity_name = _BoDef.CDSView
  inner join             DDCDS_ENTITY_ELEMENTS     as _target            on  _target.entity_name <> _source.entity_name
                                                                         and _target.domain_name =  _source.domain_name
                                                                         and _target.is_key      =  'X'

  inner join             I_Bodefinition            as _BoDef1            on _BoDef1.CDSView = _target.entity_name
  inner join             I_ImpctMgmtConfiguration  as _OBJ_SEL1          on _BoDef1.BusinessObject = _OBJ_SEL1.ImpctMgmtEntityName

  left outer to one join I_ImpctMgmtConfigurationT as _OBJ_SEL_T         on _OBJ_SEL_T.ImpctMgmtObjectTypeName = _OBJ_SEL.ImpctMgmtObjectTypeName
  left outer to one join I_ImpctMgmtConfigurationT as _OBJ_SEL_T_Target  on _OBJ_SEL_T_Target.ImpctMgmtObjectTypeName = _OBJ_SEL1.ImpctMgmtObjectTypeName

  left outer to one join dd04t                     as _source_field_desc on  _source_field_desc.rollname   = _source.data_element
                                                                         and _source_field_desc.ddlanguage = $session.system_language
  left outer to one join dd04t                     as _target_field_desc on  _target_field_desc.rollname   = _target.data_element
                                                                         and _target_field_desc.ddlanguage = $session.system_language
{
  key    upper(_OBJ_SEL.ImpctMgmtEntityName)          as ImpctMgmtSourceEntityName,
  key    _source.element_name                         as ImpctMgmtSourceFieldName,
  key    upper(_OBJ_SEL1.ImpctMgmtEntityName)         as ImpctMgmtTargetEntityName,

         _OBJ_SEL_T.ImpctMgmtObjectDescription        as ImpctMgmtSourceObjDescription,
         _source.is_key                               as ImpctMgmtSourceIsKeyFld,
         _source_field_desc.ddtext                    as ImpctMgmtSourceFieldText,
         _target.element_name                         as ImpctMgmtTargetFieldName,
         _target.is_key                               as ImpctMgmtTargetIsKeyField,
         _target_field_desc.ddtext                    as ImpctMgmtTargetFieldText,
         _OBJ_SEL_T_Target.ImpctMgmtObjectDescription as ImpctMgmtTargetObjDescription

}
where
  _OBJ_SEL.ImpctMgmtObjectSource = '02'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"DDCDS_ENTITY_ELEMENTS",
"I_BODEFINITION",
"I_IMPCTMGMTCONFIGURATION",
"I_IMPCTMGMTCONFIGURATIONT",
"DD04T"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/