I_CapacityRequirementItemCap

DDL: I_CAPACITYREQUIREMENTITEMCAP SQL: IPPCAPRQMTITMCAP Type: view BASIC

Capacity Requirement Item Capacity

I_CapacityRequirementItemCap is a Basic CDS View (Dimension) that provides data about "Capacity Requirement Item Capacity" in SAP S/4HANA. It reads from 1 data source (kbed) and exposes 111 fields with key fields CapacityRequirement, CapacityRequirementItem. It has 37 associations to related views.

Data Sources (1)

SourceAliasJoin Type
kbed kbed from

Associations (37)

CardinalityTargetAliasCondition
[1..1] I_CapacityRequirement _CapacityRequirement $projection.CapacityRequirement = _CapacityRequirement.CapacityRequirement
[1..1] I_CapacityRequirementItem _CapacityRequirementItem $projection.CapacityRequirement = _CapacityRequirementItem.CapacityRequirement and $projection.CapacityRequirementItem = _CapacityRequirementItem.CapacityRequirementItem
[1..1] I_CapacityRequirementConf _CapacityRequirementConf $projection.CapacityRqmtConfirmation= _CapacityRequirementConf.CapacityRqmtConfirmation
[1..1] I_Capacity _Capacity $projection.CapacityInternalID = _Capacity.CapacityInternalID
[0..1] I_WorkCenter _WorkCenter $projection.WorkCenterTypeCode = _WorkCenter.WorkCenterTypeCode and $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
[1..1] I_WorkCenterType _WorkCenterType $projection.WorkCenterTypeCode = _WorkCenterType.WorkCenterTypeCode
[0..1] I_WorkCenter _WorkCenter_2 $projection.WorkCenterTypeCode_2 = _WorkCenter_2.WorkCenterTypeCode and $projection.WorkCenterInternalID = _WorkCenter_2.WorkCenterInternalID
[1..1] I_WorkCenterType _WorkCenterType_2 $projection.WorkCenterTypeCode_2 = _WorkCenterType_2.WorkCenterTypeCode
[0..1] I_PlannedOrder _PlannedOrder $projection.PlannedOrder = _PlannedOrder.PlannedOrder
[0..1] I_OrderInternalID _OrderInternalID $projection.OrderInternalID = _OrderInternalID.OrderInternalID
[0..1] I_LogisticsOrder _Order $projection.OrderID = _Order.OrderID
[0..1] I_OrderItem _OrderItem $projection.OrderID = _OrderItem.OrderID and _OrderItem.OrderItem = '0001'
[0..1] I_OrderOperation _OrderOperation $projection.OrderInternalID = _OrderOperation.OrderInternalID and $projection.OrderOperationInternalID = _OrderOperation.OrderOperationInternalID
[0..1] I_SalesOperationsPlanningOrder _SalesOperationsPlanningOrder $projection.SalesOperationsPlanningOrder= _SalesOperationsPlanningOrder.SalesOperationsPlanningOrder
[0..1] I_BillOfOperationsType _BillOfOperationsType $projection.BillOfOperationsType = _BillOfOperationsType.BillOfOperationsType
[0..1] I_BillOfOperationsGroup _BillOfOperationsGroup $projection.BillOfOperationsType = _BillOfOperationsGroup.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperationsGroup.BillOfOperationsGroup
[0..1] I_BillOfOperations _BillOfOperations $projection.BillOfOperationsType = _BillOfOperations.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperations.BillOfOperationsGroup and $projection.BillOfOperations = _BillOfOperations.BillOfOperationsVariant
[0..1] I_BillOfOperationsChangeState _BillOfOperationsChangeState $projection.BillOfOperationsType = _BillOfOperationsChangeState.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperationsChangeState.BillOfOperationsGroup and $projection.BillOfOperations = _BillOfOperationsChangeState.BillOfOperationsVariant and $projection.BillOfOperationsChangeStateID = _BillOfOperationsChangeState.BOOInternalVersionCounter
[0..1] I_MfgBillOfOperationsSequence _BillOfOperationsSequence $projection.BillOfOperationsType = _BillOfOperationsSequence.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperationsSequence.BillOfOperationsGroup and $projection.BillOfOperations = _BillOfOperationsSequence.BillOfOperationsVariant and $projection.BillOfOperationsSequence = _BillOfOperationsSequence.BillOfOperationsSequence
[0..1] I_BillOfOperationsSequence _BillOfOperationsSequence2 $projection.BillOfOperationsType = _BillOfOperationsSequence2.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperationsSequence2.BillOfOperationsGroup and $projection.BillOfOperations = _BillOfOperationsSequence2.BillOfOperationsVariant and $projection.BillOfOperationsSequence = _BillOfOperationsSequence2.BillOfOperationsSequence
[0..1] I_BOOOperationInternalID _BOOOperationInternalID $projection.BillOfOperationsType = _BOOOperationInternalID.BillOfOperationsType and $projection.BillOfOperationsGroup = _BOOOperationInternalID.BillOfOperationsGroup and $projection.BOOOperationInternalID = _BOOOperationInternalID.BOOOperationInternalID
[0..1] I_BillOfOperationsOpBasic _BOOOperationInternalVersion $projection.BillOfOperationsType = _BOOOperationInternalVersion.BillOfOperationsType and $projection.BillOfOperationsGroup = _BOOOperationInternalVersion.BillOfOperationsGroup and $projection.BOOOperationInternalID = _BOOOperationInternalVersion.BOOOperationInternalID and $projection.BOOOpInternalVersionCounter = _BOOOperationInternalVersion.BOOOpInternalVersionCounter
[0..1] I_BOOOperationInternalID _BOOSubOperationInternalID $projection.BillOfOperationsType = _BOOSubOperationInternalID.BillOfOperationsType and $projection.BillOfOperationsGroup = _BOOSubOperationInternalID.BillOfOperationsGroup and $projection.BOOSubOperationInternalID = _BOOSubOperationInternalID.BOOOperationInternalID
[0..1] I_BillOfOperationsOpBasic _BOOSubOperationInternalVers $projection.BillOfOperationsType = _BOOSubOperationInternalVers.BillOfOperationsType and $projection.BillOfOperationsGroup = _BOOSubOperationInternalVers.BillOfOperationsGroup and $projection.BOOSubOperationInternalID = _BOOSubOperationInternalVers.BOOOperationInternalID and $projection.BOOSubOperationInternalVersion = _BOOSubOperationInternalVers.BOOOpInternalVersionCounter --
[0..1] I_Employee _Employee $projection.PersonnelNumber = _Employee.Employee
[0..1] I_Employment _Employment $projection.PersonnelNumber = _Employment.EmploymentInternalID
[0..1] I_StatusObjectStatus _StatusObjectStatus $projection.ObjectInternalID = _StatusObjectStatus.StatusObject and _StatusObjectStatus.StatusCode = 'I0117'
[0..1] I_StatusObjectStatus _OrderStatusObjectStatus $projection.OrderObjectInternalID = _OrderStatusObjectStatus.StatusObject and _OrderStatusObjectStatus.StatusCode = 'I0117'
[0..1] I_UnitOfMeasure _WorkQuantityUnit1 $projection.StandardWorkQuantityUnit1 = _WorkQuantityUnit1.UnitOfMeasure
[0..1] I_UnitOfMeasure _WorkQuantityUnit2 $projection.StandardWorkQuantityUnit2 = _WorkQuantityUnit2.UnitOfMeasure
[0..1] I_UnitOfMeasure _WorkQuantityUnit3 $projection.StandardWorkQuantityUnit3 = _WorkQuantityUnit3.UnitOfMeasure
[0..1] I_UnitOfMeasure _WorkQuantityUnit4 $projection.StandardWorkQuantityUnit4 = _WorkQuantityUnit4.UnitOfMeasure
[0..1] I_UnitOfMeasure _WorkQuantityUnit5 $projection.StandardWorkQuantityUnit5 = _WorkQuantityUnit5.UnitOfMeasure
[0..1] I_UnitOfMeasure _WorkQuantityUnit6 $projection.StandardWorkQuantityUnit6 = _WorkQuantityUnit6.UnitOfMeasure
[0..1] I_UnitOfMeasure _StandardDurationUnit $projection.OperationStandardDurationUnit = _StandardDurationUnit.UnitOfMeasure
[0..1] I_UnitOfMeasure _ForecastDurationUnit $projection.ActualForecastDurationUnit = _ForecastDurationUnit.UnitOfMeasure
[0..1] I_UnitOfMeasure _UnitOfMeasure $projection.CapacityRequirementUnit = _UnitOfMeasure.UnitOfMeasure

Annotations (18)

NameValueLevelField
AbapCatalog.sqlViewName IPPCAPRQMTITMCAP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #MANDATORY view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
Analytics.internalName #LOCAL view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #NONE view
ObjectModel.representativeKey CapacityRqmtItemCapacity view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #BASIC view
EndUserText.label Capacity Requirement Item Capacity view

Fields (111)

KeyFieldSource TableSource FieldDescription
KEY CapacityRequirement kbed bedid
KEY CapacityRequirementItem
CapacityRqmtConfirmation kbed bstkz
WorkCenterInternalID kbed arbid
WorkCenterTypeCode
WorkCenterTypeCode_2
CapacityInternalID kbed kapid
PlannedOrder kbed plnum
OrderInternalID
OrderID afko aufnr
OrderOperationInternalID
Operation kbed vornr
Operation_2
SalesOperationsPlanningOrder kbed safnr
PersonnelNumber kbed pernr
CapacityRequirementDistrKey kbed kpver
OperationIsPhase kbed phase_kz
SuperiorOperationInternalID
BillOfOperationsType
BillOfOperationsGroup
BillOfOperations
BillOfOperationsChangeStateID
BillOfOperationsSequence kbed plnfl
BOOOperationInternalID kbed plnkn
BOOOpInternalVersionCounter kbed zaehp
BOOSubOperationInternalID kbed splkn
BOOSubOperationInternalVersion kbed szaehl
CapacityRequirementUnit kbed keinh
ScheduledCapReqOpSegSetupDurn kbed kruesoll
RemainingCapReqOpSegSetupDurn kbed kruerest
ScheduledCapReqOpSegProcgDurn kbed kbeasoll
RemainingCapReqOpSegProcgDurn kbed kbearest
ScheduledCapReqOpSegTrdwnDurn kbed kabrsoll
RemainingCapReqOpSegTrdwnDurn kbed kabrrest
OperationStandardDurationUnit kbez daune
OperationStandardDuration kbez dauno
OperationEarliestStartDate kbed fstad
OperationEarliestStartTime kbed fstau
OperationEarliestEndDate kbed fendd
OperationEarliestEndTime kbed fendu
OperationLatestStartDate kbed sstad
OperationLatestStartTime kbed sstau
OperationLatestEndDate kbed sendd
OperationLatestEndTime kbed sendu
ActualStartDate kbed istad
ActualStartTime kbed istau
ActualEndDate kbed iendd
ActualEndTime kbed iendu
ErlstSchedldProcStrtDte
ErlstSchedldProcStrtTime
ErlstSchedldTrdwnStrtDte
ErlstSchedldTrdwnStrtTime
LtstSchedldProcStrtDte
LtstSchedldProcStrtTime
LtstSchedldTrdwnStrtDte
LtstSchedldTrdwnStrtTime
ActualNumberOfSplits kbed ispli
CapacityRequirementSplit
ObjectInternalID kbed kbsta
OrderObjectInternalID
StandardWorkQuantityUnit1
StandardWorkQuantity1
StandardWorkQuantityUnit2
StandardWorkQuantity2
StandardWorkQuantityUnit3
StandardWorkQuantity3
StandardWorkQuantityUnit4
StandardWorkQuantity4
StandardWorkQuantityUnit5
StandardWorkQuantity5
StandardWorkQuantityUnit6
StandardWorkQuantity6
StandardWorkQuantityUnit kbez arbeh
PlannedWorkQuantity kbez arbei
ActualWorkQuantity kbez ismnw
_CapacityRequirement _CapacityRequirement
_CapacityRequirementItem _CapacityRequirementItem
_CapacityRequirementConf _CapacityRequirementConf
_Capacity _Capacity
_PlannedOrder _PlannedOrder
_Order _Order
_OrderItem _OrderItem
_OrderOperation _OrderOperation
_OrderInternalID _OrderInternalID
_SalesOperationsPlanningOrder _SalesOperationsPlanningOrder
_Employee _Employee
_Employment _Employment
_WorkCenter _WorkCenter
_WorkCenter_2 _WorkCenter_2
_WorkCenterType _WorkCenterType
_WorkCenterType_2 _WorkCenterType_2
_BillOfOperationsType _BillOfOperationsType
_BillOfOperationsGroup _BillOfOperationsGroup
_BillOfOperations _BillOfOperations
_BillOfOperationsChangeState _BillOfOperationsChangeState
_BillOfOperationsSequence _BillOfOperationsSequence
_BillOfOperationsSequence2 _BillOfOperationsSequence2
_BOOOperationInternalID _BOOOperationInternalID
_BOOOperationInternalVersion _BOOOperationInternalVersion
_BOOSubOperationInternalID _BOOSubOperationInternalID
_BOOSubOperationInternalVers _BOOSubOperationInternalVers
_StatusObjectStatus _StatusObjectStatus
_OrderStatusObjectStatus _OrderStatusObjectStatus
_WorkQuantityUnit1 _WorkQuantityUnit1
_WorkQuantityUnit2 _WorkQuantityUnit2
_WorkQuantityUnit3 _WorkQuantityUnit3
_WorkQuantityUnit4 _WorkQuantityUnit4
_WorkQuantityUnit5 _WorkQuantityUnit5
_WorkQuantityUnit6 _WorkQuantityUnit6
_StandardDurationUnit _StandardDurationUnit
_UnitOfMeasure _UnitOfMeasure
@AbapCatalog.sqlViewName: 'IPPCAPRQMTITMCAP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.privilegedAssociations: ['_StatusObjectStatus', '_OrderStatusObjectStatus']
@Analytics.dataCategory: #DIMENSION
@Analytics.dataExtraction.enabled: true
@Analytics.internalName: #LOCAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #NONE
@ObjectModel.supportedCapabilities: [#CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #EXTRACTION_DATA_SOURCE, #ANALYTICAL_DIMENSION]
@ObjectModel.representativeKey: 'CapacityRqmtItemCapacity'
@ObjectModel.semanticKey: ['CapacityRequirement', 'CapacityRequirementItem', 'CapacityRqmtItemCapacity']
@ObjectModel.usageType: {serviceQuality: #B, sizeCategory: #XL, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Capacity Requirement Item Capacity'

/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK", "CARDINALITY_CHECK" ]  } */
define view I_CapacityRequirementItemCap
  as select from           kbed as kbed
    left outer to one join kbez as kbez on  kbed.bedid = kbez.bedid 
                                        and kbed.bedzl = kbez.bedzl
                                        and kbed.canum = kbez.canum
    left outer to one join afko as afko on  kbed.aufpl = afko.aufpl 
                                        and kbed.aufpl > '0000000000'

  association [1..1] to I_CapacityRequirement          as _CapacityRequirement          on  $projection.CapacityRequirement = _CapacityRequirement.CapacityRequirement
  association [1..1] to I_CapacityRequirementItem      as _CapacityRequirementItem      on  $projection.CapacityRequirement     = _CapacityRequirementItem.CapacityRequirement
                                                                                        and $projection.CapacityRequirementItem = _CapacityRequirementItem.CapacityRequirementItem
  association [1..1] to I_CapacityRequirementConf      as _CapacityRequirementConf      on  $projection.CapacityRqmtConfirmation= _CapacityRequirementConf.CapacityRqmtConfirmation
  association [1..1] to I_Capacity                     as _Capacity                     on  $projection.CapacityInternalID = _Capacity.CapacityInternalID
  association [0..1] to I_WorkCenter                   as _WorkCenter                   on  $projection.WorkCenterTypeCode = _WorkCenter.WorkCenterTypeCode 
                                                                                        and $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
  association [1..1] to I_WorkCenterType               as _WorkCenterType               on  $projection.WorkCenterTypeCode = _WorkCenterType.WorkCenterTypeCode
  association [0..1] to I_WorkCenter                   as _WorkCenter_2                 on  $projection.WorkCenterTypeCode_2 = _WorkCenter_2.WorkCenterTypeCode 
                                                                                        and $projection.WorkCenterInternalID = _WorkCenter_2.WorkCenterInternalID
  association [1..1] to I_WorkCenterType               as _WorkCenterType_2             on  $projection.WorkCenterTypeCode_2 = _WorkCenterType_2.WorkCenterTypeCode
  association [0..1] to I_PlannedOrder                 as _PlannedOrder                 on  $projection.PlannedOrder = _PlannedOrder.PlannedOrder
  association [0..1] to I_OrderInternalID              as _OrderInternalID              on  $projection.OrderInternalID = _OrderInternalID.OrderInternalID
  association [0..1] to I_LogisticsOrder               as _Order                        on  $projection.OrderID = _Order.OrderID
  association [0..1] to I_OrderItem                    as _OrderItem                    on  $projection.OrderID  = _OrderItem.OrderID
                                                                                        and _OrderItem.OrderItem = '0001'
  association [0..1] to I_OrderOperation               as _OrderOperation               on  $projection.OrderInternalID          = _OrderOperation.OrderInternalID
                                                                                        and $projection.OrderOperationInternalID = _OrderOperation.OrderOperationInternalID
  association [0..1] to I_SalesOperationsPlanningOrder as _SalesOperationsPlanningOrder on  $projection.SalesOperationsPlanningOrder= _SalesOperationsPlanningOrder.SalesOperationsPlanningOrder
  association [0..1] to I_BillOfOperationsType         as _BillOfOperationsType         on  $projection.BillOfOperationsType = _BillOfOperationsType.BillOfOperationsType
  association [0..1] to I_BillOfOperationsGroup        as _BillOfOperationsGroup        on  $projection.BillOfOperationsType  = _BillOfOperationsGroup.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup = _BillOfOperationsGroup.BillOfOperationsGroup
  association [0..1] to I_BillOfOperations             as _BillOfOperations             on  $projection.BillOfOperationsType  = _BillOfOperations.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup = _BillOfOperations.BillOfOperationsGroup
                                                                                        and $projection.BillOfOperations      = _BillOfOperations.BillOfOperationsVariant
  association [0..1] to I_BillOfOperationsChangeState  as _BillOfOperationsChangeState  on  $projection.BillOfOperationsType          = _BillOfOperationsChangeState.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup         = _BillOfOperationsChangeState.BillOfOperationsGroup
                                                                                        and $projection.BillOfOperations              = _BillOfOperationsChangeState.BillOfOperationsVariant
                                                                                        and $projection.BillOfOperationsChangeStateID = _BillOfOperationsChangeState.BOOInternalVersionCounter
  association [0..1] to I_MfgBillOfOperationsSequence  as _BillOfOperationsSequence     on  $projection.BillOfOperationsType     = _BillOfOperationsSequence.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup    = _BillOfOperationsSequence.BillOfOperationsGroup
                                                                                        and $projection.BillOfOperations         = _BillOfOperationsSequence.BillOfOperationsVariant
                                                                                        and $projection.BillOfOperationsSequence = _BillOfOperationsSequence.BillOfOperationsSequence
  association [0..1] to I_BillOfOperationsSequence     as _BillOfOperationsSequence2    on  $projection.BillOfOperationsType     = _BillOfOperationsSequence2.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup    = _BillOfOperationsSequence2.BillOfOperationsGroup
                                                                                        and $projection.BillOfOperations         = _BillOfOperationsSequence2.BillOfOperationsVariant
                                                                                        and $projection.BillOfOperationsSequence = _BillOfOperationsSequence2.BillOfOperationsSequence
  association [0..1] to I_BOOOperationInternalID       as _BOOOperationInternalID       on  $projection.BillOfOperationsType   = _BOOOperationInternalID.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup  = _BOOOperationInternalID.BillOfOperationsGroup
                                                                                        and $projection.BOOOperationInternalID = _BOOOperationInternalID.BOOOperationInternalID
  association [0..1] to I_BillOfOperationsOpBasic      as _BOOOperationInternalVersion  on  $projection.BillOfOperationsType        = _BOOOperationInternalVersion.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup       = _BOOOperationInternalVersion.BillOfOperationsGroup
                                                                                        and $projection.BOOOperationInternalID      = _BOOOperationInternalVersion.BOOOperationInternalID
                                                                                        and $projection.BOOOpInternalVersionCounter = _BOOOperationInternalVersion.BOOOpInternalVersionCounter
  association [0..1] to I_BOOOperationInternalID       as _BOOSubOperationInternalID    on  $projection.BillOfOperationsType      = _BOOSubOperationInternalID.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup     = _BOOSubOperationInternalID.BillOfOperationsGroup
                                                                                        and $projection.BOOSubOperationInternalID = _BOOSubOperationInternalID.BOOOperationInternalID
  association [0..1] to I_BillOfOperationsOpBasic      as _BOOSubOperationInternalVers  on  $projection.BillOfOperationsType           = _BOOSubOperationInternalVers.BillOfOperationsType
                                                                                        and $projection.BillOfOperationsGroup          = _BOOSubOperationInternalVers.BillOfOperationsGroup
                                                                                        and $projection.BOOSubOperationInternalID      = _BOOSubOperationInternalVers.BOOOperationInternalID
                                                                                        and $projection.BOOSubOperationInternalVersion = _BOOSubOperationInternalVers.BOOOpInternalVersionCounter
--association [0..1] to I_Employee                     as _Employee                     on  $projection.PersonnelNumber = _Employee.Employee
  association [0..1] to I_WorkforcePerson              as _Employee                     on  $projection.PersonnelNumber = _Employee.PersonExternalID
--association [0..1] to I_Employment                   as _Employment                   on  $projection.PersonnelNumber = _Employment.EmploymentInternalID
  association [0..1] to I_PersonWorkAgreement_1        as _Employment                   on  $projection.PersonnelNumber = _Employment.PersonWorkAgreement
  association [0..1] to I_StatusObjectStatus           as _StatusObjectStatus           on  $projection.ObjectInternalID = _StatusObjectStatus.StatusObject 
                                                                                        and _StatusObjectStatus.StatusCode = 'I0117'
  association [0..1] to I_StatusObjectStatus           as _OrderStatusObjectStatus      on  $projection.OrderObjectInternalID = _OrderStatusObjectStatus.StatusObject 
                                                                                        and _OrderStatusObjectStatus.StatusCode = 'I0117'
  association [0..1] to I_UnitOfMeasure                as _WorkQuantityUnit1            on  $projection.StandardWorkQuantityUnit1 = _WorkQuantityUnit1.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _WorkQuantityUnit2            on  $projection.StandardWorkQuantityUnit2 = _WorkQuantityUnit2.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _WorkQuantityUnit3            on  $projection.StandardWorkQuantityUnit3 = _WorkQuantityUnit3.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _WorkQuantityUnit4            on  $projection.StandardWorkQuantityUnit4 = _WorkQuantityUnit4.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _WorkQuantityUnit5            on  $projection.StandardWorkQuantityUnit5 = _WorkQuantityUnit5.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _WorkQuantityUnit6            on  $projection.StandardWorkQuantityUnit6 = _WorkQuantityUnit6.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _StandardDurationUnit         on  $projection.OperationStandardDurationUnit = _StandardDurationUnit.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _ForecastDurationUnit         on  $projection.ActualForecastDurationUnit = _ForecastDurationUnit.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _UnitOfMeasure                on  $projection.CapacityRequirementUnit = _UnitOfMeasure.UnitOfMeasure
{
      // Key

      @ObjectModel.foreignKey.association: '_CapacityRequirement'
  key kbed.bedid as CapacityRequirement,
      @ObjectModel.foreignKey.association: '_CapacityRequirementItem'
  key cast(kbed.bedzl as pph_bedzl preserving type) as CapacityRequirementItem,
      -- representative key
  key cast(kbed.canum as pph_canum preserving type) as CapacityRqmtItemCapacity,

      // Assignments

      @ObjectModel.foreignKey.association: '_CapacityRequirementConf'    
      kbed.bstkz as CapacityRqmtConfirmation,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_WorkCenterStdVH', element: 'WorkCenterInternalID' } } ]
      @ObjectModel.foreignKey.association: '_WorkCenter_2'
      kbed.arbid as WorkCenterInternalID,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'WorkCenterTypeCode_2'
      @ObjectModel.foreignKey.association: '_WorkCenterType'
      cast('A' as pph_arbty preserving type)                  as WorkCenterTypeCode,
      @ObjectModel.foreignKey.association: '_WorkCenterType_2'
      cast('A ' as vdm_arbty preserving type)                 as WorkCenterTypeCode_2,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CapacityStdVH', element: 'CapacityInternalID' } } ]
      @ObjectModel.foreignKey.association: '_Capacity'
      kbed.kapid as CapacityInternalID,
      @ObjectModel.foreignKey.association: '_PlannedOrder'
      @ObjectModel.sapObjectNodeTypeReference: 'PlannedOrder'
      kbed.plnum as PlannedOrder,
      @ObjectModel.foreignKey.association: '_OrderInternalID'
      cast(kbed.aufpl as pph_aufpl preserving type)           as OrderInternalID,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_LogisticsOrderStdVH', element: 'OrderID' } } ]
      @ObjectModel.foreignKey.association: '_Order'
      afko.aufnr as OrderID,
      @ObjectModel.foreignKey.association: '_OrderOperation'
      cast(kbed.aplzl as operationinternalid preserving type) as OrderOperationInternalID,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'Operation_2'
      kbed.vornr as Operation,                                                // with conv. exit NUMCV

      cast(kbed.vornr as vdm_vornr preserving type)           as Operation_2, // without conversion exit

      @ObjectModel.foreignKey.association: '_SalesOperationsPlanningOrder'
      kbed.safnr as SalesOperationsPlanningOrder,
      @ObjectModel.foreignKey.association: '_Employment'
      kbed.pernr as PersonnelNumber,
      kbed.kpver as CapacityRequirementDistrKey,
      kbed.phase_kz as OperationIsPhase,
      cast(kbed.bedzlf as pph_sumnr preserving type)          as SuperiorOperationInternalID,

      // Assignments BOO Header

      @ObjectModel.foreignKey.association: '_BillOfOperationsType'
      cast(kbed.plnty as billofoperationstype    preserving type)  as BillOfOperationsType,
      @ObjectModel.foreignKey.association: '_BillOfOperationsGroup'
      cast(kbed.plnnr as billofoperations        preserving type)  as BillOfOperationsGroup,
      @ObjectModel.foreignKey.association: '_BillOfOperations'
      cast(kbed.plnal as billofoperationsvariant preserving type)  as BillOfOperations,
      @ObjectModel.foreignKey.association: '_BillOfOperationsChangeState'
      cast(kbed.zaehl as billofoperationschgstate preserving type) as BillOfOperationsChangeStateID,
      // Assignments BOO Sequence

      @ObjectModel.foreignKey.association: '_BillOfOperationsSequence2'
      kbed.plnfl                                                   as BillOfOperationsSequence,
      // Assignments BOO Operation

      @ObjectModel.foreignKey.association: '_BOOOperationInternalID'
      kbed.plnkn                                                   as BOOOperationInternalID,
      @ObjectModel.foreignKey.association: '_BOOOperationInternalVersion'
      kbed.zaehp                                                   as BOOOpInternalVersionCounter,
      // Assignments BOO SubOperation

      @ObjectModel.foreignKey.association: '_BOOSubOperationInternalID'
      kbed.splkn                                                   as BOOSubOperationInternalID,
      @ObjectModel.foreignKey.association: '_BOOSubOperationInternalVers'
      kbed.szaehl                                                  as BOOSubOperationInternalVersion,

      // Capacity Durations

      @Semantics.unitOfMeasure: true
      kbed.keinh    as CapacityRequirementUnit,
      kbed.kruesoll as ScheduledCapReqOpSegSetupDurn,
      kbed.kruerest as RemainingCapReqOpSegSetupDurn,
      kbed.kbeasoll as ScheduledCapReqOpSegProcgDurn,
      kbed.kbearest as RemainingCapReqOpSegProcgDurn,
      kbed.kabrsoll as ScheduledCapReqOpSegTrdwnDurn,
      kbed.kabrrest as RemainingCapReqOpSegTrdwnDurn,

      // other durations

      @Semantics.unitOfMeasure: true
      kbez.daune as OperationStandardDurationUnit,
      kbez.dauno as OperationStandardDuration,
      @Semantics.unitOfMeasure: true
      cast(kbez.pdae as pph_pdae preserving type) as ActualForecastDurationUnit,
      cast(kbez.pdau as pph_pdau preserving type) as ActualForecastDuration,         

      // Dates and Times

      kbed.fstad as OperationEarliestStartDate,
      kbed.fstau as OperationEarliestStartTime,
      kbed.fendd as OperationEarliestEndDate,
      kbed.fendu as OperationEarliestEndTime,
      kbed.sstad as OperationLatestStartDate,
      kbed.sstau as OperationLatestStartTime,
      kbed.sendd as OperationLatestEndDate,
      kbed.sendu as OperationLatestEndTime,
      kbed.istad as ActualStartDate,
      kbed.istau as ActualStartTime,
      kbed.iendd as ActualEndDate,
      kbed.iendu as ActualEndTime,
      cast(kbed.pendd as pph_pedd preserving type)  as ActualForecastEndDate,
      cast(kbed.pendu as pph_pedz preserving type)  as ActualForecastEndTime,

      // Time Events

      cast(kbed.fssbd as pph_fssbd preserving type) as ErlstSchedldProcStrtDte,
      cast(kbed.fssbz as pph_fssbz preserving type) as ErlstSchedldProcStrtTime,
      cast(kbed.fssad as pph_fssad preserving type) as ErlstSchedldTrdwnStrtDte,
      cast(kbed.fssaz as pph_fssaz preserving type) as ErlstSchedldTrdwnStrtTime,
      cast(kbed.sssbd as pph_sssbd preserving type) as LtstSchedldProcStrtDte,
      cast(kbed.sssbz as pph_sssbz preserving type) as LtstSchedldProcStrtTime,
      cast(kbed.sssad as pph_sssad preserving type) as LtstSchedldTrdwnStrtDte,
      cast(kbed.sssaz as pph_sssaz preserving type) as LtstSchedldTrdwnStrtTime,

      // Split data

      kbed.ispli                                    as ActualNumberOfSplits,
      cast(kbed.split as pph_split preserving type) as CapacityRequirementSplit,
      
      // Object status 

      kbed.kbsta                                    as ObjectInternalID,
      cast(kbed.obsta as pph_obsta preserving type) as OrderObjectInternalID,

      // Work Quantities 1-6

      @Semantics.unitOfMeasure: true
      cast(kbez.vge01 as pph_vge01 preserving type) as StandardWorkQuantityUnit1,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit1'
      @DefaultAggregation: #SUM
      cast(kbez.vgw01 as vdm_vgw01 preserving type) as StandardWorkQuantity1,
      @Semantics.unitOfMeasure: true
      cast(kbez.vge02 as pph_vge02 preserving type) as StandardWorkQuantityUnit2,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit2'
      @DefaultAggregation: #SUM
      cast(kbez.vgw02 as vdm_vgw02 preserving type) as StandardWorkQuantity2,
      @Semantics.unitOfMeasure: true
      cast(kbez.vge03 as pph_vge03 preserving type) as StandardWorkQuantityUnit3,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit3'
      @DefaultAggregation: #SUM
      cast(kbez.vgw03 as vdm_vgw03 preserving type) as StandardWorkQuantity3,
      @Semantics.unitOfMeasure: true
      cast(kbez.vge04 as pph_vge04 preserving type) as StandardWorkQuantityUnit4,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit4'
      @DefaultAggregation: #SUM
      cast(kbez.vgw04 as vdm_vgw04 preserving type) as StandardWorkQuantity4,
      @Semantics.unitOfMeasure: true
      cast(kbez.vge05 as pph_vge05 preserving type) as StandardWorkQuantityUnit5,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit5'
      @DefaultAggregation: #SUM
      cast(kbez.vgw05 as vdm_vgw05 preserving type) as StandardWorkQuantity5,
      @Semantics.unitOfMeasure: true
      cast(kbez.vge06 as pph_vge06 preserving type) as StandardWorkQuantityUnit6,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit6'
      @DefaultAggregation: #SUM
      cast(kbez.vgw06 as vdm_vgw06 preserving type) as StandardWorkQuantity6,         

      // Work Quantity PM & PS

      @Semantics.unitOfMeasure: true
      kbez.arbeh as StandardWorkQuantityUnit,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit'
      @DefaultAggregation: #SUM
      kbez.arbei as PlannedWorkQuantity,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit'
      @DefaultAggregation: #SUM
      kbez.ismnw as ActualWorkQuantity,
      @Semantics.quantity.unitOfMeasure: 'StandardWorkQuantityUnit'
      @DefaultAggregation: #SUM
      kbez.ofmnw as ForecastedWorkQty,

      // Associations

      @ObjectModel.association.type: [#TO_COMPOSITION_ROOT]
      _CapacityRequirement,
      @ObjectModel.association.type: [#TO_COMPOSITION_PARENT]
      _CapacityRequirementItem,
      _CapacityRequirementConf,
      _Capacity,
      _PlannedOrder,
      _Order,
      _OrderItem,
      _OrderOperation,
      @Consumption.hidden: true
      _OrderInternalID,
      _SalesOperationsPlanningOrder,
      _Employee,
      _Employment,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_WorkCenter_2'
      _WorkCenter,
      _WorkCenter_2,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_WorkCenterType_2'
      @Consumption.hidden: true
      _WorkCenterType,
      @Consumption.hidden: true
      _WorkCenterType_2,      
      _BillOfOperationsType,
      _BillOfOperationsGroup,
      _BillOfOperations,
      _BillOfOperationsChangeState,
      _BillOfOperationsSequence,
      _BillOfOperationsSequence2,
      @Consumption.hidden: true
      _BOOOperationInternalID,
      _BOOOperationInternalVersion,
      @Consumption.hidden: true
      _BOOSubOperationInternalID,
      _BOOSubOperationInternalVers,
      _StatusObjectStatus,
      _OrderStatusObjectStatus,
      _WorkQuantityUnit1,
      _WorkQuantityUnit2,
      _WorkQuantityUnit3,
      _WorkQuantityUnit4,
      _WorkQuantityUnit5,
      _WorkQuantityUnit6,
      _StandardDurationUnit,
      _ForecastDurationUnit,
      _UnitOfMeasure
};
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"AFKO",
"KBED",
"KBEZ"
],
"ASSOCIATED":
[
"I_BILLOFOPERATIONS",
"I_BILLOFOPERATIONSCHANGESTATE",
"I_BILLOFOPERATIONSGROUP",
"I_BILLOFOPERATIONSOPBASIC",
"I_BILLOFOPERATIONSSEQUENCE",
"I_BILLOFOPERATIONSTYPE",
"I_BOOOPERATIONINTERNALID",
"I_CAPACITY",
"I_CAPACITYREQUIREMENT",
"I_CAPACITYREQUIREMENTCONF",
"I_CAPACITYREQUIREMENTITEM",
"I_LOGISTICSORDER",
"I_MFGBILLOFOPERATIONSSEQUENCE",
"I_ORDERINTERNALID",
"I_ORDERITEM",
"I_ORDEROPERATION",
"I_PERSONWORKAGREEMENT_1",
"I_PLANNEDORDER",
"I_SALESOPERATIONSPLANNINGORDER",
"I_STATUSOBJECTSTATUS",
"I_UNITOFMEASURE",
"I_WORKCENTER",
"I_WORKCENTERTYPE",
"I_WORKFORCEPERSON"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/