C_ProductionOrderEnhancedVH

DDL: C_PRODUCTIONORDERENHANCEDVH Type: view_entity CONSUMPTION Package: ODATA_PP_MRP

Production Order

C_ProductionOrderEnhancedVH is a Consumption CDS View that provides data about "Production Order" in SAP S/4HANA. It reads from 2 data sources (I_MfgOrderWithStatus, I_ManufacturingOrder) and exposes 19 fields with key field ProductionOrder. It has 1 association to related views. Part of development package ODATA_PP_MRP.

Data Sources (2)

SourceAliasJoin Type
I_MfgOrderWithStatus OrdData inner
I_ManufacturingOrder OrdHeader from

Associations (1)

CardinalityTargetAliasCondition
[0..*] I_OrderTypeText _ProductionOrderTypeText $projection.ProductionOrderType = _ProductionOrderTypeText.OrderType

Annotations (13)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #NOT_REQUIRED view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.dataCategory #VALUE_HELP view
ObjectModel.representativeKey ProductionOrder view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
Search.searchable true view
Consumption.ranked true view
Consumption.valueHelpDefault.fetchValues #ON_EXPLICIT_REQUEST view
VDM.viewType #CONSUMPTION view
EndUserText.label Production Order view

Fields (19)

KeyFieldSource TableSource FieldDescription
KEY ProductionOrder Production Order
ProductionOrderText I_ManufacturingOrder ManufacturingOrderText
ProductionOrderType
ProductionOrderTypeName
ProductionPlant
PlantName
Material I_ManufacturingOrder Material
MaterialName
MRPController I_ManufacturingOrder MRPController
MRPControllerName
ProductionSupervisor I_ManufacturingOrder ProductionSupervisor
ProductionSupervisorName
SalesOrder
_MfgOrderType I_ManufacturingOrder _MfgOrderType
_ProductionOrderTypeText _ProductionOrderTypeText
_ProductionPlant I_ManufacturingOrder _ProductionPlant
_MaterialText I_ManufacturingOrder _MaterialText
_MRPController I_ManufacturingOrder _MRPController
_ProductionSupervisor I_ManufacturingOrder _ProductionSupervisor
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED

@Metadata.ignorePropagatedAnnotations: true

@ObjectModel.dataCategory: #VALUE_HELP
@ObjectModel.representativeKey: 'ProductionOrder'
@ObjectModel.supportedCapabilities: [#VALUE_HELP_PROVIDER, #SEARCHABLE_ENTITY]
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED

@Search.searchable: true
@Consumption:{
  ranked: true,
  valueHelpDefault.fetchValues:#ON_EXPLICIT_REQUEST
}

@VDM.viewType: #CONSUMPTION

@EndUserText.label: 'Production Order'

define view entity C_ProductionOrderEnhancedVH as select from I_ManufacturingOrder as OrdHeader
inner join   I_MfgOrderWithStatus as OrdData on OrdHeader.ManufacturingOrder = OrdData.ManufacturingOrder 
association [0..*] to I_OrderTypeText   as _ProductionOrderTypeText   on  $projection.ProductionOrderType = _ProductionOrderTypeText.OrderType                                                                    
{
  @Search.defaultSearchElement: true
  @Search.ranking: #HIGH
  @Search.fuzzinessThreshold: 0.9
  @EndUserText.label: 'Production Order'
  //@ObjectModel.text.element: ['ProductionOrderText']  

  //@UI.textArrangement:#TEXT_FIRST

  key cast(OrdHeader.ManufacturingOrder as manufacturingorder preserving type) as ProductionOrder,
  @UI.hidden: true
  @Consumption.filter.hidden: true 
  @Semantics.text:true
  OrdHeader.ManufacturingOrderText as ProductionOrderText,
  @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductionOrderTypeStdVH', element: 'ProductionOrderType' } } ]
  @Search.defaultSearchElement: true
  @Search.ranking: #LOW
  @Search.fuzzinessThreshold: 0.8
  @ObjectModel.text.element: ['ProductionOrderTypeName']
  @UI.textArrangement:#TEXT_FIRST
  cast(OrdHeader.ManufacturingOrderType as vdm_prodnordertype preserving type) as ProductionOrderType,
  @Consumption.filter.hidden: true 
  @Semantics.text:true
  _ProductionOrderTypeText[ 1: Language = $session.system_language ].OrderTypeName as ProductionOrderTypeName, 
  @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlantStdVH', element: 'Plant' } } ]
  @Search.defaultSearchElement: true
  @Search.ranking: #LOW
  @Search.fuzzinessThreshold: 0.8
  @ObjectModel.text.element: ['PlantName']
  @UI.textArrangement:#TEXT_FIRST
  cast(OrdHeader.ProductionPlant as pwwrk preserving type) as ProductionPlant,
  @Consumption.filter.hidden: true 
  @Semantics.text:true
  OrdHeader._ProductionPlant[ 1: Language = $session.system_language ].PlantName as PlantName,
  @Consumption.valueHelpDefinition: [ { entity: { name : 'I_MaterialStdVH', element: 'Material' } } ]
  @Search.defaultSearchElement: true
  @Search.ranking: #LOW
  @Search.fuzzinessThreshold: 0.8
  @ObjectModel.text.element: ['MaterialName']
  @UI.textArrangement:#TEXT_FIRST
  OrdHeader.Material,
  @Consumption.filter.hidden: true 
  @Semantics.text:true
  OrdHeader._MaterialText[ 1: Language = $session.system_language ].ProductName as MaterialName,
  @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderMRPControllerStdVH', element: 'MRPController' } } ]
  @Search.defaultSearchElement: true
  @Search.ranking: #LOW
  @Search.fuzzinessThreshold: 0.8
  @ObjectModel.text.element: ['MRPControllerName']
  @UI.textArrangement:#TEXT_FIRST
  OrdHeader.MRPController,
  @Consumption.filter.hidden: true 
  @Semantics.text:true
  OrdHeader._MRPController.MRPControllerName as MRPControllerName,
  @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderProdnSupervisorStdVH', element: 'ProductionSupervisor' } } ]
  @Search.defaultSearchElement: true
  @Search.ranking: #LOW
  @Search.fuzzinessThreshold: 0.8
  @ObjectModel.text.element: ['ProductionSupervisorName']
  @UI.textArrangement:#TEXT_FIRST
  OrdHeader.ProductionSupervisor,
  @Consumption.filter.hidden: true 
  @Semantics.text:true
  OrdHeader._ProductionSupervisor.ProductionSupervisorName,
  
  @Consumption.valueHelpDefinition: [ { entity: { name: 'I_SalesOrderStdVH', element: 'SalesOrder' } } ]
  @Search.defaultSearchElement: true
  @Search.ranking: #LOW
  @Search.fuzzinessThreshold: 0.8
  cast(OrdHeader.SalesOrder as co_kdauf preserving type) as SalesOrder,
  
  OrdHeader._MfgOrderType,
  _ProductionOrderTypeText,
  OrdHeader._ProductionPlant,
  OrdHeader._MaterialText,
  OrdHeader._MRPController,
  OrdHeader._ProductionSupervisor 
 }
 where OrdHeader.ManufacturingOrderCategory = '10'  //only 'open' production orders

   and OrdData.OrderIsTechnicallyCompleted <> 'X'
   and OrdData.OrderIsDelivered            <> 'X'
   and OrdData.OrderIsDeleted              <> 'X'
   and OrdData.OrderIsClosed               <> 'X'
   and OrdData.OrderIsMarkedForDeletion    <> 'X'