C_MRPInternalRequirement
MRP Internal Requirement
C_MRPInternalRequirement is a Consumption CDS View that provides data about "MRP Internal Requirement" in SAP S/4HANA. It reads from 2 data sources (I_MaterialShortageDefinition, I_MRPProductionDemand) and exposes 82 fields with key fields MRPPlant, MRPArea, Material, MRPPlanningSegment, MRPPlanningSegmentType. It has 9 associations to related views. It is exposed through 1 OData service (UI_MRPREQUIREMENT). Part of development package ODATA_PP_MRP.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_MaterialShortageDefinition | _MaterialShortageDef | inner |
| I_MRPProductionDemand | I_MRPProductionDemand | from |
Associations (9)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | P_MRPProductionDemandDelay | _WorkingDaysCount | $projection.MRPPlant = _WorkingDaysCount.MRPPlant and $projection.MRPArea = _WorkingDaysCount.MRPArea and $projection.Material = _WorkingDaysCount.Material and $projection.MRPPlanningSegment = _WorkingDaysCount.MRPPlanningSegment and $projection.MRPPlanningSegmentType = _WorkingDaysCount.MRPPlanningSegmentType and $projection.MaterialShortageProfile = _WorkingDaysCount.MaterialShortageProfile and $projection.MaterialShortageProfileCount = _WorkingDaysCount.MaterialShortageProfileCount and $projection.MRPElement = _WorkingDaysCount.MRPElement and $projection.MRPElementItem = _WorkingDaysCount.MRPElementItem and $projection.MRPElementScheduleLine = _WorkingDaysCount.MRPElementScheduleLine and $projection.MRPElementCategory = _WorkingDaysCount.MRPElementCategory and $projection.MRPElementAvailyOrRqmtDate = _WorkingDaysCount.MRPElementAvailyOrRqmtDate |
| [0..1] | C_MRPExtRqmtMaterialOverview | _MaterialOverview | $projection.MRPPlant = _MaterialOverview.MRPPlant and $projection.MRPArea = _MaterialOverview.MRPArea and $projection.Material = _MaterialOverview.Material and $projection.MRPPlanningSegment = _MaterialOverview.MRPPlanningSegment and $projection.MRPPlanningSegmentType = _MaterialOverview.MRPPlanningSegmentType and $projection.MaterialShortageProfile = _MaterialOverview.MaterialShortageProfile and $projection.MaterialShortageProfileCount = _MaterialOverview.MaterialShortageProfileCount |
| [0..1] | C_ProcurementProgressTextVH | _ProcurementProgressText | $projection.ProcurementProgress = _ProcurementProgressText.ProcurementProgress and _ProcurementProgressText.Language = $session.system_language |
| [0..1] | I_StorageLocation | _StorageLocation | $projection.StorageLocation = _StorageLocation.StorageLocation and $projection.MRPPlant = _StorageLocation.Plant |
| [0..*] | I_WorkCenterTextBySemanticKey | _WorkCenterTextBySemanticKey | $projection.ProductionLine = _WorkCenterTextBySemanticKey.WorkCenter and $projection.ProductionPlant = _WorkCenterTextBySemanticKey.Plant and _WorkCenterTextBySemanticKey.Language = $session.system_language |
| [0..1] | I_OrderBasic | _OrderBasic | I_MRPProductionDemand.SourceMRPElement = _OrderBasic.OrderID |
| [0..1] | I_MRPTypeText | _MRPTypeText | $projection.MRPType = _MRPTypeText.MRPType and _MRPTypeText.Language = $session.system_language |
| [0..1] | I_MRPAreaPlanningFileEntry | _LastMRPRun | $projection.Material = _LastMRPRun.Material and $projection.MRPPlant = _LastMRPRun.Plant and $projection.MRPArea = _LastMRPRun.MRPArea and _LastMRPRun.MRPPlanningScenario = '000' |
| [1..1] | I_MRPMaterial | _MRPMaterial | $projection.MRPPlant = _MRPMaterial.MRPPlant and $projection.Material = _MRPMaterial.Material and $projection.MRPArea = _MRPMaterial.MRPArea |
Annotations (8)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| EndUserText.label | MRP Internal Requirement | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #S | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.viewType | #CONSUMPTION | view | |
| Search.searchable | true | view | |
| Metadata.allowExtensions | true | view |
OData Services (1)
| Service | Binding | Version | Contract | Release |
|---|---|---|---|---|
| UI_MRPREQUIREMENT | UI_MRPREQUIREMENT | V4 | C1 | NOT_RELEASED |
Fields (82)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MRPPlant | I_MRPProductionDemand | MRPPlant | |
| KEY | MRPArea | I_MRPProductionDemand | MRPArea | |
| KEY | Material | I_MRPProductionDemand | Material | |
| KEY | MRPPlanningSegment | I_MRPProductionDemand | MRPPlanningSegment | |
| KEY | MRPPlanningSegmentType | I_MRPProductionDemand | MRPPlanningSegmentType | |
| KEY | MaterialShortageProfile | I_MRPProductionDemand | MaterialShortageProfile | |
| KEY | MaterialShortageProfileCount | I_MRPProductionDemand | MaterialShortageProfileCount | |
| KEY | MRPElement | I_MRPProductionDemand | MRPElement | |
| KEY | MRPElementItem | I_MRPProductionDemand | MRPElementItem | |
| KEY | MRPElementScheduleLine | I_MRPProductionDemand | MRPElementScheduleLine | |
| KEY | MRPElementCategory | I_MRPProductionDemand | MRPElementCategory | |
| KEY | MRPElementAvailyOrRqmtDate | I_MRPProductionDemand | MRPElementAvailyOrRqmtDate | |
| MRPPlanningSegmentExternalCode | I_MRPProductionDemand | MRPPlanningSegmentExternalCode | ||
| MaterialExternalID | I_MRPProductionDemand | MaterialExternalID | ||
| MaterialShortageDefinitionName | I_MaterialShortageDefinition | MaterialShortageDefinitionName | ||
| MaterialShortageDefinition | I_MRPProductionDemand | MaterialShortageDefinition | ||
| MRPElementCategoryName | ||||
| MRPElementCategoryShortName | ||||
| SourceMRPElementCategoryName | ||||
| SrcMRPElementCategoryShortName | ||||
| LatestPlannedAvailabilityDate | I_MRPProductionDemand | LatestPlannedAvailabilityDate | ||
| FactoryCalendar | I_MRPProductionDemand | FactoryCalendar | ||
| ComponentMaterial | I_MRPProductionDemand | Material | ||
| MaterialName | I_MRPProductionDemand | MaterialName | ||
| UnitOfMeasureCommercialName | ||||
| MRPController | I_MRPProductionDemand | MRPController | ||
| MaterialBaseUnit | I_MRPProductionDemand | MaterialBaseUnit | ||
| TargetQuantityUnitDcmls | I_MRPProductionDemand | UnitOfMeasureNumberOfDecimals | ||
| TargetQuantityUnitDisplayDcmls | I_MRPProductionDemand | UnitOfMeasureDspNmbrOfDcmls | ||
| SourceMRPElementCategory | I_MRPProductionDemand | SourceMRPElementCategory | ||
| SourceMRPElement | ||||
| OrderDescription | _OrderBasic | OrderDescription | ||
| SourceMRPElementItem | I_MRPProductionDemand | SourceMRPElementItem | ||
| MaximumDelayInDays | I_MRPProductionDemand | MaximumDelayInDays | ||
| MaximumDelayInDaysText | ||||
| MaximumDelayInWorkdays | I_MRPProductionDemand | MaximumDelayInWorkdays | ||
| MaximumDelayInWorkDaysText | ||||
| StorageLocation | I_MRPProductionDemand | StorageLocation | ||
| StorageLocationName | _StorageLocation | StorageLocationName | ||
| PlantName | I_MRPProductionDemand | PlantName | ||
| OrderType | I_MRPProductionDemand | OrderType | ||
| OrderTypeName | ||||
| MRPControllerName | I_MRPProductionDemand | MRPControllerName | ||
| MRPAreaText | I_MRPProductionDemand | MRPAreaText | ||
| MRPType | I_MRPProductionDemand | MRPType | ||
| MRPTypeName | _MRPTypeText | MRPTypeName | ||
| char18endasSourceOrderName | ||||
| MRPElementMissingQuantity | ||||
| MRPElementOpenQuantity | I_MRPProductionDemand | MRPElementOpenQuantity | ||
| MRPElementUncoveredQuantity | I_MRPProductionDemand | MRPElementUncoveredQuantity | ||
| MRPElementDelayedQuantity | I_MRPProductionDemand | MRPElementDelayedQuantity | ||
| OrderQuantity | I_MRPProductionDemand | OrderQuantity | ||
| MRPElementCoveredQuantity | ||||
| dec203asMRPElementIssuedQuantity | ||||
| UnitUoM | ||||
| HasMaterialShortageReplnmtLead | ||||
| HasShortageTotalReplnmtLead | I_MRPProductionDemand | HasShortageTotalReplnmtLead | ||
| HasShortageManualPlanHorizon | I_MRPProductionDemand | HasShortageManualPlanHorizon | ||
| HasShortageMRPSafetyDuration | I_MRPProductionDemand | HasShortageMRPSafetyDuration | ||
| ProducedMaterial | ||||
| SourceMaterial | I_MRPProductionDemand | ProducedMaterial | ||
| ProducedMaterialName | ||||
| ProductionSupervisor | I_MRPProductionDemand | ProductionSupervisor | ||
| ProductionSupervisorName | I_MRPProductionDemand | ProductionSupervisorName | ||
| ProductionVersion | I_MRPProductionDemand | ProductionVersion | ||
| ProductionVersionText | I_MRPProductionDemand | ProductionVersionText | ||
| ProductionLine | I_MRPProductionDemand | ProductionLine | ||
| WorkCenterText | _WorkCenterTextBySemanticKey | WorkCenterText | ||
| ProductionPlant | I_MRPProductionDemand | ProductionPlant | ||
| ProcurementProgress | I_MRPProductionDemand | ProcurementProgress | ||
| ProcurementProgressDesc | _ProcurementProgressText | ProcurementProgressDesc | ||
| MaterialLastMRPDateTime | _LastMRPRun | MaterialLastMRPDateTime | ||
| MRPCoverageStatusCode | ||||
| MRPCoverageStatusName | ||||
| UICT_ShortageDefinitionAssign | ||||
| UICT_BufferUpdateIndicator | ||||
| TimeTillShortageFilterId | ||||
| TimeTillShortageFilterText | ||||
| UICT_BufferMaterial | ||||
| LotSizingProcedure | _MRPMaterial | LotSizingProcedure | ||
| MaterialLotSizingProcedureName | _MRPMaterial | MaterialLotSizingProcedureName | ||
| _MaterialOverview | _MaterialOverview |
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'MRP Internal Requirement'
@ObjectModel.usageType:{
serviceQuality: #C,
sizeCategory: #S,
dataClass: #MIXED
}
@VDM.viewType: #CONSUMPTION
@Search.searchable: true
@Metadata.allowExtensions: true
define view entity C_MRPInternalRequirement
as select from I_MRPProductionDemand
inner join I_MaterialShortageDefinition as _MaterialShortageDef on I_MRPProductionDemand.MaterialShortageProfile = _MaterialShortageDef.MaterialShortageProfile
and I_MRPProductionDemand.MaterialShortageProfileCount = _MaterialShortageDef.MaterialShortageProfileCount
and _MaterialShortageDef.UncoveredDemandIsCalculated = 'X'
association [0..1] to P_MRPProductionDemandDelay as _WorkingDaysCount on $projection.MRPPlant = _WorkingDaysCount.MRPPlant
and $projection.MRPArea = _WorkingDaysCount.MRPArea
and $projection.Material = _WorkingDaysCount.Material
and $projection.MRPPlanningSegment = _WorkingDaysCount.MRPPlanningSegment
and $projection.MRPPlanningSegmentType = _WorkingDaysCount.MRPPlanningSegmentType
and $projection.MaterialShortageProfile = _WorkingDaysCount.MaterialShortageProfile
and $projection.MaterialShortageProfileCount = _WorkingDaysCount.MaterialShortageProfileCount
and $projection.MRPElement = _WorkingDaysCount.MRPElement
and $projection.MRPElementItem = _WorkingDaysCount.MRPElementItem
and $projection.MRPElementScheduleLine = _WorkingDaysCount.MRPElementScheduleLine
and $projection.MRPElementCategory = _WorkingDaysCount.MRPElementCategory
and $projection.MRPElementAvailyOrRqmtDate = _WorkingDaysCount.MRPElementAvailyOrRqmtDate
association [0..1] to C_MRPExtRqmtMaterialOverview as _MaterialOverview on $projection.MRPPlant = _MaterialOverview.MRPPlant
and $projection.MRPArea = _MaterialOverview.MRPArea
and $projection.Material = _MaterialOverview.Material
and $projection.MRPPlanningSegment = _MaterialOverview.MRPPlanningSegment
and $projection.MRPPlanningSegmentType = _MaterialOverview.MRPPlanningSegmentType
and $projection.MaterialShortageProfile = _MaterialOverview.MaterialShortageProfile
and $projection.MaterialShortageProfileCount = _MaterialOverview.MaterialShortageProfileCount
association [0..1] to C_ProcurementProgressTextVH as _ProcurementProgressText on $projection.ProcurementProgress = _ProcurementProgressText.ProcurementProgress
and _ProcurementProgressText.Language = $session.system_language
association [0..1] to I_StorageLocation as _StorageLocation on $projection.StorageLocation = _StorageLocation.StorageLocation
and $projection.MRPPlant = _StorageLocation.Plant
association [0..*] to I_WorkCenterTextBySemanticKey as _WorkCenterTextBySemanticKey on $projection.ProductionLine = _WorkCenterTextBySemanticKey.WorkCenter
and $projection.ProductionPlant = _WorkCenterTextBySemanticKey.Plant
and _WorkCenterTextBySemanticKey.Language = $session.system_language
association [0..1] to I_OrderBasic as _OrderBasic on I_MRPProductionDemand.SourceMRPElement = _OrderBasic.OrderID
association [0..1] to I_MRPTypeText as _MRPTypeText on $projection.MRPType = _MRPTypeText.MRPType
and _MRPTypeText.Language = $session.system_language
association [0..1] to I_MRPAreaPlanningFileEntry as _LastMRPRun on $projection.Material = _LastMRPRun.Material
and $projection.MRPPlant = _LastMRPRun.Plant
and $projection.MRPArea = _LastMRPRun.MRPArea
and _LastMRPRun.MRPPlanningScenario = '000'
association [1..1] to I_MRPMaterial as _MRPMaterial on $projection.MRPPlant = _MRPMaterial.MRPPlant
and $projection.Material = _MRPMaterial.Material
and $projection.MRPArea = _MRPMaterial.MRPArea
{
@ObjectModel.text.element: ['PlantName']
key I_MRPProductionDemand.MRPPlant,
@ObjectModel.text.element: [ 'MRPAreaText' ]
key I_MRPProductionDemand.MRPArea,
@ObjectModel.text.element: ['MaterialName']
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold: 0.8
key I_MRPProductionDemand.Material,
key I_MRPProductionDemand.MRPPlanningSegment,
key I_MRPProductionDemand.MRPPlanningSegmentType,
key I_MRPProductionDemand.MaterialShortageProfile,
key I_MRPProductionDemand.MaterialShortageProfileCount,
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold: 0.8
key I_MRPProductionDemand.MRPElement,
key I_MRPProductionDemand.MRPElementItem,
key I_MRPProductionDemand.MRPElementScheduleLine,
key I_MRPProductionDemand.MRPElementCategory,
key I_MRPProductionDemand.MRPElementAvailyOrRqmtDate,
@EndUserText:{label: 'Individual Segment', quickInfo: 'Individual Segment'}
@Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #HIGH}
I_MRPProductionDemand.MRPPlanningSegmentExternalCode,
case
when _WorkingDaysCount(P_SAPClient:$session.client).AvailOrRqmtDatOffsetInWorkdays < 0
then 0
else _WorkingDaysCount(P_SAPClient:$session.client).AvailOrRqmtDatOffsetInWorkdays
end as AvailOrRqmtDateOffsetWorkdays,
I_MRPProductionDemand.MaterialExternalID,
_MaterialShortageDef.MaterialShortageDefinitionName,
@ObjectModel.text.element: [ 'MaterialShortageDefinitionName' ]
I_MRPProductionDemand.MaterialShortageDefinition,
I_MRPProductionDemand._MRPElementCategoryText.MRPElementCategoryName,
I_MRPProductionDemand._MRPElementCategoryText.MRPElementCategoryShortName,
I_MRPProductionDemand._SrcMRPElementCategoryText.MRPElementCategoryName as SourceMRPElementCategoryName,
I_MRPProductionDemand._SrcMRPElementCategoryText.MRPElementCategoryShortName as SrcMRPElementCategoryShortName,
case
when I_MRPProductionDemand.MRPElementAvailyOrRqmtDate > tstmp_to_dats(tstmp_current_utctimestamp(), I_MRPProductionDemand._Address.AddressTimeZone, $session.client, 'INITIAL' )
then dats_days_between(tstmp_to_dats(tstmp_current_utctimestamp(), I_MRPProductionDemand._Address.AddressTimeZone, $session.client, 'INITIAL' ), I_MRPProductionDemand.MRPElementAvailyOrRqmtDate )
else 0 end as AvailOrRqmtDateOffsetDays,
I_MRPProductionDemand.LatestPlannedAvailabilityDate,
case
when I_MRPProductionDemand.SourceMRPElementItem is initial
then cast( concat( $projection.SrcMRPElementCategoryShortName, concat( '-', ltrim ( I_MRPProductionDemand.SourceMRPElement, '0' ) ) ) as char30 )
else cast( concat( $projection.SrcMRPElementCategoryShortName,
concat( '-', concat( ltrim ( I_MRPProductionDemand.SourceMRPElement, '0' ),
concat( '-', ltrim ( I_MRPProductionDemand.SourceMRPElementItem, '0' ) ) ) ) ) as char30 )
end as MRPAffectedOrder,
I_MRPProductionDemand.FactoryCalendar,
@ObjectModel.text.element: ['MaterialName']
I_MRPProductionDemand.Material as ComponentMaterial,
I_MRPProductionDemand.MaterialName,
I_MRPProductionDemand._UnitOfMeasureText.UnitOfMeasureCommercialName,
@ObjectModel.text.element: [ 'MRPControllerName' ]
I_MRPProductionDemand.MRPController,
I_MRPProductionDemand.MaterialBaseUnit,
I_MRPProductionDemand.UnitOfMeasureNumberOfDecimals as TargetQuantityUnitDcmls,
I_MRPProductionDemand.UnitOfMeasureDspNmbrOfDcmls as TargetQuantityUnitDisplayDcmls,
I_MRPProductionDemand.SourceMRPElementCategory,
@ObjectModel.text.element: [ 'OrderDescription' ]
ltrim ( I_MRPProductionDemand.SourceMRPElement, '0' ) as SourceMRPElement,
_OrderBasic.OrderDescription,
I_MRPProductionDemand.SourceMRPElementItem,
@ObjectModel.text.element: [ 'MaximumDelayInDaysText' ]
I_MRPProductionDemand.MaximumDelayInDays,
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
cast( '' as abap.char( 30 )) as MaximumDelayInDaysText,
@ObjectModel.filter.transformedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
@ObjectModel.text.element: [ 'MaximumDelayInWorkDaysText' ]
I_MRPProductionDemand.MaximumDelayInWorkdays,
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
cast( '' as abap.char( 30 )) as MaximumDelayInWorkDaysText,
@ObjectModel.text.element: [ 'StorageLocationName' ]
I_MRPProductionDemand.StorageLocation,
_StorageLocation.StorageLocationName,
I_MRPProductionDemand.PlantName,
@ObjectModel.text.element: [ 'OrderTypeName' ]
I_MRPProductionDemand.OrderType,
I_MRPProductionDemand._OrderTypeText.OrderTypeName,
I_MRPProductionDemand.MRPControllerName,
I_MRPProductionDemand.MRPAreaText,
@ObjectModel.text.element: [ 'MRPTypeName' ]
I_MRPProductionDemand.MRPType,
_MRPTypeText.MRPTypeName,
case
when I_MRPProductionDemand.SourceMRPElementItem is initial
then cast ( ltrim ( I_MRPProductionDemand.SourceMRPElement, '0' ) as abap.char( 18 ) )
else cast ( concat( ltrim ( I_MRPProductionDemand.SourceMRPElement, '0' ), concat( '-', ltrim ( I_MRPProductionDemand.SourceMRPElementItem, '0' ) ) ) as abap.char( 18 ) )
end as SourceOrderName,
---------------------------------------------------------------------------------------------------------
-- Quantity and Values --
---------------------------------------------------------------------------------------------------------
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
I_MRPProductionDemand.MRPElementMissingQuantity,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
I_MRPProductionDemand.MRPElementOpenQuantity,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
I_MRPProductionDemand.MRPElementUncoveredQuantity,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
I_MRPProductionDemand.MRPElementDelayedQuantity,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
I_MRPProductionDemand.OrderQuantity,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
I_MRPProductionDemand.MRPElementOpenQuantity - I_MRPProductionDemand.MRPElementUncoveredQuantity - I_MRPProductionDemand.MRPElementDelayedQuantity as MRPElementCoveredQuantity,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
cast ( case when I_MRPProductionDemand.OrderQuantity - I_MRPProductionDemand.MRPElementOpenQuantity > 0
then I_MRPProductionDemand.OrderQuantity - I_MRPProductionDemand.MRPElementOpenQuantity
else 0 end as abap.dec( 20, 3 ) ) as MRPElementIssuedQuantity,
@Semantics.quantity.unitOfMeasure: 'UnitUoM'
case when I_MRPProductionDemand.OrderQuantity is not initial then
ceil( cast( cast ( ( I_MRPProductionDemand.MRPElementUncoveredQuantity + I_MRPProductionDemand.MRPElementDelayedQuantity ) as abap.fltp ) * 100.0 / cast ( I_MRPProductionDemand.OrderQuantity as abap.fltp ) as abap.dec( 23, 2 ) ) )
else 0 end as MRPElementMissingQuantityInPct,
cast( '%' as abap.unit( 3 ) ) as UnitUoM,
---------------------------------------------------------------------------------------------------------
-- Time Till Shortage Filter Values --
---------------------------------------------------------------------------------------------------------
I_MRPProductionDemand.HasMaterialShortageReplnmtLead,
I_MRPProductionDemand.HasShortageTotalReplnmtLead,
I_MRPProductionDemand.HasShortageManualPlanHorizon,
I_MRPProductionDemand.HasShortageMRPSafetyDuration,
case when I_MRPProductionDemand.MRPElementAvailyOrRqmtDate is null then 9999 else
dats_days_between(tstmp_to_dats(tstmp_current_utctimestamp(), I_MRPProductionDemand._Address.AddressTimeZone, $session.client, 'INITIAL' ), I_MRPProductionDemand.MRPElementAvailyOrRqmtDate ) end as TimeTillShortageInCalendarDays,
---------------------------------------------------------------------------------------------------------
-- Production Data --
---------------------------------------------------------------------------------------------------------
@ObjectModel.text.element: [ 'ProducedMaterialName' ]
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold: 0.8
I_MRPProductionDemand.ProducedMaterial,
@ObjectModel.text.element: [ 'ProducedMaterialName' ]
I_MRPProductionDemand.ProducedMaterial as SourceMaterial,
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold: 0.8
I_MRPProductionDemand._ProducedMaterialText.MaterialName as ProducedMaterialName,
@ObjectModel.text.element: [ 'ProductionSupervisorName' ]
I_MRPProductionDemand.ProductionSupervisor,
I_MRPProductionDemand.ProductionSupervisorName,
@ObjectModel.text.element: [ 'ProductionVersionText' ]
I_MRPProductionDemand.ProductionVersion,
I_MRPProductionDemand.ProductionVersionText,
@ObjectModel.text.element: [ 'WorkCenterText' ]
I_MRPProductionDemand.ProductionLine,
_WorkCenterTextBySemanticKey.WorkCenterText,
I_MRPProductionDemand.ProductionPlant,
@ObjectModel.text.element: [ 'ProcurementProgressDesc' ]
@UI.textArrangement: #TEXT_ONLY
I_MRPProductionDemand.ProcurementProgress,
_ProcurementProgressText.ProcurementProgressDesc,
_LastMRPRun.MaterialLastMRPDateTime,
@ObjectModel.filter.transformedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
@ObjectModel : { text: { element: [ 'MRPCoverageStatusName' ] } }
cast( 0 as int2 ) as MRPCoverageStatusCode,
cast( '' as char25 ) as MRPCoverageStatusName,
@ObjectModel.filter.transformedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
@UI.hidden: true
cast( '' as abap_boolean preserving type ) as UICT_ShortageDefinitionAssign,
@ObjectModel.filter.transformedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
@UI.hidden: true
cast( 'X' as abap_boolean preserving type ) as UICT_BufferUpdateIndicator,
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
@ObjectModel.text.element: [ 'TimeTillShortageFilterText' ]
@ObjectModel.filter: { enabled: true, transformedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS' }
cast( 0 as abap.int2 ) as TimeTillShortageFilterId,
cast( '' as abap.char( 50 ) ) as TimeTillShortageFilterText,
@ObjectModel.filter.transformedBy: 'ABAP:CL_PP_MRP_REQ_VIRTUAL_FLDS'
@UI.hidden: true
cast( '' as matnr ) as UICT_BufferMaterial,
@ObjectModel.text.element: [ 'MaterialLotSizingProcedureName' ]
_MRPMaterial.LotSizingProcedure,
_MRPMaterial.MaterialLotSizingProcedureName,
_MaterialOverview
}
where
I_MRPProductionDemand.MRPElementAvailyOrRqmtDate is not initial
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