C_ActiveLogisticalProduct

DDL: C_ACTIVELOGISTICALPRODUCT SQL: CACTLOGLPROD Type: view CONSUMPTION

Active Logistical Product

C_ActiveLogisticalProduct is a Consumption CDS View that provides data about "Active Logistical Product" in SAP S/4HANA. It reads from 1 data source (I_ActiveLogisticalProduct) and exposes 34 fields with key field Product. It has 14 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ActiveLogisticalProduct I_ActiveLogisticalProduct from

Associations (14)

CardinalityTargetAliasCondition
[0..*] C_LoglProdAssgmtSupplierToDC _LoglProdAssgmtSupplierToDC $projection.Product = _LoglProdAssgmtSupplierToDC.Product
[0..*] C_AssgblSuplrForProcmtProd _AssgblSuplrForProcmtProd $projection.Product = _AssgblSuplrForProcmtProd.Product
[0..*] C_AssgblDCForSuplr _AssgblDCForSuplr $projection.Product = _AssgblDCForSuplr.Product
[0..*] C_LoglProductAssgmtDCToStore _LoglProductAssgmtDCToStore $projection.Product = _LoglProductAssgmtDCToStore.Product
[0..*] C_AssgblStoreForProcmtProdInt _AssgblStoreForProcmtProdInt $projection.Product = _AssgblStoreForProcmtProdInt.Product
[0..*] C_AssgblStoreForProcmtProdExt _AssgblStoreForProcmtProdExt $projection.Product = _AssgblStoreForProcmtProdExt.Product
[0..*] C_AssgblDCForStore _AssgblDCForStore $projection.Product = _AssgblDCForStore.Product
[0..*] C_LoglProductAssgmtDCToDC _LoglProductAssgmtDCToDC $projection.Product = _LoglProductAssgmtDCToDC.Product
[0..*] C_AssgblSupplyingDCForDC _AssgblSupplyingDCForDC $projection.Product = _AssgblSupplyingDCForDC.Product
[0..*] C_AssgblReceivingDCFromDC _AssgblReceivingDCFromDC $projection.Product = _AssgblReceivingDCFromDC.Product
[0..*] C_LoglProdAssgmtSuplrToStore _LoglProdAssgmtSuplrToStore $projection.Product = _LoglProdAssgmtSuplrToStore.Product
[1..1] I_UnitOfMeasure _PurchaseOrderUnitOfMeasure $projection.PurchaseOrderUnit = _PurchaseOrderUnitOfMeasure.UnitOfMeasure
[1..1] I_UnitOfMeasure _GoodsIssueUnitOfMeasure $projection.GoodsIssueUnit = _GoodsIssueUnitOfMeasure.UnitOfMeasure
[1..1] I_ProductStdVH _ProductVH $projection.Product = _ProductVH.Product

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName CACTLOGLPROD view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Active Logistical Product view
Metadata.allowExtensions true view
Search.searchable true view
VDM.viewType #CONSUMPTION view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.compositionRoot true view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (34)

KeyFieldSource TableSource FieldDescription
KEY Product Product
ProductDescription ProductDescription
ProductGroup ProductGroup
_ProductGroup _ProductGroup
ProductStandardID ProductStandardID
_PurchaseOrderUnitOfMeasure _PurchaseOrderUnitOfMeasure
_GoodsIssueUnitOfMeasure _GoodsIssueUnitOfMeasure
ProductCategory ProductCategory
_ProductCategory _ProductCategory
ProductType ProductType
_ProductType _ProductType
BaseUnit BaseUnit
_BaseUnitOfMeasure _BaseUnitOfMeasure
CreationDate CreationDate
CreatedByUser CreatedByUser
CreatedByUserName _CreatedByUser UserDescription
LastChangedByUser LastChangedByUser
LastChangedByUserName _LastChangedByUser UserDescription
LastChangeDate LastChangeDate
LastChangeTime LastChangeTime
ProductImageURL
AuthorizationGroup AuthorizationGroup
_LoglProdAssgmtSupplierToDC _LoglProdAssgmtSupplierToDC
_LoglProductAssgmtDCToStore _LoglProductAssgmtDCToStore
_LoglProductAssgmtDCToDC _LoglProductAssgmtDCToDC
_AssgblSupplyingDCForDC _AssgblSupplyingDCForDC
_AssgblReceivingDCFromDC _AssgblReceivingDCFromDC
_LoglProdAssgmtSuplrToStore _LoglProdAssgmtSuplrToStore
_AssgblSuplrForProcmtProd _AssgblSuplrForProcmtProd
_AssgblDCForSuplr _AssgblDCForSuplr
_AssgblStoreForProcmtProdInt _AssgblStoreForProcmtProdInt
_AssgblStoreForProcmtProdExt _AssgblStoreForProcmtProdExt
_AssgblDCForStore _AssgblDCForStore
_ProductVH _ProductVH
@AbapCatalog.sqlViewName: 'CACTLOGLPROD'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl: {
  authorizationCheck: #CHECK
}
@EndUserText.label: 'Active Logistical Product'
@Metadata.allowExtensions: true
@Search.searchable: true
@VDM.viewType: #CONSUMPTION
@ObjectModel:
  { usageType: { serviceQuality: #C,
                 sizeCategory : #L,
                 dataClass: #MASTER
               },
    semanticKey:['Product'],
    compositionRoot: true
  }
@ClientHandling.algorithm: #SESSION_VARIABLE
//@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED


define view C_ActiveLogisticalProduct
  as select from I_ActiveLogisticalProduct

  // Supplier - DC

  association [0..*] to C_LoglProdAssgmtSupplierToDC  as _LoglProdAssgmtSupplierToDC  on $projection.Product = _LoglProdAssgmtSupplierToDC.Product
  association [0..*] to C_AssgblSuplrForProcmtProd    as _AssgblSuplrForProcmtProd    on $projection.Product = _AssgblSuplrForProcmtProd.Product
  association [0..*] to C_AssgblDCForSuplr            as _AssgblDCForSuplr            on $projection.Product = _AssgblDCForSuplr.Product

  // DC - Store

  association [0..*] to C_LoglProductAssgmtDCToStore  as _LoglProductAssgmtDCToStore  on $projection.Product = _LoglProductAssgmtDCToStore.Product
  association [0..*] to C_AssgblStoreForProcmtProdInt as _AssgblStoreForProcmtProdInt on $projection.Product = _AssgblStoreForProcmtProdInt.Product
  association [0..*] to C_AssgblStoreForProcmtProdExt as _AssgblStoreForProcmtProdExt on $projection.Product = _AssgblStoreForProcmtProdExt.Product
  association [0..*] to C_AssgblDCForStore            as _AssgblDCForStore            on $projection.Product = _AssgblDCForStore.Product

  // DC - DC

  association [0..*] to C_LoglProductAssgmtDCToDC     as _LoglProductAssgmtDCToDC     on $projection.Product = _LoglProductAssgmtDCToDC.Product
  association [0..*] to C_AssgblSupplyingDCForDC      as _AssgblSupplyingDCForDC      on $projection.Product = _AssgblSupplyingDCForDC.Product
  association [0..*] to C_AssgblReceivingDCFromDC     as _AssgblReceivingDCFromDC     on $projection.Product = _AssgblReceivingDCFromDC.Product

  // Supplier - Store

  association [0..*] to C_LoglProdAssgmtSuplrToStore  as _LoglProdAssgmtSuplrToStore  on $projection.Product = _LoglProdAssgmtSuplrToStore.Product


  // units

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

  // product valuehelp

  association [1..1] to I_ProductStdVH                as _ProductVH                   on $projection.Product = _ProductVH.Product

{
      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #HIGH }
      @ObjectModel.text.element:  [ 'ProductDescription' ]
      @Consumption.valueHelp: '_ProductVH'
  key Product,

      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
      ProductDescription,

      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
      ProductGroup,
      _ProductGroup,

      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
      ProductStandardID,

      @Search: { defaultSearchElement: false}
      @ObjectModel.foreignKey.association: '_PurchaseOrderUnitOfMeasure'
      @Semantics.unitOfMeasure: true
      case I_ActiveLogisticalProduct.PurchaseOrderUnit
        when '' then BaseUnit
        else PurchaseOrderUnit
        end                              as PurchaseOrderUnit,
      _PurchaseOrderUnitOfMeasure,

      @Search: { defaultSearchElement: false }
      @ObjectModel.foreignKey.association: '_GoodsIssueUnitOfMeasure'
      @Semantics.unitOfMeasure: true
      case GoodsIssueUnit
        when '' then BaseUnit
        else GoodsIssueUnit
        end                              as GoodsIssueUnit,
      _GoodsIssueUnitOfMeasure,

      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
      ProductCategory,
      _ProductCategory,


      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
      ProductType,
      _ProductType,

      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
      @Semantics.unitOfMeasure: true
      BaseUnit,
      _BaseUnitOfMeasure,

      @Semantics.systemDate.createdAt: true
      @Search.defaultSearchElement: false
      CreationDate,

      @Semantics.user.createdBy: true
      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
      @ObjectModel.text.element:  [ 'CreatedByUserName' ]
      CreatedByUser,

      @ObjectModel.readOnly: true
      @UI.hidden : true
      _CreatedByUser.UserDescription     as CreatedByUserName,

      @ObjectModel.readOnly: true
      @ObjectModel.text.element:  'LastChangedByUserName'
      LastChangedByUser,

      @ObjectModel.readOnly: true
      @UI.hidden : true
      _LastChangedByUser.UserDescription as LastChangedByUserName,

      @ObjectModel.readOnly: true
      @Semantics.systemDate.lastChangedAt: true
      @Search.defaultSearchElement: false
      LastChangeDate,

      @Semantics.systemTime.lastChangedAt: true
      @Search.defaultSearchElement: false
      LastChangeTime,

      @Semantics.imageUrl: true
      @ObjectModel: { readOnly: true,
                      virtualElement: true,
                      virtualElementCalculatedBy: 'ABAP:CL_MD_PRODUCT_ROOT_CALC_EXIT1' }
      cast( '' as productimageurl )      as ProductImageURL,

      @Consumption.hidden: true
      AuthorizationGroup,

      /* Exposing value via associations */
      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _LoglProdAssgmtSupplierToDC,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _LoglProductAssgmtDCToStore,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _LoglProductAssgmtDCToDC,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _AssgblSupplyingDCForDC,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _AssgblReceivingDCFromDC,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _LoglProdAssgmtSuplrToStore,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
      _AssgblSuplrForProcmtProd,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD]
      _AssgblDCForSuplr,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD]
      _AssgblStoreForProcmtProdInt,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD]
      _AssgblStoreForProcmtProdExt,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD]
      _AssgblDCForStore,

      @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD]
      _ProductVH
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ACTIVELOGISTICALPRODUCT",
"I_USER"
],
"ASSOCIATED":
[
"C_ASSGBLDCFORSTORE",
"C_ASSGBLDCFORSUPLR",
"C_ASSGBLRECEIVINGDCFROMDC",
"C_ASSGBLSTOREFORPROCMTPRODEXT",
"C_ASSGBLSTOREFORPROCMTPRODINT",
"C_ASSGBLSUPLRFORPROCMTPROD",
"C_ASSGBLSUPPLYINGDCFORDC",
"C_LOGLPRODASSGMTSUPLRTOSTORE",
"C_LOGLPRODASSGMTSUPPLIERTODC",
"C_LOGLPRODUCTASSGMTDCTODC",
"C_LOGLPRODUCTASSGMTDCTOSTORE",
"I_PRODUCTCATEGORY",
"I_PRODUCTGROUP",
"I_PRODUCTSTDVH",
"I_PRODUCTTYPE",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_ACTIVELOGISTICALPRODUCT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/