C_SlsDocFlfmtMfgOrder

DDL: C_SLSDOCFLFMTMFGORDER SQL: CSOFMFGORD Type: view CONSUMPTION

Sales Doc Fulfillment: Mfg Order

C_SlsDocFlfmtMfgOrder is a Consumption CDS View that provides data about "Sales Doc Fulfillment: Mfg Order" in SAP S/4HANA. It reads from 1 data source (I_MfgOrder) and exposes 34 fields with key field ManufacturingOrder. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_MfgOrder MfgOrder from

Associations (1)

CardinalityTargetAliasCondition
[0..1] E_LogisticsOrder _Extension $projection.ManufacturingOrder = _Extension.OrderID

Annotations (11)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #S view
EndUserText.label Sales Doc Fulfillment: Mfg Order view
VDM.viewType #CONSUMPTION view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
AbapCatalog.preserveKey true view
AbapCatalog.sqlViewName CSOFMFGORD view

Fields (34)

KeyFieldSource TableSource FieldDescription
KEY ManufacturingOrder I_MfgOrder ManufacturingOrder
ManufacturingOrderCategory I_MfgOrder ManufacturingOrderCategory
ManufacturingOrderType I_MfgOrder ManufacturingOrderType
Material
MaterialName
ProductionPlant I_MfgOrder ProductionPlant
MfgOrderPlannedTotalQty I_MfgOrder MfgOrderPlannedTotalQty
ProductionUnit I_MfgOrder ProductionUnit
SalesOrder I_MfgOrder SalesOrder
SalesOrderItem I_MfgOrder SalesOrderItem
OrderQuantity SalesOrderItem OrderQuantity
OrderQuantityUnit SalesOrderItem OrderQuantityUnit
NetAmount SalesOrderItem NetAmount
TransactionCurrency SalesOrderItem TransactionCurrency
ProductionSupervisor I_MfgOrder ProductionSupervisor
ProductionSupervisorName
MRPController I_MfgOrder MRPController
MRPControllerName
MfgOrderScheduledStartDate I_MfgOrder MfgOrderScheduledStartDate
MfgOrderScheduledEndDate I_MfgOrder MfgOrderScheduledEndDate
MfgOrderScheduledReleaseDate I_MfgOrder MfgOrderScheduledReleaseDate
MfgOrderActualStartDate I_MfgOrder MfgOrderActualStartDate
MfgOrderActualReleaseDate I_MfgOrder MfgOrderActualReleaseDate
MfgOrderItemActualDeliveryDate I_MfgOrder MfgOrderItemActualDeliveryDate
MfgOrderConfirmedEndDate I_MfgOrder MfgOrderConfirmedEndDate
int1asMfgOrderActualStartDateCritlty
int1asMfgOrdActualRelDateCriticality
int1asMfgOrdActualEndDateCriticality
_MfgOrderCategory I_MfgOrder _MfgOrderCategory
_MfgOrderType I_MfgOrder _MfgOrderType
_ProductionUnit I_MfgOrder _ProductionUnit
_Plant I_MfgOrder _Plant
_OrderQuantityUnit SalesOrderItem _OrderQuantityUnit
_TransactionCurrency SalesOrderItem _TransactionCurrency
@ClientHandling.algorithm: #SESSION_VARIABLE 
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #S

@EndUserText.label: 'Sales Doc Fulfillment: Mfg Order'
@VDM.viewType: #CONSUMPTION
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@AbapCatalog.preserveKey: true
@AbapCatalog.sqlViewName: 'CSOFMFGORD'

define view C_SlsDocFlfmtMfgOrder

as select from I_MfgOrder as MfgOrder

left outer to one join I_MfgOrderItem as MfgOrderItem
on  MfgOrder.ManufacturingOrder = MfgOrderItem.ManufacturingOrder
and MfgOrderItem.ManufacturingOrderItem = '0001'

left outer to one join I_SalesDocumentItem as SalesOrderItem
on MfgOrder.SalesOrder = SalesOrderItem.SalesDocument
and MfgOrder.SalesOrderItem = SalesOrderItem.SalesDocumentItem

 //Extensibility 

  association [0..1] to E_LogisticsOrder  as _Extension on  $projection.ManufacturingOrder = _Extension.OrderID
                                                                                                                         
{
  //Key

  key MfgOrder.ManufacturingOrder,
    
  //Category

  MfgOrder.ManufacturingOrderCategory,
  MfgOrder.ManufacturingOrderType,
 
  //Material

  @Consumption.valueHelpDefinition: [{ entity: { name: 'I_ProductStdVH', element: 'Product' }}]
  @ObjectModel.text.element: [ 'MaterialName' ]    
  cast(MfgOrderItem.Material as productnumber preserving type ) as Material, 
  @UI.hidden: true
  MfgOrderItem._Material._Text[1:Language=$session.system_language].MaterialName,
  MfgOrder.ProductionPlant,
  @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
  @DefaultAggregation: #NONE
  MfgOrder.MfgOrderPlannedTotalQty, 
  @ObjectModel.foreignKey.association: '_ProductionUnit'
  @Semantics.unitOfMeasure: true
  MfgOrder.ProductionUnit,
 
  //Sales Order

  MfgOrder.SalesOrder,
  MfgOrder.SalesOrderItem, 
  
  // Quantity Sales Order Item   

  @Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
  @DefaultAggregation: #NONE
  SalesOrderItem.OrderQuantity,
  @Semantics.unitOfMeasure: true
  SalesOrderItem.OrderQuantityUnit,
  
  @Semantics.amount.currencyCode: 'TransactionCurrency'
  @DefaultAggregation: #NONE
  SalesOrderItem.NetAmount,
  @Semantics.currencyCode: true
  SalesOrderItem.TransactionCurrency,
 
  //Partner 

  @ObjectModel.text.element:  [ 'ProductionSupervisorName' ]
  MfgOrder.ProductionSupervisor,
  @Semantics.text: true   
  MfgOrder._ProductionSupervisor.ProductionSupervisorName,  
  @ObjectModel.text.element:  [ 'MRPControllerName' ]
  MfgOrder.MRPController,
  @Semantics.text: true   
  MfgOrder._MRPController.MRPControllerName,  
  
  // Dates

  MfgOrder.MfgOrderScheduledStartDate,
  MfgOrder.MfgOrderScheduledEndDate,
  MfgOrder.MfgOrderScheduledReleaseDate,
  
  MfgOrder.MfgOrderActualStartDate,
  case when MfgOrder.MfgOrderActualEndDate = '00000000'
       then MfgOrder.MfgOrderItemActualDeliveryDate
       else MfgOrder.MfgOrderActualEndDate
  end
  as MfgOrderActualEndDate,
  MfgOrder.MfgOrderActualReleaseDate,
  
  MfgOrder.MfgOrderItemActualDeliveryDate, 
  MfgOrder.MfgOrderConfirmedEndDate,
  
  //Criticality

  @UI.hidden: true      
  cast(
  case
      when MfgOrder.MfgOrderActualStartDate = '00000000' 
         and  MfgOrder.MfgOrderScheduledStartDate < $session.system_date then 1
      when MfgOrder.MfgOrderActualStartDate <> '00000000'                then 3
                                                                         else 0 
  end as abap.int1
  )  as MfgOrderActualStartDateCritlty,
  
    @UI.hidden: true      
  cast(
  case
   when MfgOrder.MfgOrderActualReleaseDate = '00000000' 
         and  MfgOrder.MfgOrderScheduledReleaseDate < $session.system_date then 1
   when MfgOrder.MfgOrderActualReleaseDate <> '00000000'                   then 3
                                                                           else 0     
  end as abap.int1
  )  as MfgOrdActualRelDateCriticality,
  
    @UI.hidden: true      
  cast(
  case
    when MfgOrder.MfgOrderActualEndDate = '00000000' 
         and  MfgOrder.MfgOrderScheduledEndDate < $session.system_date then 1
    when MfgOrder.MfgOrderActualEndDate <> '00000000'  and MfgOrder.IsCompletelyDelivered = ' ' then 3
                                                                       else 0     
  end as abap.int1
  )  as MfgOrdActualEndDateCriticality,
   
  //Associations

  MfgOrder._MfgOrderCategory,
  MfgOrder._MfgOrderType,    
  MfgOrder._ProductionUnit,
  MfgOrder._Plant,  
  SalesOrderItem._OrderQuantityUnit,
  SalesOrderItem._TransactionCurrency
       
}

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MATERIAL",
"I_MATERIALTEXT",
"I_MFGORDER",
"I_MFGORDERITEM",
"I_MRPCONTROLLER",
"I_PRODUCTIONSUPERVISOR",
"I_SALESDOCUMENTITEM"
],
"ASSOCIATED":
[
"E_LOGISTICSORDER",
"I_CURRENCY",
"I_MFGORDERCATEGORY",
"I_MFGORDERTYPE",
"I_PLANT",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_MFGORDER",
"I_SALESDOCUMENTITEM"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/