C_HzdsSubstInventoryFreeLoc

DDL: C_HZDSSUBSTINVENTORYFREELOC Type: view CONSUMPTION Package: EHHSS_CNS_HSI

HSI: Set of free locations

C_HzdsSubstInventoryFreeLoc is a Consumption CDS View that provides data about "HSI: Set of free locations" in SAP S/4HANA. It reads from 6 data sources and exposes 11 fields with key field EHSLocationUUID. It has 1 association to related views. Part of development package EHHSS_CNS_HSI.

Data Sources (6)

SourceAliasJoin Type
I_EHSLocation I_EHSLocation from
I_EHSLocationHierarchyNode I_EHSLocationHierarchyNode inner
I_EHSLocationHierarchyRevision I_EHSLocationHierarchyRevision inner
I_HzdsSubstInventory I_HzdsSubstInventory left_outer
I_HzdsSubstInventoryDefinition I_HzdsSubstInventoryDefinition inner
I_HzdsSubstInventoryDraft I_HzdsSubstInventoryDraft left_outer

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_CurrentEHSLocationNameText _EHSLocationName $projection.EHSLocationUUID = _EHSLocationName.EHSLocationUUID and _EHSLocationName.Language = $session.system_language

Annotations (15)

NameValueLevelField
EndUserText.label HSI: Set of free locations view
AbapCatalog.sqlViewName CHASSUBINVFRELOC view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #CONSUMPTION view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.representativeKey EHSLocationUUID view
ObjectModel.semanticKey EHSLocationUUID view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #D view
Search.searchable true view
Metadata.ignorePropagatedAnnotations false view
Metadata.allowExtensions true view

Fields (11)

KeyFieldSource TableSource FieldDescription
KEY EHSLocationUUID I_EHSLocation EHSLocationUUID
EHSLocationType
EHSLocationName _EHSLocationName EHSLocationName
HzdsSubstInventoryStatus I_HzdsSubstInventory HzdsSubstInventoryStatus
Plant I_EHSLocation Plant
EHSLocationStatus I_EHSLocation EHSLocationStatus
EHSLocationAuthorizationGroup
CostCenter I_EHSLocation CostCenter
CompanyCode I_EHSLocation CompanyCode
BusinessArea I_EHSLocation BusinessArea
Associations_EHSLocationName
@EndUserText.label: 'HSI: Set of free locations'

@AbapCatalog:
{
  sqlViewName: 'CHASSUBINVFRELOC',
  compiler.compareFilter: true,
  preserveKey: true
}

@AccessControl:
{
  authorizationCheck: #CHECK
}

@VDM.viewType: #CONSUMPTION

@ClientHandling.algorithm: #SESSION_VARIABLE

@ObjectModel:
{
  representativeKey: 'EHSLocationUUID',
  semanticKey: 'EHSLocationUUID',
  usageType:
  {
    dataClass: #MIXED,
    sizeCategory: #L,
    serviceQuality: #D
  }
}

@Search.searchable : true

@Metadata: { ignorePropagatedAnnotations: false,
             allowExtensions:true }

define view C_HzdsSubstInventoryFreeLoc
  as select from    I_EHSLocation

    inner join      I_HzdsSubstInventoryDefinition on  I_EHSLocation.Plant           = I_HzdsSubstInventoryDefinition.Plant
                                                   and I_EHSLocation.EHSLocationType = I_HzdsSubstInventoryDefinition.HzdsSubstInventoryLocType

    inner join      I_EHSLocationHierarchyRevision on  I_EHSLocationHierarchyRevision.RevisionStartDate <= $session.system_date
                                                   and I_EHSLocationHierarchyRevision.RevisionEndDate   >= $session.system_date

    inner join      I_EHSLocationHierarchyNode     on  I_EHSLocationHierarchyNode.EHSLocationUUID             = I_EHSLocation.EHSLocationUUID
                                                   and I_EHSLocationHierarchyNode.EHSLocHierarchyRevisionUUID = I_EHSLocationHierarchyRevision.EHSLocHierarchyRevisionUUID

    left outer join I_HzdsSubstInventory           on I_HzdsSubstInventory.EHSLocationUUID = I_EHSLocation.EHSLocationUUID

    left outer join I_HzdsSubstInventoryDraft      on I_HzdsSubstInventoryDraft.EHSLocationUUID = I_EHSLocation.EHSLocationUUID


  association [0..1] to I_CurrentEHSLocationNameText as _EHSLocationName on  $projection.EHSLocationUUID = _EHSLocationName.EHSLocationUUID
                                                                         and _EHSLocationName.Language   = $session.system_language

{

      @ObjectModel: { readOnly: true,
                      filter.enabled: false,
                      sort.enabled: false,
                      text: { association: '_EHSLocationName',
                              control:     #ASSOCIATED_TEXT_UI_HIDDEN } }
  key I_EHSLocation.EHSLocationUUID,

      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      cast ( EHSLocationType as ehfnd_loc_type_code_nc preserving type )                                          as  EHSLocationType,

      @ObjectModel: { readOnly: true,
                      filter.enabled: true,
                      sort.enabled: true }
      @Search: { defaultSearchElement: true,
                 ranking: #HIGH,
                 fuzzinessThreshold: 1 }
      _EHSLocationName.EHSLocationName,

      @Consumption.hidden: true
      I_HzdsSubstInventory.HzdsSubstInventoryStatus,

      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      I_EHSLocation.Plant,
      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      I_EHSLocation.EHSLocationStatus,
      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      cast( I_EHSLocation.EHSLocationAuthorizationGroup as ehfnd_loc_auth_group_nc preserving type )               as  EHSLocationAuthorizationGroup,
      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      I_EHSLocation.CostCenter,
      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      I_EHSLocation.CompanyCode,
      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      I_EHSLocation.BusinessArea,

      -- Associations
      @Consumption.hidden: true
      _EHSLocationName

}
where
      I_EHSLocation.RevisionStartDate                    <= $session.system_date
  and I_EHSLocation.RevisionEndDate                      >= $session.system_date
  and I_HzdsSubstInventory.HzdsSubstInventoryStatus      is null
  and I_HzdsSubstInventoryDraft.HzdsSubstInventoryStatus is null