I_LoglProdAssgmtSuplrToStore

DDL: I_LOGLPRODASSGMTSUPLRTOSTORE Type: view COMPOSITE

Logistical Product Supplier Store Assgmt

I_LoglProdAssgmtSuplrToStore is a Composite CDS View that provides data about "Logistical Product Supplier Store Assgmt" in SAP S/4HANA. It reads from 3 data sources (P_StoreGrpFromClfnStore, I_Plant, I_MPPurchasingSourceItem) and exposes 13 fields with key fields Material, Store, SourceListRecord. It has 3 associations to related views.

Data Sources (3)

SourceAliasJoin Type
P_StoreGrpFromClfnStore P_StoreGrpFromClfnStore left_outer
I_Plant Plant2 left_outer
I_MPPurchasingSourceItem SourceList from

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_Supplier _Supplier $projection.Supplier = _Supplier.Supplier
[0..1] I_Plant _Store $projection.Store = _Store.Plant
[1..1] I_ActiveLogisticalProduct _ActiveLogisticalProduct $projection.Material = _ActiveLogisticalProduct.Product

Annotations (11)

NameValueLevelField
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #M view
AbapCatalog.sqlViewName ILOGLPRODSUPLRST view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
EndUserText.label Logistical Product Supplier Store Assgmt view
VDM.viewType #COMPOSITE view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (13)

KeyFieldSource TableSource FieldDescription
KEY Material I_MPPurchasingSourceItem Material
KEY Store
KEY SourceListRecord I_MPPurchasingSourceItem SourceListRecord
SupplierendasSupplier
PurchasingOrganization I_MPPurchasingSourceItem PurchasingOrganization
ValidityStartDate
ValidityEndDate
LastChangeDateTime I_MPPurchasingSourceItem LastChangeDateTime
StoreGroupInternalID _AssgdStoreGroup StoreGroupInternalID
_Supplier _Supplier
_Store _Store
_PurchasingOrganization _PurchasingOrganization
_ActiveLogisticalProduct _ActiveLogisticalProduct
@ObjectModel.usageType: {
  dataClass: #MIXED,
  serviceQuality: #C,
  sizeCategory: #M
}
@AbapCatalog: {
  sqlViewName: 'ILOGLPRODSUPLRST',
  compiler.compareFilter: true,
  preserveKey: true
}
@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #BLOCKED_DATA_EXCLUDED
}
@EndUserText.label: 'Logistical Product Supplier Store Assgmt'

@VDM:
  {
    viewType: #COMPOSITE
  }

@ClientHandling.algorithm: #SESSION_VARIABLE

define view I_LoglProdAssgmtSuplrToStore
  as select from    I_MPPurchasingSourceItem as SourceList

    join            I_Plant                            on  SourceList.Plant      = I_Plant.Plant
                                                       and I_Plant.PlantCategory = 'A' -- Store
    join            I_Supplier                         on SourceList.Supplier = I_Supplier.Supplier
    left outer join I_Plant                  as Plant2 on SourceList.Supplier = Plant2.PlantSupplier
    
                                                        
left outer join P_StoreGrpFromClfnStore( P_SAPClient : $session.client)        as _AssgdStoreGroup           on I_Plant.Plant = _AssgdStoreGroup.Store    

  association [0..1] to I_Supplier                as _Supplier                on $projection.Supplier = _Supplier.Supplier
  association [0..1] to I_Plant                   as _Store                   on $projection.Store = _Store.Plant
  association [1..1] to I_ActiveLogisticalProduct as _ActiveLogisticalProduct on $projection.Material = _ActiveLogisticalProduct.Product
{
  key SourceList.Material,

      @ObjectModel.foreignKey.association: '_Store'
  key cast(SourceList.Plant as store preserving type)                         as Store,

  key SourceList.SourceListRecord,

      @ObjectModel.foreignKey.association: '_Supplier'
      case I_Supplier.IsBusinessPurposeCompleted
        when 'X' then '*****'
        else SourceList.Supplier
      end                                                                     as Supplier,

      @ObjectModel.foreignKey.association: '_PurchasingOrganization'
      SourceList.PurchasingOrganization,

      cast(SourceList.ValidityStartDate as validitystartdate preserving type) as ValidityStartDate,

      cast(SourceList.ValidityEndDate as validityenddate preserving type)     as ValidityEndDate,

      SourceList.LastChangeDateTime,
      
      _AssgdStoreGroup.StoreGroupInternalID as StoreGroupInternalID,

      /*  Exposed associations  */
      _Supplier,
      _Store,
      _PurchasingOrganization,
      _ActiveLogisticalProduct
}
where
  Plant2.Plant is null