I_ChangeRecordMfgOrder

DDL: I_CHANGERECORDMFGORDER SQL: ICHGRECDPRN Type: view COMPOSITE

Change Record Production Order

I_ChangeRecordMfgOrder is a Composite CDS View that provides data about "Change Record Production Order" in SAP S/4HANA. It reads from 1 data source (I_MfgOrder) and exposes 11 fields with key field ManufacturingOrder. It has 3 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_MfgOrder MfgOrder from

Associations (3)

CardinalityTargetAliasCondition
[1..1] I_MfgOrderCategory _MfgOrderCategory $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
[0..1] P_ChangeRecordProdnHold _ProdnHold $projection.OrderInternalBillOfOperations = _ProdnHold.OrderInternalID
[0..1] I_ProdnOrderChangeStatusText _ProdnOrdChgStsTxt $projection.OrderChangeStatus = _ProdnOrdChgStsTxt.OrderChangeStatus and _ProdnOrdChgStsTxt.Language = $session.system_language

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName ICHGRECDPRN view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #COMPOSITE view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Change Record Production Order view

Fields (11)

KeyFieldSource TableSource FieldDescription
KEY ManufacturingOrder I_MfgOrder ManufacturingOrder
ManufacturingOrderText I_MfgOrder ManufacturingOrderText
ManufacturingOrderType I_MfgOrder ManufacturingOrderType
ManufacturingOrderCategory I_MfgOrder ManufacturingOrderCategory
ProductionPlant I_MfgOrder ProductionPlant
Material I_MfgOrder Material
OrderInternalBillOfOperations
_Material _Material
_MfgOrderType _MfgOrderType
_MfgOrderCategory _MfgOrderCategory
_ProdnOrdChgStsTxt _ProdnOrdChgStsTxt
@AbapCatalog.sqlViewName: 'ICHGRECDPRN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MASTER,
                         sizeCategory: #L}
@VDM.viewType:#COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Change Record Production Order'
define view I_ChangeRecordMfgOrder
  as select from I_MfgOrder as MfgOrder
  /* Commented for Performance improvement
   left outer join I_BillOfOperationsVersion    as BOOVersion  on MfgOrder.ManufacturingOrder = BOOVersion.OrderID
   left outer join P_MfgProcgExecOrdMainStatus2 as OrderStatus on MfgOrder.ManufacturingOrder = OrderStatus.ManufacturingOrder
   association [0..1] to I_StatusCodeText             as _StatusCodeText    on  OrderStatus.StatusCode   = _StatusCodeText.StatusCode
                                                                         and _StatusCodeText.Language = $session.system_language */
  association [1..1] to I_MfgOrderCategory           as _MfgOrderCategory  on  $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
  association [0..1] to P_ChangeRecordProdnHold      as _ProdnHold         on  $projection.OrderInternalBillOfOperations = _ProdnHold.OrderInternalID
  association [0..1] to I_ProdnOrderChangeStatusText as _ProdnOrdChgStsTxt on  $projection.OrderChangeStatus = _ProdnOrdChgStsTxt.OrderChangeStatus
                                                                           and _ProdnOrdChgStsTxt.Language   = $session.system_language
{
  key MfgOrder.ManufacturingOrder,
      MfgOrder.ManufacturingOrderText,
      MfgOrder.ManufacturingOrderType,
      MfgOrder.ManufacturingOrderCategory,
      MfgOrder.ProductionPlant,
      /*BOOVersion.OrderID,
      BOOVersion.BillOfOperationsGroup,
      BOOVersion.BillOfOperationsType,
      BOOVersion.BillOfOperationsVariant,

      --Get the maximum/latest routing version
      cast(max(BOOVersion.BillOfOperationsVersion) as plnversn preserving type )  as BillOfOperationsVersion,*/

      MfgOrder.Material,

      --Production Order Status
      //_StatusCodeText.StatusName,


      MfgOrder.OrderInternalBillOfOperations,

      --Order Change Status
      cast(case
        when ( _ProdnHold.OrderCount > 0 and _ProdnHold.ProductionHoldEndDateTime = 0 ) then '1'
        when ( _ProdnHold.OrderCount > 0 and _ProdnHold.ProductionHoldEndDateTime > 0 ) then '2'
        else '0'
      end as mpe_mec_ord_change_status) as OrderChangeStatus,

      _Material,
      _MfgOrderType,
      _MfgOrderCategory,
      _ProdnOrdChgStsTxt
}
/*group by
  MfgOrder.ManufacturingOrder,
  MfgOrder.ManufacturingOrderText,
  MfgOrder.ManufacturingOrderType,
  MfgOrder.ManufacturingOrderCategory,
  MfgOrder.ProductionPlant,
  BOOVersion.OrderID,
  BOOVersion.BillOfOperationsGroup,
  BOOVersion.BillOfOperationsType,
  BOOVersion.BillOfOperationsVariant,
  MfgOrder.Material,
  _StatusCodeText.StatusName,
  MfgOrder.OrderInternalBillOfOperations,
  _ProdnHold.OrderCount,
  _ProdnHold.ProductionHoldEndDateTime;*/
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MFGORDER",
"P_CHANGERECORDPRODNHOLD"
],
"ASSOCIATED":
[
"I_MATERIAL",
"I_MFGORDERCATEGORY",
"I_MFGORDERTYPE",
"I_PRODNORDERCHANGESTATUSTEXT",
"P_CHANGERECORDPRODNHOLD"
],
"BASE":
[
"I_MFGORDER"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/