I_TechnicalObjectHierarchy

DDL: I_TECHNICALOBJECTHIERARCHY SQL: ITECHOBJHIER Type: view COMPOSITE

Technical Object Hierarchy

I_TechnicalObjectHierarchy is a Composite CDS View that provides data about "Technical Object Hierarchy" in SAP S/4HANA. It reads from 1 data source (P_TechnicalObjectHierarchy) and exposes 14 fields with key fields TechnicalObject, TechObjIsEquipOrFuncnlLoc. It has 6 associations to related views.

Data Sources (1)

SourceAliasJoin Type
P_TechnicalObjectHierarchy P_TechnicalObjectHierarchy from

Associations (6)

CardinalityTargetAliasCondition
[1] I_TechnicalObject _Technicalobject $projection.TechnicalObject = _Technicalobject.TechnicalObject and $projection.TechObjIsEquipOrFuncnlLoc = _Technicalobject.TechObjIsEquipOrFuncnlLoc
[0..1] I_TechnicalObject _SuperiorTechnicalobject $projection.SuperiorTechnicalObject = _SuperiorTechnicalobject.TechnicalObject and $projection.SuperiorObjIsEquipOrFuncnlLoc = _SuperiorTechnicalobject.TechObjIsEquipOrFuncnlLoc
[0..1] I_TechObjIsEquipOrFuncnlLoc _TechObjIsEquipOrFuncnlLoc $projection.TechObjIsEquipOrFuncnlLoc = _TechObjIsEquipOrFuncnlLoc.TechObjIsEquipOrFuncnlLoc
[0..1] I_FunctionalLocationLabel _FunctionalLocationLabel $projection.FunctionalLocation = _FunctionalLocationLabel.FunctionalLocation
[0..1] I_FunctionalLocationLabel _SuperFunctionalLocationLabel $projection.SuperiorFunctionalLocation = _SuperFunctionalLocationLabel.FunctionalLocation
[0..1] I_TechObjIsEquipOrFuncnlLoc _SuperiorObjIsEquipOrFuncnlLoc $projection.SuperiorObjIsEquipOrFuncnlLoc = _SuperiorObjIsEquipOrFuncnlLoc.TechObjIsEquipOrFuncnlLoc

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName ITECHOBJHIER view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_ALLOWED view
EndUserText.label Technical Object Hierarchy view
VDM.viewType #COMPOSITE view
ObjectModel.representativeKey TechnicalObject view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view

Fields (14)

KeyFieldSource TableSource FieldDescription
KEY TechnicalObject P_TechnicalObjectHierarchy TechnicalObject
KEY TechObjIsEquipOrFuncnlLoc P_TechnicalObjectHierarchy TechObjIsEquipOrFuncnlLoc
SuperiorTechnicalObject P_TechnicalObjectHierarchy SuperiorTechnicalObject
SuperiorObjIsEquipOrFuncnlLoc P_TechnicalObjectHierarchy SuperiorObjIsEquipOrFuncnlLoc
SuperiorFunctionalLocation P_TechnicalObjectHierarchy SuperiorFunctionalLocation
FunctionalLocation P_TechnicalObjectHierarchy FunctionalLocation
SuperordinateEquipment P_TechnicalObjectHierarchy SuperordinateEquipment
Equipment P_TechnicalObjectHierarchy Equipment
_Technicalobject _Technicalobject
_SuperiorTechnicalobject _SuperiorTechnicalobject
_TechObjIsEquipOrFuncnlLoc _TechObjIsEquipOrFuncnlLoc
_FunctionalLocationLabel _FunctionalLocationLabel
_SuperFunctionalLocationLabel _SuperFunctionalLocationLabel
_SuperiorObjIsEquipOrFuncnlLoc _SuperiorObjIsEquipOrFuncnlLoc
@AbapCatalog.sqlViewName: 'ITECHOBJHIER'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_ALLOWED
@EndUserText.label: 'Technical Object Hierarchy'
@VDM.viewType: #COMPOSITE

@ObjectModel.representativeKey: 'TechnicalObject'
@ObjectModel.semanticKey:  [ 'TechnicalObject', 'TechObjIsEquipOrFuncnlLoc' ]

@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L


@AbapCatalog.dbHints: [{dbSystem: #HDB,
                        hint:     'NO_CS_ITAB_IN_SUBQUERY'}]



//@ObjectModel.dataCategory: #HIERARCHY

//@Hierarchy.parentChild :

//{

//     name : 'Hierarchy View of Technical Object',

//     label : 'Technical Object',

//     recurseBy : '_Parent'

//}


define view I_TechnicalObjectHierarchy
  as select from P_TechnicalObjectHierarchy

  association [1]    to I_TechnicalObject           as _Technicalobject               on  $projection.TechnicalObject           = _Technicalobject.TechnicalObject
                                                                                      and $projection.TechObjIsEquipOrFuncnlLoc = _Technicalobject.TechObjIsEquipOrFuncnlLoc

  association [0..1] to I_TechnicalObject           as _SuperiorTechnicalobject       on  $projection.SuperiorTechnicalObject       = _SuperiorTechnicalobject.TechnicalObject
                                                                                      and $projection.SuperiorObjIsEquipOrFuncnlLoc = _SuperiorTechnicalobject.TechObjIsEquipOrFuncnlLoc

  association [0..1] to I_TechObjIsEquipOrFuncnlLoc as _TechObjIsEquipOrFuncnlLoc     on  $projection.TechObjIsEquipOrFuncnlLoc = _TechObjIsEquipOrFuncnlLoc.TechObjIsEquipOrFuncnlLoc

  association [0..1] to I_FunctionalLocationLabel   as _FunctionalLocationLabel       on  $projection.FunctionalLocation = _FunctionalLocationLabel.FunctionalLocation

  association [0..1] to I_FunctionalLocationLabel   as _SuperFunctionalLocationLabel  on  $projection.SuperiorFunctionalLocation = _SuperFunctionalLocationLabel.FunctionalLocation

  association [0..1] to I_TechObjIsEquipOrFuncnlLoc as _SuperiorObjIsEquipOrFuncnlLoc on  $projection.SuperiorObjIsEquipOrFuncnlLoc = _SuperiorObjIsEquipOrFuncnlLoc.TechObjIsEquipOrFuncnlLoc


{



      @ObjectModel.foreignKey.association: '_Technicalobject'
  key P_TechnicalObjectHierarchy.TechnicalObject,
      @ObjectModel.foreignKey.association: '_TechObjIsEquipOrFuncnlLoc'
  key P_TechnicalObjectHierarchy.TechObjIsEquipOrFuncnlLoc,


      @ObjectModel.foreignKey.association: '_SuperiorTechnicalobject'
      P_TechnicalObjectHierarchy.SuperiorTechnicalObject,
      @ObjectModel.foreignKey.association: '_SuperiorObjIsEquipOrFuncnlLoc'
      P_TechnicalObjectHierarchy.SuperiorObjIsEquipOrFuncnlLoc,

      //@ObjectModel.foreignKey.association: '_SuperFunctionalLocationLabel'

      P_TechnicalObjectHierarchy.SuperiorFunctionalLocation,
      //@ObjectModel.foreignKey.association: '_FunctionalLocationLabel'

      P_TechnicalObjectHierarchy.FunctionalLocation,

      P_TechnicalObjectHierarchy.SuperordinateEquipment,
      P_TechnicalObjectHierarchy.Equipment,

      _Technicalobject,
      _SuperiorTechnicalobject,
      _TechObjIsEquipOrFuncnlLoc,
      _FunctionalLocationLabel,
      _SuperFunctionalLocationLabel,
      _SuperiorObjIsEquipOrFuncnlLoc
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"P_TECHNICALOBJECTHIERARCHY"
],
"ASSOCIATED":
[
"I_FUNCTIONALLOCATIONLABEL",
"I_TECHNICALOBJECT",
"I_TECHOBJISEQUIPORFUNCNLLOC"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/