C_CacheMRPMfgOrder
MRP Manufacturing Orders
C_CacheMRPMfgOrder is a Consumption CDS View that provides data about "MRP Manufacturing Orders" in SAP S/4HANA. It reads from 1 data source (I_SDMAreaOfResponsibility) and exposes 99 fields with key fields MRPPlant, MRPPlanningSegmentType, MRPPlanningSegment, MaterialShortageProfile, MaterialShortageProfileCount. It has 18 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_SDMAreaOfResponsibility | SDMAreaOfResponsibility | inner |
Associations (18)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_MaterialShortageDefinition | _MaterialShortageDef | $projection.MaterialShortageProfile = _MaterialShortageDef.MaterialShortageProfile and $projection.MaterialShortageProfileCount = _MaterialShortageDef.MaterialShortageProfileCount |
| [0..*] | I_MaterialText | _MaterialText | $projection.Material = _MaterialText.Material |
| [0..1] | I_MfgOrderTypeText | _MfgOrderTypeText | $projection.ManufacturingOrderType = _MfgOrderTypeText.ManufacturingOrderType and _MfgOrderTypeText.Language = $session.system_language |
| [0..1] | I_ProductionSupervisor | _ProductionSupervisor | $projection.ProductionPlant = _ProductionSupervisor.Plant and $projection.ProductionSupervisor = _ProductionSupervisor.ProductionSupervisor |
| [0..1] | I_MfgOrderCategoryText | _MfgOrderCategoryText | $projection.MRPElementCategory = _MfgOrderCategoryText.ManufacturingOrderCategory and _MfgOrderCategoryText.Language = $session.system_language |
| [0..1] | I_MRPElementCategoryText | _MRPElementCategoryText | $projection.MRPElementCategory = _MRPElementCategoryText.MRPElementCategory and _MRPElementCategoryText.Language = $session.system_language |
| [0..1] | I_MfgOrdProgressStatusText | _ProgressStatusText | $projection.MfgOrderProgressStatus = _ProgressStatusText.MfgOrderProgressStatus and _ProgressStatusText.Language = $session.system_language |
| [0..1] | I_MfgOrdProgressNextStatusText | _NextStatusText | $projection.MfgOrderProgressNextStatus = _NextStatusText.MfgOrderProgressNextStatus and _NextStatusText.Language = $session.system_language |
| [0..1] | I_MRPController | _MRPController | $projection.MRPPlant = _MRPController.Plant and $projection.MRPController = _MRPController.MRPController |
| [0..1] | C_ComponentCoverageVH | _ComponentCoverage | _ComponentCoverage.CompCvrgInWrkDaysSelection = $projection.CompCvrgInWrkDaysSelection |
| [0..1] | C_MaterialDelayVH | _MaterialDelay | _MaterialDelay.MaterialDlyInWorkDaysSelection = $projection.MaterialDlyInWorkDaysSelection |
| [0..1] | C_MfgOrderProgressStatusVH | _MfgOrderProgressStatus | _MfgOrderProgressStatus.MfgOrdProgressStatusSelection = $projection.MfgOrdProgressStatusSelection |
| [0..1] | I_MfgOrderMRPControllerVH | _MRPControllerVH | $projection.MRPPlant = _MRPControllerVH.Plant and $projection.MRPController = _MRPControllerVH.MRPController |
| [1..1] | C_PlantVH | _PlantVH | $projection.MRPPlant = _PlantVH.Plant |
| [0..1] | I_ProductionLineStdVH | _ProductionLineVH | $projection.ProductionPlant = _ProductionLineVH.Plant and $projection.ProductionLine = _ProductionLineVH.ProductionLine |
| [0..1] | I_ProductionVersionStdVH | _ProductionVersionVH | $projection.ProductionPlant = _ProductionVersionVH.Plant and $projection.ProductionVersion = _ProductionVersionVH.ProductionVersion and $projection.Material = _ProductionVersionVH.Material |
| [0..1] | C_MRPAreaValHelp | _MRPAreaVH | $projection.MRPArea = _MRPAreaVH.MRPArea and $projection.MRPPlant = _MRPAreaVH.Plant |
| [0..1] | I_MfgOrderProdnSupervisorVH | _ProductionSupervisorVH | $projection.ProductionPlant = _ProductionSupervisorVH.Plant and $projection.ProductionSupervisor = _ProductionSupervisorVH.ProductionSupervisor |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CCACHEMRPMFGORD | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| EndUserText.label | MRP Manufacturing Orders | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| Search.searchable | true | view | |
| Metadata.allowExtensions | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.viewType | #CONSUMPTION | view | |
| UI.headerInfo.typeName | Monitor Production Orders | view | |
| UI.headerInfo.typeNamePlural | Materials | view |
Fields (99)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MRPPlant | MRPPlant | ||
| KEY | MRPPlanningSegmentType | |||
| KEY | MRPPlanningSegment | MRPPlanningSegment | ||
| KEY | MaterialShortageProfile | MaterialShortageProfile | ||
| KEY | MaterialShortageProfileCount | MaterialShortageProfileCount | ||
| KEY | MRPElementCategory | MRPElementCategory | ||
| KEY | MRPElement | |||
| KEY | Material | I_CacheMRPMfgOrder | Material | |
| MRPArea | I_CacheMRPMfgOrder | MRPArea | ||
| FactoryCalendar | FactoryCalendar | |||
| PlantName | _PlantVH | PlantName | ||
| MaterialendasMaterialName | ||||
| MRPAreaText | _MRPAreaVH | MRPAreaText | ||
| ProductionPlant | ProductionPlant | |||
| MRPController | I_CacheMRPMfgOrder | MRPController | ||
| MRPControllerName | _MRPController | MRPControllerName | ||
| ManufacturingOrderType | ManufacturingOrderType | |||
| ManufacturingOrderTypeName | _MfgOrderTypeText | ManufacturingOrderTypeName | ||
| MRPElementCategoryName | _MRPElementCategoryText | MRPElementCategoryName | ||
| MRPElementCategoryShortName | _MRPElementCategoryText | MRPElementCategoryShortName | ||
| MfgOrderProgressStatus | MfgOrderProgressStatus | |||
| MfgOrderProgressStatusName | ||||
| MfgOrderProgressNextStatus | MfgOrderProgressNextStatus | |||
| MfgOrderProgressNextStatusName | ||||
| MfgOrderPlannedStartDate | MfgOrderPlannedStartDate | |||
| MfgOrderPlannedEndDate | MfgOrderPlannedEndDate | |||
| MfgOrderPlannedTotalQty | MfgOrderPlannedTotalQty | |||
| MRPElementAvailyOrRqmtDate | MRPElementAvailyOrRqmtDate | |||
| MRPElementOpenQuantity | MRPElementOpenQuantity | |||
| ProductionLine | ProductionLine | |||
| ProductionLineText | ||||
| ProductionSupervisor | ProductionSupervisor | |||
| ProductionSupervisorName | _ProductionSupervisor | ProductionSupervisorName | ||
| ProductionVersion | ProductionVersion | |||
| ProductionVersionText | ProductionVersionText | |||
| StorageLocation | StorageLocation | |||
| ComponentShortageDefinition | ComponentShortageDefinition | |||
| MaterialBaseUnit | MaterialBaseUnit | |||
| ProductionUnit | ProductionUnit | |||
| UnitOfMeasureNumberOfDecimals | UnitOfMeasureNumberOfDecimals | |||
| UnitOfMeasureDspNmbrOfDcmls | UnitOfMeasureDspNmbrOfDcmls | |||
| NumberOfComponentsWithProblems | ||||
| MaximumDelayInDays | MaximumDelayInDays | |||
| MaximumDelayInWorkdays | MaximumDelayInWorkdays | |||
| CompCvrgInWrkDaysSelection | ||||
| MaterialDlyInWorkDaysSelection | ||||
| MfgOrdProgressStatusSelection | ||||
| DelayInProcessSelection | ||||
| LateSupplyLatenessWorkdays | LateSupplyLatenessWorkdays | |||
| LateSupplyQuantity | ||||
| LateSupplyEarliestDemandDate | ||||
| ManufacturingOrderIsLate | ManufacturingOrderIsLate | |||
| MfgOrderStatusActualDate | MfgOrderStatusActualDate | |||
| MfgOrderNextStatusPlannedDate | MfgOrderNextStatusPlannedDate | |||
| MfgOrderPlannedReleaseDate | MfgOrderPlannedReleaseDate | |||
| MfgOrderNextStatusDate | ||||
| DurnPlndStatusToTodayInDays | ||||
| DurnPlndStatusToTodayInWrkdays | DurnPlndStatusToTodayInWrkdays | |||
| DurationToNextStatusInDays | ||||
| DurnToNextStsInDaysCritlty | ||||
| DurationToNextStatusInWorkdays | ||||
| DurnToNextStsInWorkdaysCritlty | ||||
| DurationUntilReleaseInWorkdays | ||||
| DurnUntilRelInWorkdaysCritlty | ||||
| DurationUntilStartInWorkdays | ||||
| DurnTilStartInWorkdaysCritlty | ||||
| DurationUntilEndInWorkdays | ||||
| DurnTilEndInWorkdaysCritlty | ||||
| DurationUntilGRInWorkdays | ||||
| DurnUntilGRInWorkdaysCritlty | ||||
| MaterialGoodsReceiptDuration | MaterialGoodsReceiptDuration | |||
| MaterialCompIsProcuredDirectly | MaterialCompIsProcuredDirectly | |||
| MatlPlngProjectNetwork | ||||
| WBSElementInternalID | WBSElementInternalID | |||
| WBSElement | WBSElement | |||
| PlanningSegmentDocument | PlanningSegmentDocument | |||
| PlanningSegmentDocumentItem | PlanningSegmentDocumentItem | |||
| char6asMRPPlanningSegmentTypeDesc | ||||
| MRPPlanningSegmentExternalCode | ||||
| MaterialShortageDefinitionName | _MaterialShortageDef | MaterialShortageDefinitionName | ||
| Associations_PlantVH | ||||
| _MaterialText | _MaterialText | |||
| _MfgOrderTypeText | _MfgOrderTypeText | |||
| _MfgOrderCategoryText | _MfgOrderCategoryText | |||
| _ProductionLineVH | _ProductionLineVH | |||
| _ProductionSupervisor | _ProductionSupervisor | |||
| _ProductionVersionVH | _ProductionVersionVH | |||
| _StorageLocation | I_CacheMRPMfgOrder | _StorageLocation | ||
| _ProgressStatusText | _ProgressStatusText | |||
| _ComponentCoverage | _ComponentCoverage | |||
| _MaterialDelay | _MaterialDelay | |||
| _MfgOrderProgressStatus | _MfgOrderProgressStatus | |||
| _MRPPlant | _MRPPlant | |||
| _Material | I_CacheMRPMfgOrder | _Material | ||
| _MRPController | _MRPController | |||
| _MRPControllerVH | _MRPControllerVH | |||
| _ProductionPlant | _ProductionPlant | |||
| _MRPAreaVH | _MRPAreaVH | |||
| _ProductionSupervisorVH | _ProductionSupervisorVH |
@AbapCatalog.sqlViewName: 'CCACHEMRPMFGORD'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey:true
@EndUserText.label: 'MRP Manufacturing Orders'
@ClientHandling.algorithm: #SESSION_VARIABLE
@Search.searchable: true
@Metadata.allowExtensions: true
@AccessControl.privilegedAssociations: ['_ProductionSupervisor', '_MRPController']
@AccessControl: {authorizationCheck: #CHECK,
personalData.blocking: #REQUIRED
}
@ObjectModel: {
usageType : { serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED }
}
@VDM.viewType: #CONSUMPTION
@UI.headerInfo.typeName: 'Monitor Production Orders'
@UI.headerInfo.typeNamePlural: 'Materials'
define view C_CacheMRPMfgOrder
as select distinct from I_CacheMRPMfgOrder
inner join I_SDMAreaOfResponsibility as SDMAreaOfResponsibility on I_CacheMRPMfgOrder.MRPController = SDMAreaOfResponsibility.MRPController
and I_CacheMRPMfgOrder.MRPPlant = SDMAreaOfResponsibility.Plant
and SDMAreaOfResponsibility.UserID = $session.user
// left outer join I_MRPArea as _MRPArea on I_CacheMRPMfgOrder.MRPArea = _MRPArea.MRPArea
association [0..1] to I_MaterialShortageDefinition as _MaterialShortageDef on $projection.MaterialShortageProfile = _MaterialShortageDef.MaterialShortageProfile
and $projection.MaterialShortageProfileCount = _MaterialShortageDef.MaterialShortageProfileCount
association [0..*] to I_MaterialText as _MaterialText on $projection.Material = _MaterialText.Material
association [0..1] to I_MfgOrderTypeText as _MfgOrderTypeText on $projection.ManufacturingOrderType = _MfgOrderTypeText.ManufacturingOrderType
and _MfgOrderTypeText.Language = $session.system_language
association [0..1] to I_ProductionSupervisor as _ProductionSupervisor on $projection.ProductionPlant = _ProductionSupervisor.Plant
and $projection.ProductionSupervisor = _ProductionSupervisor.ProductionSupervisor
association [0..1] to I_MfgOrderCategoryText as _MfgOrderCategoryText on $projection.MRPElementCategory = _MfgOrderCategoryText.ManufacturingOrderCategory
and _MfgOrderCategoryText.Language = $session.system_language
association [0..1] to I_MRPElementCategoryText as _MRPElementCategoryText on $projection.MRPElementCategory = _MRPElementCategoryText.MRPElementCategory
and _MRPElementCategoryText.Language = $session.system_language
association [0..1] to I_MfgOrdProgressStatusText as _ProgressStatusText on $projection.MfgOrderProgressStatus = _ProgressStatusText.MfgOrderProgressStatus
and _ProgressStatusText.Language = $session.system_language
association [0..1] to I_MfgOrdProgressNextStatusText as _NextStatusText on $projection.MfgOrderProgressNextStatus = _NextStatusText.MfgOrderProgressNextStatus
and _NextStatusText.Language = $session.system_language
association [0..1] to I_MRPController as _MRPController on $projection.MRPPlant = _MRPController.Plant
and $projection.MRPController = _MRPController.MRPController
//Value Helps for Custom Filters
association [0..1] to C_ComponentCoverageVH as _ComponentCoverage on _ComponentCoverage.CompCvrgInWrkDaysSelection = $projection.CompCvrgInWrkDaysSelection
association [0..1] to C_MaterialDelayVH as _MaterialDelay on _MaterialDelay.MaterialDlyInWorkDaysSelection = $projection.MaterialDlyInWorkDaysSelection
association [0..1] to C_MfgOrderProgressStatusVH as _MfgOrderProgressStatus on _MfgOrderProgressStatus.MfgOrdProgressStatusSelection = $projection.MfgOrdProgressStatusSelection
association [0..1] to I_MfgOrderMRPControllerVH as _MRPControllerVH on $projection.MRPPlant = _MRPControllerVH.Plant
and $projection.MRPController = _MRPControllerVH.MRPController
association [1..1] to C_PlantVH as _PlantVH on $projection.MRPPlant = _PlantVH.Plant
association [0..1] to I_ProductionLineStdVH as _ProductionLineVH on $projection.ProductionPlant = _ProductionLineVH.Plant
and $projection.ProductionLine = _ProductionLineVH.ProductionLine
association [0..1] to I_ProductionVersionStdVH as _ProductionVersionVH on $projection.ProductionPlant = _ProductionVersionVH.Plant
and $projection.ProductionVersion = _ProductionVersionVH.ProductionVersion
and $projection.Material = _ProductionVersionVH.Material
association [0..1] to C_MRPAreaValHelp as _MRPAreaVH on $projection.MRPArea = _MRPAreaVH.MRPArea
and $projection.MRPPlant = _MRPAreaVH.Plant
association [0..1] to I_MfgOrderProdnSupervisorVH as _ProductionSupervisorVH on $projection.ProductionPlant = _ProductionSupervisorVH.Plant
and $projection.ProductionSupervisor = _ProductionSupervisorVH.ProductionSupervisor
// association [0..1] to I_MfgOrderTypeVH as _MfgOrderTypeVH on $projection.ManufacturingOrderType = _MfgOrderTypeVH.ManufacturingOrderType
// association [0..1] to I_MaterialStdVH as _MaterialVH on $projection.Material = _MaterialVH.Material
{
@Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.7 }
key MRPPlant,
key cast(MRPPlanningSegmentType as plaab) as MRPPlanningSegmentType,
key MRPPlanningSegment,
key MaterialShortageProfile,
key MaterialShortageProfileCount,
key MRPElementCategory,
key CONCAT(LTRIM( MRPElement, '0' ), CONCAT('-', LTRIM( MRPElementItem, '0')) ) as MRPElement,
@Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.7 }
key I_CacheMRPMfgOrder.Material,
I_CacheMRPMfgOrder.MRPArea,
FactoryCalendar,
_PlantVH.PlantName,
case
when _MaterialText[ 1: Language = $session.system_language ].MaterialName is not null
and _MaterialText[ 1: Language = $session.system_language ].MaterialName != ''
then _MaterialText[ 1: Language = $session.system_language ].MaterialName
when _MaterialText[ 1: Language = 'E' ].MaterialName is not null
and _MaterialText[ 1: Language = 'E' ].MaterialName != ''
then _MaterialText[ 1: Language = $session.system_language ].MaterialName
else I_CacheMRPMfgOrder.Material
end as MaterialName,
_MRPAreaVH.MRPAreaText,
ProductionPlant,
I_CacheMRPMfgOrder.MRPController,
_MRPController.MRPControllerName,
ManufacturingOrderType,
_MfgOrderTypeText.ManufacturingOrderTypeName,
_MRPElementCategoryText.MRPElementCategoryName,
_MRPElementCategoryText.MRPElementCategoryShortName,
MfgOrderProgressStatus,
cast(_ProgressStatusText.MfgOrderProgressStatusName as mfgorderprogressstatustext ) as MfgOrderProgressStatusName,
MfgOrderProgressNextStatus,
cast(_NextStatusText.MfgOrderProgressNextStatusName as nextmilestone) as MfgOrderProgressNextStatusName,
MfgOrderPlannedStartDate,
MfgOrderPlannedEndDate,
MfgOrderPlannedTotalQty,
MRPElementAvailyOrRqmtDate,
MRPElementOpenQuantity,
ProductionLine,
cast(_ProductionLineVH._WorkCenterTextBySemanticKey[ 1: Language = $session.system_language ].WorkCenterText as productionlinetext preserving type) as ProductionLineText,
ProductionSupervisor,
_ProductionSupervisor.ProductionSupervisorName,
ProductionVersion,
ProductionVersionText,
StorageLocation,
ComponentShortageDefinition,
MaterialBaseUnit,
ProductionUnit,
UnitOfMeasureNumberOfDecimals, //TargetQuantityUnitDcmls, for rounding
UnitOfMeasureDspNmbrOfDcmls, //TargetQuantityUnitDisplayDcmls
cast( NumberOfUncoveredDemandItems as missingcomponents preserving type) as NumberOfComponentsWithProblems,
MaximumDelayInDays,
MaximumDelayInWorkdays, //initial filter -999999 = ComponentCoverage
@ObjectModel.readOnly: true
@ObjectModel.filter.transformedBy: 'ABAP:CL_MRP_CDS_COMP_FILTER_EXIT'
@ObjectModel.foreignKey.association: '_ComponentCoverage'
cast( '' as mrp_ui_comp_coverage ) as CompCvrgInWrkDaysSelection,
@ObjectModel.readOnly: true
@ObjectModel.filter.transformedBy: 'ABAP:CL_MRP_CDS_COMP_FILTER_EXIT'
@ObjectModel.foreignKey.association: '_MaterialDelay'
cast( '' as mrp_ui_material_delay ) as MaterialDlyInWorkDaysSelection,
@ObjectModel.readOnly: true
@ObjectModel.foreignKey.association: '_MfgOrderProgressStatus'
@ObjectModel.filter.transformedBy: 'ABAP:CL_MRP_CDS_COMP_FILTER_EXIT'
cast( '' as mfgorderprogressstatustext ) as MfgOrdProgressStatusSelection,
@ObjectModel: {
filter.transformedBy: 'ABAP:CL_MRP_CDS_COMP_FILTER_EXIT'
}
cast( '' as mrp_ui_delay_in_process) as DelayInProcessSelection,
//initial filter -999999
LateSupplyLatenessWorkdays, //=LatenessDurationInWorkDay=MaterialDelay
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
cast(I_CacheMRPMfgOrder._CacheSupDemItem.MRPElementDelayedQuantity as latesupplyquantity) as LateSupplyQuantity,
cast(I_CacheMRPMfgOrder._CacheSupDemItem.MaximumDelayDate as requirementdate preserving type) as LateSupplyEarliestDemandDate,
ManufacturingOrderIsLate,
case
when MfgOrderStatusPlannedDate = '00000000' or
MfgOrderStatusPlannedDate = '00010101'
then MfgOrderStatusActualDate
else MfgOrderStatusPlannedDate
end as MfgOrderStatusPlannedDate,
MfgOrderStatusActualDate,
MfgOrderNextStatusPlannedDate,
MfgOrderPlannedReleaseDate,
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( '' as mfgordernextstatusdate ) as MfgOrderNextStatusDate,
//initial filter -999999
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as durnplndstatustotodayindays) as DurnPlndStatusToTodayInDays, //=Delay in Process
DurnPlndStatusToTodayInWrkdays,
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( '' as durationuntilnextstatusindays) as DurationToNextStatusInDays, //Milestone(CD)
@UI.hidden: true
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as abap.int1) as DurnToNextStsInDaysCritlty, //criticallity for DurationToNextStatusInDays
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( '' as durationtonextstatusinworkdays) as DurationToNextStatusInWorkdays, //Milestone(WD)
@UI.hidden: true
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as abap.int1) as DurnToNextStsInWorkdaysCritlty, //criticallity for DurationToNextStatusInWorkdays
//if released milestone has been already passed, then duration is 999999
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( '' as durationtoreleaseinworkdays) as DurationUntilReleaseInWorkdays,
@UI.hidden: true
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as abap.int1) as DurnUntilRelInWorkdaysCritlty, //criticallity for DurationUntilReleaseInWorkdays
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( '' as durationuntilstartinworkdays) as DurationUntilStartInWorkdays,
@UI.hidden: true
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as abap.int1) as DurnTilStartInWorkdaysCritlty, //criticallity for DurationUntilStartInWorkdays
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( '' as durationuntilendinworkdays) as DurationUntilEndInWorkdays,
@UI.hidden: true
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as abap.int1) as DurnTilEndInWorkdaysCritlty, //criticallity for DurationUntilEndInWorkdays
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as durationuntilgrinworkdays) as DurationUntilGRInWorkdays,
@UI.hidden: true
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MFG_ORDER_EXIT'
}
cast( 0 as abap.int1) as DurnUntilGRInWorkdaysCritlty, //criticallity for DurationUntilGRInWorkdays
MaterialGoodsReceiptDuration,
case
when _CacheSupDemItem.MRPElementDelayedQuantity > 0 and
NumberOfUncoveredDemandItems > 0 and DurnPlndStatusToTodayInWrkdays > 0
then '111'
//mfgorderproblemcategoryname TEXT: Everything Delayed
when _CacheSupDemItem.MRPElementDelayedQuantity > 0 and
NumberOfUncoveredDemandItems > 0 and DurnPlndStatusToTodayInWrkdays <= 0
then '110'
//TEXT: Material and Component Delay
when _CacheSupDemItem.MRPElementDelayedQuantity > 0 and
NumberOfUncoveredDemandItems <= 0 and DurnPlndStatusToTodayInWrkdays > 0
then '101'
//TEXT: Material and Process Delay
when _CacheSupDemItem.MRPElementDelayedQuantity > 0 and
NumberOfUncoveredDemandItems <= 0 and DurnPlndStatusToTodayInWrkdays <= 0
then '100'
//TEXT:Material Delay
when _CacheSupDemItem.MRPElementDelayedQuantity <= 0 and
NumberOfUncoveredDemandItems > 0 and DurnPlndStatusToTodayInWrkdays > 0
then '011'
//mfgorderproblemcategoryname TEXT: Component and Process Delay
when _CacheSupDemItem.MRPElementDelayedQuantity <= 0 and
NumberOfUncoveredDemandItems > 0 and DurnPlndStatusToTodayInWrkdays <= 0
then '010'
//TEXT: Component Delay
when _CacheSupDemItem.MRPElementDelayedQuantity <= 0 and
NumberOfUncoveredDemandItems <= 0 and DurnPlndStatusToTodayInWrkdays > 0
then '001'
//TEXT: Delay in Process
when _CacheSupDemItem.MRPElementDelayedQuantity <= 0 and
NumberOfUncoveredDemandItems <= 0 and DurnPlndStatusToTodayInWrkdays <= 0
then '000'
//TEXT: No Delay.
else ''
end as MfgOrderProblemCategory,
MaterialCompIsProcuredDirectly,
cast(ProjectNetwork as ps_pspid_edit) as MatlPlngProjectNetwork,
WBSElementInternalID,
WBSElement,
PlanningSegmentDocument,
PlanningSegmentDocumentItem,
---------------------------------------------------------------------------------------------------------
-- Individual Segment --
---------------------------------------------------------------------------------------------------------
@ObjectModel: {
virtualElement,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MAT_COV_PLN_SEG_EXIT'
}
cast( '' as abap.char( 6 ) ) as MRPPlanningSegmentTypeDesc,
@ObjectModel: {
virtualElement: true,
readOnly: true,
virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_MAT_COV_PLN_SEG_EXIT'
}
cast( '' as mrpindividualsegment) as MRPPlanningSegmentExternalCode,
_MaterialShortageDef.MaterialShortageDefinitionName,
-- Associations
_PlantVH,
_MaterialText,
_MfgOrderTypeText,
_MfgOrderCategoryText,
_ProductionLineVH,
_ProductionSupervisor,
_ProductionVersionVH,
I_CacheMRPMfgOrder._StorageLocation,
_ProgressStatusText,
_ComponentCoverage,
_MaterialDelay,
_MfgOrderProgressStatus,
_MRPPlant,
I_CacheMRPMfgOrder._Material,
_MRPController,
_MRPControllerVH,
_ProductionPlant,
_MRPAreaVH,
_ProductionSupervisorVH
// _MfgOrderTypeVH
// _MaterialVH
}
//where
// MaterialShortageProfile = 'SAP000000001'
// and MaterialShortageProfileCount = '001'
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA