C_SrcgProjItemHierarchy

DDL: C_SRCGPROJITEMHIERARCHY Type: view_entity CONSUMPTION Package: ODATA_MM_PUR_SRCGPROJ_COMPARE

Sourcing Project Item Hierarchy

C_SrcgProjItemHierarchy is a Consumption CDS View that provides data about "Sourcing Project Item Hierarchy" in SAP S/4HANA. It has 8 associations to related views. It is exposed through 3 OData services (UI_SOURCING_PROJECT_COMPARE, UI_SRCGPROJAWDSCEN_MANAGE, UI_SRCGPROJNEGTTN_MANAGE). Part of development package ODATA_MM_PUR_SRCGPROJ_COMPARE.

Associations (8)

CardinalityTargetAliasCondition
[0..*] C_SrcgProjQtnItemCompare _SrcgProjQtnItemCompare $projection.SourcingProjectItemUUID = _SrcgProjQtnItemCompare.SourcingProjectItemUUID
[0..*] C_SrcgProjDmndDistrCompare _SrcgProjDmndDistrCompare $projection.SourcingProjectItemUUID = _SrcgProjDmndDistrCompare.SourcingProjectItemUUID
[0..*] C_SrcgProjDmndDistrByPlant _SrcgProjDmndDistrByPlant $projection.SourcingProjectItemUUID = _SrcgProjDmndDistrByPlant.SourcingProjectItemUUID
[0..*] I_SrcgProjQtnItem _SrcgProjQtnItem $projection.SourcingProjectItemUUID = _SrcgProjQtnItem.SourcingProjectItemUUID
[1..1] E_SourcingProjectItem _Extension $projection.SourcingProjectItemUUID = _Extension.SourcingProjectItemUUID
[0..*] C_SrcgProjItmCmmdtyQtyCompare _SrcgProjItmCmmdtyQtyCompare $projection.SourcingProjectItemUUID = _SrcgProjItmCmmdtyQtyCompare.SourcingProjectItemUUID
[0..*] C_SrcgPrjItmCostBrkdwnCndnType _SrcgPrjItmCostBrkdwnCndnType $projection.SourcingProjectItemUUID = _SrcgPrjItmCostBrkdwnCndnType.SourcingProjectItemUUID
[0..1] I_BackendPlantForPurg _BackendPlantForPurg $projection.ProcmtHubPlantUniqueID = _BackendPlantForPurg.ProcmtHubPlantUniqueID

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
ObjectModel.representativeKey SourcingProjectItemUUID view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.query.implementedBy ABAP:CL_MM_SRCGPROJITEMCOMPAREHIER view
VDM.viewType #CONSUMPTION view
EndUserText.label Sourcing Project Item Hierarchy view

OData Services (3)

ServiceBindingVersionContractRelease
UI_SOURCING_PROJECT_COMPARE UI_SRCGPROJ_COMPARE V2 C1 NOT_RELEASED
UI_SRCGPROJAWDSCEN_MANAGE UI_SRCGPROJAWDSCEN_MANAGE V2 C1 NOT_RELEASED
UI_SRCGPROJNEGTTN_MANAGE UI_SRCGPROJNEGTTN_MANAGE V2 C1 NOT_RELEASED

Fields (31)

KeyFieldSource TableSource FieldDescription
KEY SourcingProjectItemUUID SourcingProjectItemUUID
FormattedItemID FormattedItemID
SrcgProjItemDescription SrcgProjItemDescription
Material Material
SourcingProjectItem SourcingProjectItem
SourcingProjectItemParent SourcingProjectItemParent
SourcingProjectItemStableUUID SourcingProjectItemStableUUID
SourcingProjectUUID SourcingProjectUUID
AlternativeItemID AlternativeItemID
ProcmtHubPlantUniqueID ProcmtHubPlantUniqueID
PlantName _BackendPlantForPurg PlantName
SourcingProjectItemType SourcingProjectItemType
SrcgProjItemClassification SrcgProjItemClassification
SourcingProjectItemIconURI _SrcgProjItemClassification SourcingProjectItemIconURI
HierarchyNode
HierarchyParentNode
HierarchyDistanceFromRoot
HierarchyDescendantCount
HierarchyDrillState
HierarchyRank
HierarchyNodeLevel HierarchyNodeLevel
_SrcgProjDmndDistrCompare _SrcgProjDmndDistrCompare
_SrcgProjDmndDistrByPlant _SrcgProjDmndDistrByPlant
_SourcingProjectItemType _SourcingProjectItemType
_SrcgProjItemClassification _SrcgProjItemClassification
_SrcgProjQtnItemCompare _SrcgProjQtnItemCompare
_SrcgProjQtnItem _SrcgProjQtnItem
_SrcgPrjItmCostBrkdwnCndnType _SrcgPrjItmCostBrkdwnCndnType
_BackendPlantForPurg _BackendPlantForPurg
_SourcingProject _SourcingProject
_SrcgProjItmCmmdtyQtyCompare _SrcgProjItmCmmdtyQtyCompare
@AccessControl.authorizationCheck: #MANDATORY

@ObjectModel: { representativeKey: 'SourcingProjectItemUUID',

                usageType.dataClass: #TRANSACTIONAL,
                usageType.serviceQuality:  #C,
                usageType.sizeCategory: #L,

                query.implementedBy: 'ABAP:CL_MM_SRCGPROJITEMCOMPAREHIER'
                }

@OData.hierarchy.recursiveHierarchy: [ {
    elementWithHierarchy:    'SourcingProjectItemUUID',
    nodeElement:             'HierarchyNode',
    externalKeyElement:      'SourcingProjectItem',
    parentNodeElement:       'HierarchyParentNode',
    distanceFromRootElement: 'HierarchyDistanceFromRoot',
    drillStateElement:       'HierarchyDrillState',
    descendantCountElement:  'HierarchyDescendantCount',
    preorderRankElement:     'HierarchyRank'
} ]

@VDM.viewType: #CONSUMPTION

@EndUserText.label: 'Sourcing Project Item Hierarchy'

define view entity C_SrcgProjItemHierarchy
  as select distinct from R_SourcingProjectItem

  //  association [0..1] to I_SrcgProjItemHierComposition as _SrcgProjItemHierComposition on  $projection.SourcingProjectItem = _SrcgProjItemHierComposition.SourcingProjectItem

  //                                                                                      and $projection.SourcingProjectUUID = _SrcgProjItemHierComposition.SourcingProjectUUID


  //not sure whether SourcingProjectItem always equals SourcingProjectQuotationItem

  association [0..*] to C_SrcgProjQtnItemCompare      as _SrcgProjQtnItemCompare      on $projection.SourcingProjectItemUUID = _SrcgProjQtnItemCompare.SourcingProjectItemUUID

  association [0..*] to C_SrcgProjDmndDistrCompare    as _SrcgProjDmndDistrCompare    on $projection.SourcingProjectItemUUID = _SrcgProjDmndDistrCompare.SourcingProjectItemUUID

  association [0..*] to C_SrcgProjDmndDistrByPlant    as _SrcgProjDmndDistrByPlant    on $projection.SourcingProjectItemUUID = _SrcgProjDmndDistrByPlant.SourcingProjectItemUUID

  association [0..*] to I_SrcgProjQtnItem             as _SrcgProjQtnItem             on $projection.SourcingProjectItemUUID = _SrcgProjQtnItem.SourcingProjectItemUUID

  //Extension

  association [1..1] to E_SourcingProjectItem         as _Extension                   on $projection.SourcingProjectItemUUID = _Extension.SourcingProjectItemUUID

  association [0..*] to C_SrcgProjItmCmmdtyQtyCompare as _SrcgProjItmCmmdtyQtyCompare on $projection.SourcingProjectItemUUID = _SrcgProjItmCmmdtyQtyCompare.SourcingProjectItemUUID
  
  //CBD Conditions

  association [0..*] to C_SrcgPrjItmCostBrkdwnCndnType as _SrcgPrjItmCostBrkdwnCndnType on $projection.SourcingProjectItemUUID = _SrcgPrjItmCostBrkdwnCndnType.SourcingProjectItemUUID
  
  association [0..1] to I_BackendPlantForPurg as _BackendPlantForPurg on $projection.ProcmtHubPlantUniqueID = _BackendPlantForPurg.ProcmtHubPlantUniqueID
{

  key SourcingProjectItemUUID,

      FormattedItemID,

      SrcgProjItemDescription,

      Material,

      SourcingProjectItem,

      SourcingProjectItemParent,

      SourcingProjectItemStableUUID,

      SourcingProjectUUID,

      AlternativeItemID,
      
      @UI.hidden: true
      ProcmtHubPlantUniqueID,
      _BackendPlantForPurg.PlantName,

      @UI.hidden: true
      SourcingProjectItemType,

      @UI.hidden: true
      SrcgProjItemClassification,
      @UI.hidden: true
      _SrcgProjItemClassification.SourcingProjectItemIconURI,

      //Hierarchy Test

      cast('' as abap.char( 50 ) )     as HierarchyNode,
      cast( '' as abap.sstring(1333) ) as HierarchyParentNode,
      cast( 0 as abap.int4 )           as HierarchyDistanceFromRoot,
      cast( 0 as abap.int4 )           as HierarchyDescendantCount,
      cast( '' as abap.char(22) )      as HierarchyDrillState, // leaf, expanded, collapsed

      cast( 0 as hum_hierarchy_rank )  as HierarchyRank,
      HierarchyNodeLevel,

      //      _SrcgProjItemHierComposition.HierarchyLevel,

      //      _SrcgProjItemHierComposition.HierarchyNodeSubTreeSize,

      //      _SrcgProjItemHierComposition.ProjElmntHierarchyDrillState,

      @ObjectModel.filter.enabled: false
      _SrcgProjDmndDistrCompare,
      @ObjectModel.filter.enabled: false
      _SrcgProjDmndDistrByPlant,
      @ObjectModel.sort.enabled: false
      @ObjectModel.filter.enabled: false
      _SourcingProjectItemType,
      @ObjectModel.filter.enabled: false
      @ObjectModel.sort.enabled: false
      _SrcgProjItemClassification,
      @ObjectModel.filter.enabled: false
      _SrcgProjQtnItemCompare,
      @ObjectModel.filter.enabled: false
      _SrcgProjQtnItem,
      @ObjectModel.filter.enabled: false
      _SrcgPrjItmCostBrkdwnCndnType,
      @ObjectModel.sort.enabled: false
      @ObjectModel.filter.enabled: false      
      _BackendPlantForPurg,

      //DCL

      @ObjectModel.filter.enabled: false
      @ObjectModel.sort.enabled: false
      _SourcingProject,
      @ObjectModel.filter.enabled: false
      _SrcgProjItmCmmdtyQtyCompare

}