I_MfgOrderSequence

DDL: I_MFGORDERSEQUENCE SQL: IPPMFGORDSEQ Type: view COMPOSITE

Manufacturing Order Sequence

I_MfgOrderSequence is a Composite CDS View (Dimension) that provides data about "Manufacturing Order Sequence" in SAP S/4HANA. It reads from 1 data source (I_OrderSequence) and exposes 44 fields with key fields ManufacturingOrder, ManufacturingOrderSequence. It has 11 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_OrderSequence affl from

Associations (11)

CardinalityTargetAliasCondition
[1..1] I_MfgOrder _MfgOrder $projection.ManufacturingOrder = _MfgOrder.ManufacturingOrder
[1..1] I_MfgOrderCategory _MfgOrderCategory $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
[1..1] I_MfgOrderType _MfgOrderType $projection.ManufacturingOrderType = _MfgOrderType.ManufacturingOrderType
[0..1] I_MfgOrderSequence _ReferenceSequence $projection.ManufacturingOrder = _ReferenceSequence.ManufacturingOrder and $projection.ReferenceSequence = _ReferenceSequence.ManufacturingOrderSequence
[0..1] I_BillOfOperationsGroup _BillOfOperationsGroup $projection.BillOfOperationsType = _BillOfOperationsGroup.BillOfOperationsType and $projection.BillOfOperations = _BillOfOperationsGroup.BillOfOperationsGroup
[0..1] I_BillOfOperationsGroup _BillOfOperationsGroup2 $projection.BillOfOperationsType = _BillOfOperationsGroup2.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperationsGroup2.BillOfOperationsGroup
[0..1] I_MfgBillOfOperations _BillOfOperations $projection.BillOfOperationsType = _BillOfOperations.BillOfOperationsType and $projection.BillOfOperations = _BillOfOperations.BillOfOperationsGroup and $projection.BillOfOperationsVariant = _BillOfOperations.BillOfOperationsVariant
[0..1] I_MfgBillOfOperations _BillOfOperations2 $projection.BillOfOperationsType = _BillOfOperations2.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperations2.BillOfOperationsGroup and $projection.BillOfOperationsVariant = _BillOfOperations2.BillOfOperationsVariant -- to root: Header
[1..1] I_ManufacturingOrder _ManufacturingOrder $projection.ManufacturingOrder = _ManufacturingOrder.ManufacturingOrder -- to child: Operations
[1..*] I_ManufacturingOrderOperation _MfgOrderOperation $projection.OrderInternalID = _MfgOrderOperation.MfgOrderInternalID -- to child: Longtext
[0..1] I_MfgOrderSequenceLongText _MfgOrderSequenceLongText $projection.OrderInternalID = _MfgOrderSequenceLongText.OrderInternalID and $projection.SequenceInternalID = _MfgOrderSequenceLongText.SequenceInternalID and $projection.Language = _MfgOrderSequenceLongText.LongTextLanguage

Annotations (17)

NameValueLevelField
AbapCatalog.sqlViewName IPPMFGORDSEQ view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #NOT_REQUIRED view
Analytics.dataCategory #DIMENSION view
Analytics.internalName #LOCAL view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.representativeKey ManufacturingOrderSequence view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #COMPOSITE view
EndUserText.label Manufacturing Order Sequence view

Fields (44)

KeyFieldSource TableSource FieldDescription
KEY ManufacturingOrder
KEY ManufacturingOrderSequence
OrderInternalID I_OrderSequence OrderInternalID
SequenceInternalID I_OrderSequence SequenceInternalID
MfgOrderSequenceText
Language I_OrderSequence Language
MfgOrderSequenceBrnchOperation
MfgOrderSqncBranchOperation_2
MfgOrderSequenceRetOperation
MfgOrderSqncReturnOperation_2
ManufacturingOrderCategory
ManufacturingOrderType
MfgOrderSequenceCategory I_OrderSequence SequenceCategory
ProductionPlant I_OrderSequence ProductionPlant
ReferenceSequence
BillOfOperationsType I_OrderSequence BillOfOperationsType
BillOfOperations I_OrderSequence BillOfOperations
BillOfOperationsGroup I_OrderSequence BillOfOperationsGroup
BillOfOperationsVariant I_OrderSequence BillOfOperationsVariant
SequenceSchedulingAlignment I_OrderSequence SequenceSchedulingAlignment
ObjectInternalID I_OrderSequence ObjectInternalID
BillOfOperationsUnit I_OrderSequence BillOfOperationsUnit
MinimumLotSizeQuantity I_OrderSequence MinimumLotSizeQuantity
MaximumLotSizeQuantity I_OrderSequence MaximumLotSizeQuantity
_MfgOrder _MfgOrder
_ManufacturingOrder _ManufacturingOrder
_MfgOrderOperation _MfgOrderOperation
_MfgOrderSequenceLongText _MfgOrderSequenceLongText
_MfgOrderCategory _MfgOrderCategory
_MfgOrderType _MfgOrderType
_ReferenceSequence _ReferenceSequence
_OrderInternalID I_OrderSequence _OrderInternalID
_SequenceCategory I_OrderSequence _SequenceCategory
_SequenceSchedulingAlignment I_OrderSequence _SequenceSchedulingAlignment
_Plant I_OrderSequence _Plant
_BillOfOperationsType I_OrderSequence _BillOfOperationsType
_BillOfOperationsGroup _BillOfOperationsGroup
_BillOfOperationsGroup2 _BillOfOperationsGroup2
_BillOfOperations _BillOfOperations
_BillOfOperations2 _BillOfOperations2
_BillOfOperationsVariant I_OrderSequence _BillOfOperationsVariant
_BillOfOperationsUnit I_OrderSequence _BillOfOperationsUnit
_LongText I_OrderSequence _LongText
_Language I_OrderSequence _Language
@AbapCatalog.sqlViewName: 'IPPMFGORDSEQ'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AccessControl.privilegedAssociations: ['_LongText']
@Analytics.dataCategory: #DIMENSION
@Analytics.internalName: #LOCAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE]
@ObjectModel.representativeKey: 'ManufacturingOrderSequence'
@ObjectModel.semanticKey: ['ManufacturingOrder', 'ManufacturingOrderSequence']
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #COMPOSITE
@EndUserText.label: 'Manufacturing Order Sequence'

define view I_MfgOrderSequence
  as select from           I_OrderSequence       as affl
    left outer to one join I_OrderOperationBasic as vornr1 on  vornr1.OrderInternalID          = affl.OrderInternalID           // Branching Operation

                                                           and vornr1.OrderOperationInternalID = affl.BranchOperationInternalID
    left outer to one join I_OrderOperationBasic as vornr2 on  vornr2.OrderInternalID          = affl.OrderInternalID           // Returning Operation

                                                           and vornr2.OrderOperationInternalID = affl.ReturnOperationInternalID

  association [1..1] to I_MfgOrder              as _MfgOrder               on  $projection.ManufacturingOrder         = _MfgOrder.ManufacturingOrder
  association [1..1] to I_MfgOrderCategory      as _MfgOrderCategory       on  $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
  association [1..1] to I_MfgOrderType          as _MfgOrderType           on  $projection.ManufacturingOrderType     = _MfgOrderType.ManufacturingOrderType
  association [0..1] to I_MfgOrderSequence      as _ReferenceSequence      on  $projection.ManufacturingOrder = _ReferenceSequence.ManufacturingOrder
                                                                           and $projection.ReferenceSequence  = _ReferenceSequence.ManufacturingOrderSequence
  association [0..1] to I_BillOfOperationsGroup as _BillOfOperationsGroup  on  $projection.BillOfOperationsType  = _BillOfOperationsGroup.BillOfOperationsType
                                                                           and $projection.BillOfOperations      = _BillOfOperationsGroup.BillOfOperationsGroup
  association [0..1] to I_BillOfOperationsGroup as _BillOfOperationsGroup2 on  $projection.BillOfOperationsType  = _BillOfOperationsGroup2.BillOfOperationsType
                                                                           and $projection.BillOfOperationsGroup = _BillOfOperationsGroup2.BillOfOperationsGroup
  association [0..1] to I_MfgBillOfOperations   as _BillOfOperations       on  $projection.BillOfOperationsType    = _BillOfOperations.BillOfOperationsType
                                                                           and $projection.BillOfOperations        = _BillOfOperations.BillOfOperationsGroup
                                                                           and $projection.BillOfOperationsVariant = _BillOfOperations.BillOfOperationsVariant
  association [0..1] to I_MfgBillOfOperations   as _BillOfOperations2      on  $projection.BillOfOperationsType    = _BillOfOperations2.BillOfOperationsType
                                                                           and $projection.BillOfOperationsGroup   = _BillOfOperations2.BillOfOperationsGroup
                                                                           and $projection.BillOfOperationsVariant = _BillOfOperations2.BillOfOperationsVariant
  -- to root:  Header
  association [1..1] to I_ManufacturingOrder          as _ManufacturingOrder       on  $projection.ManufacturingOrder = _ManufacturingOrder.ManufacturingOrder
  -- to child: Operations
  association [1..*] to I_ManufacturingOrderOperation as _MfgOrderOperation        on  $projection.OrderInternalID    = _MfgOrderOperation.MfgOrderInternalID
  -- to child: Longtext
  association [0..1] to I_MfgOrderSequenceLongText    as _MfgOrderSequenceLongText on  $projection.OrderInternalID    = _MfgOrderSequenceLongText.OrderInternalID
                                                                                   and $projection.SequenceInternalID = _MfgOrderSequenceLongText.SequenceInternalID
                                                                                   and $projection.Language           = _MfgOrderSequenceLongText.LongTextLanguage
  {
    // Semantical key

    @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderStdVH', element: 'ManufacturingOrder' } } ]
    @ObjectModel.foreignKey.association: '_MfgOrder'
    key cast(affl.OrderID   as manufacturingorder         preserving type) as ManufacturingOrder,
    @ObjectModel.text.element: ['MfgOrderSequenceText']
    key cast(affl.Sequence  as manufacturingordersequence preserving type) as ManufacturingOrderSequence,

    // Technical Key

    @ObjectModel.foreignKey.association: '_OrderInternalID'
    affl.OrderInternalID                                                   as OrderInternalID,
    affl.SequenceInternalID                                                as SequenceInternalID,

    // Short Text

    @Semantics.text: true
    cast(affl.SequenceText  as mfgordersequencetext preserving type)       as MfgOrderSequenceText,
    @ObjectModel.foreignKey.association: '_Language'
    affl.Language                                                          as Language,

    // Branch and Return Operation

    @API.element.releaseState: #DEPRECATED // operation field has conversion exit

    @API.element.successor: 'MfgOrderSqncBranchOperation_2'
    cast(vornr1.Operation   as vornr1 preserving type)                     as MfgOrderSequenceBrnchOperation,
    cast(vornr1.Operation_2 as vdm_vornr1 preserving type)                 as MfgOrderSqncBranchOperation_2, // no conv. exit

    @API.element.releaseState: #DEPRECATED // operation field has conversion exit

    @API.element.successor: 'MfgOrderSqncReturnOperation_2'
    cast(vornr2.Operation   as vornr2 preserving type)                     as MfgOrderSequenceRetOperation,
    cast(vornr2.Operation_2 as vdm_vornr2 preserving type)                 as MfgOrderSqncReturnOperation_2, // no conv. exit


    // Assignments

    @ObjectModel.foreignKey.association: '_MfgOrderCategory'
    cast(affl.OrderCategory as manufacturingordercategory preserving type) as ManufacturingOrderCategory,
    @ObjectModel.foreignKey.association: '_MfgOrderType'
    cast(affl.OrderType     as manufacturingordertype preserving type)     as ManufacturingOrderType,
    @ObjectModel.foreignKey.association: '_SequenceCategory'
    affl.SequenceCategory                                                  as MfgOrderSequenceCategory,
    @ObjectModel.foreignKey.association: '_Plant'
    affl.ProductionPlant,
--  @ObjectModel.foreignKey.association: '_ReferenceSequence'    
    affl.ReferenceSequence,
    @ObjectModel.foreignKey.association: '_BillOfOperationsType'
    affl.BillOfOperationsType,
    @API.element.releaseState: #DEPRECATED // default data element change -> deprecated to avoid RTT2 error in ATC

    @API.element.successor: 'BillOfOperationsGroup'
    @ObjectModel.foreignKey.association: '_BillOfOperationsGroup'
    affl.BillOfOperations,
    @ObjectModel.foreignKey.association: '_BillOfOperationsGroup2'
    affl.BillOfOperationsGroup,
    @ObjectModel.foreignKey.association: '_BillOfOperationsVariant'
    affl.BillOfOperationsVariant,
    @ObjectModel.foreignKey.association: '_SequenceSchedulingAlignment'
    affl.SequenceSchedulingAlignment,
    affl.ObjectInternalID,

    // Quantities and UoM

    @Semantics.unitOfMeasure: true
    affl.BillOfOperationsUnit,
    @Semantics.quantity.unitOfMeasure: 'BillOfOperationsUnit'
    @Aggregation.default: #MIN
    affl.MinimumLotSizeQuantity,
    @Semantics.quantity.unitOfMeasure: 'BillOfOperationsUnit'
    @Aggregation.default: #MAX
    affl.MaximumLotSizeQuantity,

    // Associations

    @VDM.lifecycle.status: #DEPRECATED   // View I_MfgOrder is deprecated itself

    @VDM.lifecycle.successor: '_ManufacturingOrder'
    _MfgOrder,
    @ObjectModel.association.type: [#TO_COMPOSITION_ROOT, #TO_COMPOSITION_PARENT]
    _ManufacturingOrder,
    @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
    _MfgOrderOperation,
    @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
    _MfgOrderSequenceLongText,
    _MfgOrderCategory,
    _MfgOrderType,
    _ReferenceSequence,
    @Consumption.hidden: true
    affl._OrderInternalID,
    affl._SequenceCategory,
    affl._SequenceSchedulingAlignment, 
    affl._Plant,
    affl._BillOfOperationsType,
    @API.element.releaseState: #DEPRECATED
    @API.element.successor: '_BillOfOperations2'
    _BillOfOperationsGroup,
    _BillOfOperationsGroup2,
    @API.element.releaseState: #DEPRECATED
    @API.element.successor: '_BillOfOperations2'
    _BillOfOperations,
    _BillOfOperations2,
    affl._BillOfOperationsVariant,
    affl._BillOfOperationsUnit,
    @VDM.lifecycle.status: #DEPRECATED
    @VDM.lifecycle.successor: '_MfgOrderSequenceLongText'
    affl._LongText,
    affl._Language
  }
  where ( affl.OrderCategory = '10' or //Manufacturing orders only

          affl.OrderCategory = '40' );
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ORDEROPERATIONBASIC",
"I_ORDERSEQUENCE"
],
"ASSOCIATED":
[
"I_BILLOFOPERATIONS",
"I_BILLOFOPERATIONSGROUP",
"I_BILLOFOPERATIONSTYPE",
"I_LANGUAGE",
"I_MANUFACTURINGORDER",
"I_MANUFACTURINGORDEROPERATION",
"I_MFGBILLOFOPERATIONS",
"I_MFGORDER",
"I_MFGORDERCATEGORY",
"I_MFGORDERSEQUENCELONGTEXT",
"I_MFGORDERTYPE",
"I_ORDERINTERNALID",
"I_ORDERSEQUENCELONGTEXT",
"I_PLANT",
"I_SEQUENCECATEGORY",
"I_SEQUENCESCHEDULINGALIGNMENT",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_ORDERSEQUENCE"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/