I_ACTIVELOGISTICALPRODUCT

CDS View

Active Logistical Product composite view

I_ACTIVELOGISTICALPRODUCT is a CDS View in S/4HANA. Active Logistical Product composite view. It contains 10 fields. 8 CDS views read from this table.

CDS Views using this table (8)

ViewTypeJoinVDMDescription
C_ActiveLogisticalProduct view from CONSUMPTION Active Logistical Product
C_ExistingOrPotntlSalesProduct view from CONSUMPTION Existing and potential sales products
C_ExistingProcurementProduct view from CONSUMPTION Existing procurement products
P_AssgblDCForSuplr view from CONSUMPTION Assignable DC for Supplier Value Help
P_AssgblStoreForProcmtProdExt view from CONSUMPTION Assignable Store for Prod (Ext) Val Help
P_AssgblStoreForProcmtProdInt view from CONSUMPTION Assignable Store for Prod (Int) Val Help
P_ProcurementProductProposal view inner CONSUMPTION Procurement Product proposal
P_ProcurementProductProposal view left_outer CONSUMPTION Procurement Product proposal

Fields (10)

KeyField CDS FieldsUsed in Views
KEY Product Material,Product 5
_BaseUnitOfMeasure _BaseUnitOfMeasure 1
BaseUnit BaseUnit 1
CreatedByUser CreatedByUser 1
CreationDate CreationDate 1
LastChangeDate LastChangeDate 1
LastChangeDateTime LastChangeDateTime 1
LastChangeTime LastChangeTime 1
LogisticalProductCategory LogisticalProductCategory 1
ProductStandardID ProductStandardID 1
@AbapCatalog:
  { sqlViewName: 'IACTLOGPRD',
    compiler.compareFilter: true,
    preserveKey: true
  }

@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #CHECK

@ObjectModel:
  { usageType: { serviceQuality: #C,
                 sizeCategory : #L,
                 dataClass: #MASTER
               },
    semanticKey:['Product']
  }

@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Active Logistical Product composite view'
define view I_ActiveLogisticalProduct
  as select from I_Product       as product

    inner join   I_ProductRetail as ProductRetail on product.Product = ProductRetail.Product

  association [0..1] to I_ProductDescription    as _Text                         on  $projection.Product = _Text.Product
                                                                                 and _Text.Language      = $session.system_language

  association [0..1] to I_User                  as _CreatedByUser                on  $projection.CreatedByUser = _CreatedByUser.UserID

  association [0..1] to I_User                  as _LastChangedByUser            on  $projection.LastChangedByUser = _LastChangedByUser.UserID

  association [1..1] to I_UserContactCard       as _CreatedByUserContactCard     on  $projection.CreatedByUser = _CreatedByUserContactCard.ContactCardID

  association [0..1] to I_UserContactCard       as _LastChangedByUserContactCard on  $projection.LastChangedByUser = _LastChangedByUserContactCard.ContactCardID

  association [1..1] to I_Producttype           as _ProductType                  on  $projection.ProductType = _ProductType.ProductType

  association [0..1] to I_ProductTypeText       as _ProductTypeText              on  $projection.ProductType   = _ProductTypeText.ProductType
                                                                                 and _ProductTypeText.Language = $session.system_language

  association [1..1] to I_ProductCategory       as _ProductCategory              on  $projection.ProductCategory = _ProductCategory.ProductCategory

  association [0..*] to I_ProductCategoryText   as _ProductCategoryText          on  $projection.ProductCategory = _ProductCategoryText.ProductCategory

  association [1..1] to I_ProductGroup          as _ProductGroup                 on  $projection.ProductGroup = _ProductGroup.MaterialGroup

  association [0..1] to I_ProductGroupText      as _ProductGroupText             on  $projection.ProductGroup   = _ProductGroupText.MaterialGroup
                                                                                 and _ProductGroupText.Language = $session.system_language

  association [1..1] to I_UnitOfMeasure         as _BaseUnitOfMeasure            on  $projection.BaseUnit = _BaseUnitOfMeasure.UnitOfMeasure

  association [0..1] to I_UnitOfMeasureText     as _BaseUnitText                 on  $projection.BaseUnit   = _BaseUnitText.UnitOfMeasure
                                                                                 and _BaseUnitText.Language = $session.system_language

  association [0..1] to I_ProductUnitsOfMeasure as _GoodsIssueUnit               on  $projection.Product        = _GoodsIssueUnit.Product
                                                                                 and $projection.GoodsIssueUnit = _GoodsIssueUnit.AlternativeUnit

  association [1..1] to I_UnitOfMeasure         as _GoodsIssueUnitOfMeasure      on  $projection.GoodsIssueUnit = _GoodsIssueUnitOfMeasure.UnitOfMeasure

  association [0..1] to I_UnitOfMeasureText     as _GoodsIssueUnitText           on  $projection.GoodsIssueUnit   = _GoodsIssueUnitText.UnitOfMeasure
                                                                                 and _GoodsIssueUnitText.Language = $session.system_language

  association [0..1] to I_ProductUnitsOfMeasure as _PurchaseOrderUnit            on  $projection.Product           = _PurchaseOrderUnit.Product
                                                                                 and $projection.PurchaseOrderUnit = _PurchaseOrderUnit.AlternativeUnit

  association [1..1] to I_UnitOfMeasure         as _PurchaseOrderUnitOfMeasure   on  $projection.PurchaseOrderUnit = _PurchaseOrderUnitOfMeasure.UnitOfMeasure

  association [0..1] to I_UnitOfMeasureText     as _PurchaseOrderUnitText        on  $projection.PurchaseOrderUnit   = _PurchaseOrderUnitText.UnitOfMeasure
                                                                                 and _PurchaseOrderUnitText.Language = $session.system_language

  association [0..1] to E_Product               as _ProductExt                   on  $projection.Product = _ProductExt.Product

{
  key product.Product                                                                                                                                                                                                                                                                                         as  Product,

      _Text.ProductDescription                                                                                                                                                                                                                                                                                as  ProductDescription,

      product.ProductExternalID                                                                                                                                                                                                                                                                               as  ProductExternalID,

      product.CreationDate                                                                                                                                                                                                                                                                                    as  CreationDate,

      product.CreatedByUser                                                                                                                                                                                                                                                                                   as  CreatedByUser,
      _CreatedByUser,
      _CreatedByUserContactCard,

      product.LastChangeDate                                                                                                                                                                                                                                                                                  as  LastChangeDate,

      product.LastChangeTime                                                                                                                                                                                                                                                                                  as  LastChangeTime,

      product.LastChangeDateTime                                                                                                                                                                                                                                                                              as  LastChangeDateTime,

      product.LastChangedByUser                                                                                                                                                                                                                                                                               as  LastChangedByUser,
      _LastChangedByUser,
      _LastChangedByUserContactCard,

      product.ProductStandardID                                                                                                                                                                                                                                                                               as  ProductStandardID,

      product.AuthorizationGroup                                                                                                                                                                                                                                                                              as  AuthorizationGroup,

      product.SalesProduct                                                                                                                                                                                                                                                                                    as  SalesProduct,

      cast( product.LogisticalProductCategory as logisticalproductcategory preserving type )                                                                                                                                                                                                                  as  LogisticalProductCategory,

      @ObjectModel.foreignKey.association: '_BaseUnitOfMeasure'
      @ObjectModel.text.association: '_BaseUnitText'
      product.BaseUnit                                                                                                                                                                                                                                                                                        as  BaseUnit,
      _BaseUnitOfMeasure,
      _BaseUnitText,

      @ObjectModel.foreignKey.association: '_ProductType'
      @ObjectModel.text.association: '_ProductTypeText'
      product.ProductType                                                                                                                                                                                                                                                                                     as  ProductType,
      _ProductType,
      _ProductTypeText,

      @ObjectModel.foreignKey.association: '_ProductCategory'
      @ObjectModel.text.association: '_ProductCategoryText'
      product.ProductCategory                                                                                                                                                                                                                                                                                 as  ProductCategory,
      _ProductCategory,
      _ProductCategoryText,

      @ObjectModel.foreignKey.association: '_ProductGroup'
      @ObjectModel.text.association: '_ProductGroupText'
      product.ProductGroup                                                                                                                                                                                                                                                                                    as  ProductGroup,
      _ProductGroup,
      _ProductGroupText,

      IndustrySector                                                                                                                                                                                                                                                                                          as  IndustrySector,

      @ObjectModel.foreignKey.association: '_PurchaseOrderUnitOfMeasure'
      @ObjectModel.text.association: '_PurchaseOrderUnitText'
      cast( product.PurchaseOrderQuantityUnit as purorderquantityunit preserving type )                                                                                                                                                                                                                       as  PurchaseOrderUnit,
      _PurchaseOrderUnit,
      _PurchaseOrderUnitOfMeasure,
      _PurchaseOrderUnitText,

      _PurchaseOrderUnitText.UnitOfMeasureName                                                                                                                                                                                                                                                                as  PurchaseOrderUnitName,

      _PurchaseOrderUnit.QuantityDenominator                                                                                                                                                                                                                                                                  as  OrderToBaseQuantityDnmntr,
      _PurchaseOrderUnit.QuantityNumerator                                                                                                                                                                                                                                                                    as  OrderToBaseQuantityNmrtr,

      @ObjectModel.foreignKey.association: '_GoodsIssueUnitOfMeasure'
      @ObjectModel.text.association: '_GoodsIssueUnitText'
      cast( ProductRetail.GoodsIssueUnit as goodsissueunit preserving type )                                                                                                                                                                                                                                  as  GoodsIssueUnit,
      _GoodsIssueUnit,
      _GoodsIssueUnitOfMeasure,
      _GoodsIssueUnitText,

      _GoodsIssueUnitText.UnitOfMeasureName                                                                                                                                                                                                                                                                   as  GoodsIssueUnitName,

      _GoodsIssueUnit.QuantityDenominator                                                                                                                                                                                                                                                                     as  GoodsIssueToBaseQuantityDnmntr,
      _GoodsIssueUnit.QuantityNumerator                                                                                                                                                                                                                                                                       as  GoodsIssueToBaseQuantityNmrtr
      
}
where
  (
       // The where condition deliveres all procurement products

       // These are beside the generated displays with logistical_mat_category = 'P' also all single articles

       // For the PurchaseOrderUnit of a single article no extra procurement product is generated

       // In this case the single article has also the role of a procurement product for its PurchaseOrderUnit

       product.LogisticalProductCategory = 'P'
    or product.ProductCategory           = '00'
  )
  and  IsMarkedForDeletion               = ''