I_WorkCenterCapacity

DDL: I_WORKCENTERCAPACITY SQL: IPPWRKCNTRCAP Type: view BASIC Package: VDM_PP_MD_WKC

Work Center Capacity

I_WorkCenterCapacity is a Basic CDS View (Dimension) that provides data about "Work Center Capacity" in SAP S/4HANA. It reads from 1 data source (crca) and exposes 29 fields with key fields WorkCenterInternalID, WorkCenterTypeCode, CapacityCategoryAllocation. It has 10 associations to related views. It is exposed through 1 OData service (PP_PO_CONF_SD). Part of development package VDM_PP_MD_WKC.

Data Sources (1)

SourceAliasJoin Type
crca crca from

Associations (10)

CardinalityTargetAliasCondition
[1..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[1..1] I_WorkCenter _WorkCenter $projection.WorkCenterTypeCode = _WorkCenter.WorkCenterTypeCode and $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
[0..1] I_WorkCenterBySemanticKey _WorkCenterBySemanticKey $projection.Plant = _WorkCenterBySemanticKey.Plant and $projection.WorkCenter = _WorkCenterBySemanticKey.WorkCenter
[1..1] I_WorkCenterType _WorkCenterTypeCode $projection.WorkCenterTypeCode = _WorkCenterTypeCode.WorkCenterTypeCode
[1..1] I_WorkCenterCategory _WorkCenterCategory $projection.WorkCenterCategoryCode = _WorkCenterCategory.WorkCenterCategoryCode
[1..1] I_Capacity _Capacity $projection.CapacityInternalID = _Capacity.CapacityInternalID
[1..1] I_CapacityCategory _CapacityCategory $projection.CapacityCategoryCode = _CapacityCategory.CapacityCategoryCode
[0..1] I_User _LastChangedByUser $projection.LastChangedByUser = _LastChangedByUser.UserID
[0..1] I_UnitOfMeasure _CapacityQuantityUnit $projection.CapacityQuantityUnit = _CapacityQuantityUnit.UnitOfMeasure
[0..1] I_WorkCenterResponsible _WorkCenterResponsible $projection.Plant = _WorkCenterResponsible.Plant and $projection.WorkCenterResponsible = _WorkCenterResponsible.WorkCenterResponsible

Annotations (17)

NameValueLevelField
AbapCatalog.sqlViewName IPPWRKCNTRCAP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
Analytics.dataCategory #DIMENSION view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.representativeKey CapacityCategoryAllocation view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #MASTER view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #BASIC view
EndUserText.label Work Center Capacity view

OData Services (1)

ServiceBindingVersionContractRelease
PP_PO_CONF_SD PP_PO_CONF_SB V4 C1 NOT_TO_BE_RELEASED_STABLE

Fields (29)

KeyFieldSource TableSource FieldDescription
KEY WorkCenterInternalID crca objid
KEY WorkCenterTypeCode crca objty
KEY CapacityCategoryAllocation
LastChangeDate crca aedat_kapa
LastChangedByUser crca aenam_kapa
Plant _WorkCenter Plant
WorkCenter _WorkCenter WorkCenter
WorkCenterCategoryCode _WorkCenter WorkCenterCategoryCode
WorkCenterResponsible _WorkCenter WorkCenterResponsible
CapacityInternalID crca kapid
CapacityCategoryCode _Capacity CapacityCategoryCode
Capacity _Capacity Capacity
SetupCapRequirementFormula crca fork1
ProcgCapRequirementFormula crca fork2
TeardownCapRequirementFormula crca fork3
OtherCapRequirementFormula crca forkn
ValidityStartDate crca begda
ValidityEndDate crca endda
CapacityQuantityUnit _Capacity CapacityQuantityUnit
_Plant _Plant
_WorkCenter _WorkCenter
_WorkCenterBySemanticKey _WorkCenterBySemanticKey
_WorkCenterTypeCode _WorkCenterTypeCode
_WorkCenterCategory _WorkCenterCategory
_Capacity _Capacity
_CapacityCategory _CapacityCategory
_CapacityQuantityUnit _CapacityQuantityUnit
_LastChangedByUser _LastChangedByUser
_WorkCenterResponsible _WorkCenterResponsible
@AbapCatalog.sqlViewName: 'IPPWRKCNTRCAP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AccessControl.privilegedAssociations: ['_LastChangedByUser'] 
@Analytics.dataCategory: #DIMENSION
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE]
@ObjectModel.representativeKey: 'CapacityCategoryAllocation'
@ObjectModel.usageType: {serviceQuality: #B, sizeCategory: #S, dataClass: #MASTER}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Work Center Capacity'

/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ]  } */
define view I_WorkCenterCapacity
  as select from crca as crca

  association [1..1] to I_Plant                   as _Plant                   on  $projection.Plant = _Plant.Plant
  association [1..1] to I_WorkCenter              as _WorkCenter              on  $projection.WorkCenterTypeCode   = _WorkCenter.WorkCenterTypeCode
                                                                              and $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
  association [0..1] to I_WorkCenterBySemanticKey as _WorkCenterBySemanticKey on  $projection.Plant      = _WorkCenterBySemanticKey.Plant
                                                                              and $projection.WorkCenter = _WorkCenterBySemanticKey.WorkCenter
  association [1..1] to I_WorkCenterType          as _WorkCenterTypeCode      on  $projection.WorkCenterTypeCode = _WorkCenterTypeCode.WorkCenterTypeCode
  association [1..1] to I_WorkCenterCategory      as _WorkCenterCategory      on  $projection.WorkCenterCategoryCode = _WorkCenterCategory.WorkCenterCategoryCode
  association [1..1] to I_Capacity                as _Capacity                on  $projection.CapacityInternalID = _Capacity.CapacityInternalID
  association [1..1] to I_CapacityCategory        as _CapacityCategory        on  $projection.CapacityCategoryCode = _CapacityCategory.CapacityCategoryCode
  association [0..1] to I_User                    as _LastChangedByUser       on  $projection.LastChangedByUser = _LastChangedByUser.UserID
  association [0..1] to I_UnitOfMeasure           as _CapacityQuantityUnit    on  $projection.CapacityQuantityUnit = _CapacityQuantityUnit.UnitOfMeasure
  association [0..1] to I_WorkCenterResponsible   as _WorkCenterResponsible   on  $projection.Plant                 = _WorkCenterResponsible.Plant
                                                                              and $projection.WorkCenterResponsible = _WorkCenterResponsible.WorkCenterResponsible 
{
      // Key

      @ObjectModel.foreignKey.association: '_WorkCenter'
  key crca.objid                                        as WorkCenterInternalID,
      @ObjectModel.foreignKey.association: '_WorkCenterTypeCode'
  key crca.objty                                        as WorkCenterTypeCode,
  key cast(crca.canum as pph_cr_capnum preserving type) as CapacityCategoryAllocation,

      // Admin

      @Semantics.systemDate.lastChangedAt: true
      crca.aedat_kapa                                   as LastChangeDate,
      @Semantics.user.lastChangedBy: true
      crca.aenam_kapa                                   as LastChangedByUser,

      // Assignments

      @ObjectModel.foreignKey.association: '_Plant'
      _WorkCenter.Plant                                 as Plant,
      @ObjectModel.foreignKey.association: '_WorkCenterBySemanticKey'
      _WorkCenter.WorkCenter                            as WorkCenter,
      @ObjectModel.foreignKey.association: '_WorkCenterCategory'
      _WorkCenter.WorkCenterCategoryCode                as WorkCenterCategoryCode,
      @ObjectModel.foreignKey.association: '_WorkCenterResponsible'
      _WorkCenter.WorkCenterResponsible                 as WorkCenterResponsible,
      @ObjectModel.foreignKey.association: '_Capacity'
      crca.kapid                                        as CapacityInternalID,
      @ObjectModel.foreignKey.association: '_CapacityCategory'
      _Capacity.CapacityCategoryCode                    as CapacityCategoryCode,
      _Capacity.Capacity                                as Capacity,

      // Formula IDs

      crca.fork1                                        as SetupCapRequirementFormula,
      crca.fork2                                        as ProcgCapRequirementFormula,
      crca.fork3                                        as TeardownCapRequirementFormula,
      crca.forkn                                        as OtherCapRequirementFormula,

      // Dates

      @Semantics.businessDate.from
      crca.begda                                        as ValidityStartDate,
      @Semantics.businessDate.to
      crca.endda                                        as ValidityEndDate,

      // UoM

      @Semantics.unitOfMeasure: true
      _Capacity.CapacityQuantityUnit                    as CapacityQuantityUnit,

      case 
        when _WorkCenter.WorkCenterLastChangeDateTime is null 
        then cast(dats_tims_to_tstmp(cast('20190101' as dats), cast('120000'as tims), 'UTC', $session.client, 'NULL') as cr_lastchange_datetime)
        else _WorkCenter.WorkCenterLastChangeDateTime 
      end                                               as WorkCenterLastChangeDateTime,

      // Associations

      _Plant,
      _WorkCenter,
      _WorkCenterBySemanticKey,
      _WorkCenterTypeCode,
      _WorkCenterCategory,
      _Capacity,
      _CapacityCategory,
      _CapacityQuantityUnit,
      _LastChangedByUser,
      _WorkCenterResponsible
};