I_WorkCenterCapacityInterval_2

DDL: I_WORKCENTERCAPACITYINTERVAL_2 SQL: IWRKCTRCAPINTVL2 Type: view COMPOSITE

Work Center Capacity Intervals 2

I_WorkCenterCapacityInterval_2 is a Composite CDS View that provides data about "Work Center Capacity Intervals 2" in SAP S/4HANA. It reads from 2 data sources (I_Capacity, I_AvailableCapacityType) and exposes 9 fields with key fields CapacityInternalID, CapacityActiveVersion, IntervalEndDate. It has 3 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_Capacity _CapHeader from
I_AvailableCapacityType _Version cross

Associations (3)

CardinalityTargetAliasCondition
[1..1] I_Capacity _Capacity $projection.CapacityInternalID = _Capacity.CapacityInternalID
[1..1] I_AvailableCapacityType _AvailableCapacityType $projection.CapacityActiveVersion = _AvailableCapacityType.AvailableCapacityType
[0..1] I_WorkDayRule _WorkDayRule $projection.WorkDayRule = _WorkDayRule.WorkDayRule

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName IWRKCTRCAPINTVL2 view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Work Center Capacity Intervals 2 view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #COMPOSITE view

Fields (9)

KeyFieldSource TableSource FieldDescription
KEY CapacityInternalID I_Capacity CapacityInternalID
KEY CapacityActiveVersion
KEY IntervalEndDate
ShiftSequence
WorkDayRule
CapacityNumberOfShifts
_Capacity _Capacity
_AvailableCapacityType _AvailableCapacityType
_WorkDayRule _WorkDayRule
@AbapCatalog.sqlViewName: 'IWRKCTRCAPINTVL2'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Work Center Capacity Intervals 2'
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED}
@VDM.viewType: #COMPOSITE
define view I_WorkCenterCapacityInterval_2
  as select from            I_Capacity                   as _CapHeader
    cross join              I_AvailableCapacityType      as _Version
    left outer to many join P_WrkCtrAvailableCapInterval as _Interval on  _Interval.CapacityInternalID    = _CapHeader.CapacityInternalID
                                                                      and _Interval.AvailableCapacityType = _Version.AvailableCapacityType
  association [1..1] to I_Capacity              as _Capacity              on $projection.CapacityInternalID = _Capacity.CapacityInternalID
  association [1..1] to I_AvailableCapacityType as _AvailableCapacityType on $projection.CapacityActiveVersion = _AvailableCapacityType.AvailableCapacityType
  association [0..1] to I_WorkDayRule           as _WorkDayRule           on $projection.WorkDayRule = _WorkDayRule.WorkDayRule
{
  key _CapHeader.CapacityInternalID,
  key coalesce(_Interval.AvailableCapacityType, _Version.AvailableCapacityType ) as CapacityActiveVersion,
  key coalesce(_Interval.ValidityEndDate, '99991231' )                           as IntervalEndDate,

      case when _Interval.ValidityBeginDate is null
      then '00010102'
      else
      cast(dats_add_days(_Interval.ValidityBeginDate,1,'FAIL')as datuv preserving type )
      end                                                                        as IntervalStartDate,

      case when _Interval.StdAvailableCapacityIsValid is null
      then 'X'
      else _Interval.StdAvailableCapacityIsValid
      end                                                                        as StdAvailableCapacityIsValid,
      //      cast( coalesce(_Interval.StdAvailableCapacityIsValid, true ) as boole_d preserving type )  as StdAvailableCapacityIsValid,

      //      _Interval.StdAvailableCapacityIsValid as StdAvailableCapacityIsValid,


      coalesce(_Interval.ShiftSequence, ' ' )                                    as ShiftSequence,

      coalesce(_Interval.WorkDayRule, ' ')                                       as WorkDayRule,

      coalesce(_Interval.CapacityNumberOfShifts, '1' )                           as CapacityNumberOfShifts,

      case
      when _Interval.AvailableCapacityIntervalDurn is null
      then '01'
      when _Interval.AvailableCapacityIntervalDurn is initial
      then '01'
      else
      _Interval.AvailableCapacityIntervalDurn
      end                                                                        as AvailableCapacityIntervalDurn,

      case
      when _Interval.StdAvailableCapacityIsValid is null
      then
      cast(_CapHeader.CapacityNumberOfCapacities as kapanzahl preserving type)
      when _Interval.StdAvailableCapacityIsValid is initial
      then
      cast(_Interval.CapacityNumberOfCapacities as kapanzahl preserving type)
      else
      cast(_Capacity.CapacityNumberOfCapacities as kapanzahl preserving type)
      end                                                                        as CapacityNumberOfCapacities,

      case
      when _Interval.StdAvailableCapacityIsValid is null
      then
       _CapHeader.CapacityPlanUtilizationPercent
      when _Interval.StdAvailableCapacityIsValid is initial
      then
      _Interval.CapacityPlanUtilizationPercent
      else
       _Capacity.CapacityPlanUtilizationPercent
      end                                                                        as CapacityPlanUtilizationPercent,

      case when _Capacity.CapacityLastChangeDateTime is null then
           cast('20190101120000' as kap_lastchange_datetime)
      else _Capacity.CapacityLastChangeDateTime end                              as CapacityLastChangeDateTime,

      _Capacity,
      _AvailableCapacityType,
      _WorkDayRule
}