I_MfgOrderDefectForSituations

DDL: I_MFGORDERDEFECTFORSITUATIONS SQL: IMFGDEFECTSIT Type: view COMPOSITE Package: MPE_EXEC_NON_CONFORMANCE

Defect list to trigger situation

I_MfgOrderDefectForSituations is a Composite CDS View that provides data about "Defect list to trigger situation" in SAP S/4HANA. It reads from 1 data source (I_Defect) and exposes 72 fields with key field DefectInternalID. It has 14 associations to related views. Part of development package MPE_EXEC_NON_CONFORMANCE.

Data Sources (1)

SourceAliasJoin Type
I_Defect Defect from

Associations (14)

CardinalityTargetAliasCondition
[0..1] I_SitnInstceIndicator _SitnInstceIndicator _SitnInstceIndicator.SitnInstceAnchorObjectKey = $projection.Defect and _SitnInstceIndicator.SitnDefAnchorObject = 'Defect'
[0..1] I_Equipment _Equip Defect.Equipment = _Equip.Equipment
[0..1] I_InspectionSubset _InspectionSubset _InspectionSubset.InspectionLot = $projection.InspectionLot and _InspectionSubset.InspPlanOperationInternalID = $projection.InspPlanOperationInternalID and _InspectionSubset.InspectionSubsetInternalID = $projection.InspectionSubsetInternalID
[0..1] I_ShopFloorItem _ShopFloorItem Defect.Material = _ShopFloorItem.Material and $projection.serialnumber = _ShopFloorItem.SerialNumber
[0..1] I_MfgOrdDefectDecision _DefectDecision _DefectDecision.Notification = $projection.DefectInternalID and _DefectDecision.NotificationItem = '0000'
[1..1] I_MfgOrderOperation _MfgOrderOperation _MfgOrderOperation.OrderInternalBillOfOperations = $projection.OrderInternalID and _MfgOrderOperation.OrderIntBillOfOperationsItem = $projection.InspPlanOperationInternalID
[1..1] I_MfgOrderOperationBasic _MfgOrderOperationBasic _MfgOrderOperationBasic.OrderInternalBillOfOperations = $projection.OrderInternalID and _MfgOrderOperationBasic.OrderIntBillOfOperationsItem = $projection.InspPlanOperationInternalID
[1..1] I_OperationActivityText _OperationActivityText $projection.ProductionOrderOperationActy = _OperationActivityText.OperationActivity and $projection.ProductionOrderOpActyVers = _OperationActivityText.OperationActyVersionCounter and _OperationActivityText.Language = $session.system_language
[1..1] I_OpActyInstceOpActyNtwkElmnt _OpActyInstceOpActyNtwkElmnt _OpActyInstceOpActyNtwkElmnt.ManufacturingOrder = $projection.ProductionOrder and _OpActyInstceOpActyNtwkElmnt.OrderOperationInternalID = $projection.InspPlanOperationInternalID and _OpActyInstceOpActyNtwkElmnt.OperationActivity = $projection.ProductionOrderOperationActy and _OpActyInstceOpActyNtwkElmnt.OperationActyVersionCounter = $projection.ProductionOrderOpActyVers
[1..1] I_OpActyInstceNtwkElmntBasic _OpActyInstceNtwkElmntBasic _OpActyInstceNtwkElmntBasic.ManufacturingOrder = $projection.ProductionOrder and _OpActyInstceNtwkElmntBasic.OrderOperationInternalID = $projection.InspPlanOperationInternalID and _OpActyInstceNtwkElmntBasic.OperationActivity = $projection.ProductionOrderOperationActy and _OpActyInstceNtwkElmntBasic.OperationActyVersionCounter = $projection.ProductionOrderOpActyVers
[0..1] I_MfgActionReasonCode _MfgActionReasonCode _MfgActionReasonCode.MfgActionReasonCodeGroupCtlg = $projection.DefectCodeCatalog and _MfgActionReasonCode.MfgActionReasonCodeGroup = $projection.DefectCodeGroup and _MfgActionReasonCode.ManufacturingActionReasonCode = $projection.DefectCode and _MfgActionReasonCode.Version = $projection.DefectCodeVersion
[0..1] I_DefectCodeText _DefectCodeText $projection.DefectCodeGroup = _DefectCodeText.DefectCodeGroup and $projection.DefectCode = _DefectCodeText.DefectCode and _DefectCodeText.Language = $session.system_language
[0..*] C_ReworkBOOVersionDefectCode _ReworkBOOVersionDefectCode $projection.DefectCodeGroup = _ReworkBOOVersionDefectCode.DefectCodeGroup and $projection.DefectCode = _ReworkBOOVersionDefectCode.DefectCode and ( --Non-serialized rework routings only if Defect is not bound to a serial number ( ( $projection.serialnumber = '' or $projection.serialnumber is null ) and _ReworkBOOVersionDefectCode.OpActyConfIsSFIBased = '' ) or( --Serialized rework routings only if Defect is bound to a serial number $projection.serialnumber > '' and $projection.serialnumber is not null and _ReworkBOOVersionDefectCode.OpActyConfIsSFIBased = 'X' ) )
[0..*] I_MaterialText _MaterialText $projection.Material = _MaterialText.MaterialName

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName IMFGDEFECTSIT view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Defect list to trigger situation view
Metadata.ignorePropagatedAnnotations true view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view

Fields (72)

KeyFieldSource TableSource FieldDescription
KEY DefectInternalID DefectInternalID
SerialNumber _Equip SerialNumber
Defect I_Defect Defect
DefectCategory DefectCategory
CreatedByUser CreatedByUser
CreationDate CreationDate
LastChangedByUser LastChangedByUser
LastChangeDate LastChangeDate
DefectText DefectText
DefectCodeCatalog DefectCodeCatalog
DefectCodeGroup DefectCodeGroup
DefectCode DefectCode
DefectCodeVersion DefectCodeVersion
DefectObjectCodeCatalog DefectObjectCodeCatalog
DefectObjectCodeGroup DefectObjectCodeGroup
DefectObjectCode DefectObjectCode
DefectObjectCodeVersion DefectObjectCodeVersion
DefectCauseCodeCatalog DefectCauseCodeCatalog
DefectCauseCodeGroup DefectCauseCodeGroup
DefectCauseCode DefectCauseCode
DefectCauseCodeVersion DefectCauseCodeVersion
DefectiveQuantityUnit DefectiveQuantityUnit
ProductionOrderOperationActy ProductionOrderOperationActy
OpActyNtwkElementExternalID _OpActyInstceNtwkElmntBasic OpActyNtwkElementExternalID
OpActyNtwkInstance _OpActyInstceNtwkElmntBasic OpActyNtwkInstance
OpActyNtwkElement _OpActyInstceNtwkElmntBasic OpActyNtwkElement
ManufacturingOrderOperation _MfgOrderOperationBasic ManufacturingOrderOperation
MfgOrderOperationText _MfgOrderOperationBasic MfgOrderOperationText
ManufacturingOrder _MfgOrderOperationBasic ManufacturingOrder
ManufacturingOrderText
ProductionOrderOpActyVers ProductionOrderOpActyVers
Batch Batch
DefectiveSingleUnit DefectiveSingleUnit
ProductionOrder ProductionOrder
OrderInternalID OrderInternalID
CreationTime CreationTime
LastChangeTime LastChangeTime
DefectClass DefectClass
NumberOfDefects NumberOfDefects
InspPlanOperationInternalID InspPlanOperationInternalID
InspectionCharacteristic InspectionCharacteristic
InspectionSubsetInternalID InspectionSubsetInternalID
MaterialSample MaterialSample
WorkCenterTypeCode WorkCenterTypeCode
MainWorkCenterInternalID MainWorkCenterInternalID
MainWorkCenterPlant MainWorkCenterPlant
MainWorkCenter MainWorkCenter
Equipment Equipment
FunctionalLocation FunctionalLocation
DefectOrigin DefectOrigin
Material Material
Plant Plant
InspectionLot InspectionLot
CatalogProfile CatalogProfile
ChangedDateTime ChangedDateTime
DefectLifecycleStatus DefectLifecycleStatus
DefectLifecycleStatusText
ProblemAnalysisStatus ProblemAnalysisStatus
QualityIssueReference QualityIssueReference
MasterLanguage MasterLanguage
_DefectCodeText _DefectCodeText
_DefectDecision _DefectDecision
_DefectStatus _DefectStatus
_InspectionLot _InspectionLot
_InspectionSubset _InspectionSubset
_MaterialText _MaterialText
_MfgActionReasonCode _MfgActionReasonCode
_MfgOrderOperation _MfgOrderOperation
_OpActyInstceOpActyNtwkElmnt _OpActyInstceOpActyNtwkElmnt
_OperationActivityText _OperationActivityText
_ReworkBOOVersionDefectCode _ReworkBOOVersionDefectCode
_ShopFloorItem _ShopFloorItem
@AbapCatalog.sqlViewName: 'IMFGDEFECTSIT'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Defect list to trigger situation'
@Metadata.ignorePropagatedAnnotations: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #COMPOSITE
@ObjectModel.usageType: {serviceQuality: #D, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@ObjectModel.semanticKey: ['Defect']
define view I_MfgOrderDefectForSituations
  // as select from C_MfgOrderDefectRecord


  as select from I_Defect as Defect

  association [0..1] to I_SitnInstceIndicator         as _SitnInstceIndicator         on  _SitnInstceIndicator.SitnInstceAnchorObjectKey = $projection.Defect
                                                                                      and _SitnInstceIndicator.SitnDefAnchorObject       = 'Defect'

  association [0..1] to I_Equipment                   as _Equip                       on  Defect.Equipment = _Equip.Equipment

  association [0..1] to I_InspectionSubset            as _InspectionSubset            on  _InspectionSubset.InspectionLot               = $projection.InspectionLot
                                                                                      and _InspectionSubset.InspPlanOperationInternalID = $projection.InspPlanOperationInternalID
                                                                                      and _InspectionSubset.InspectionSubsetInternalID  = $projection.InspectionSubsetInternalID
  association [0..1] to I_ShopFloorItem               as _ShopFloorItem               on  Defect.Material          = _ShopFloorItem.Material
                                                                                      and $projection.serialnumber = _ShopFloorItem.SerialNumber
  association [0..1] to I_MfgOrdDefectDecision        as _DefectDecision              on  _DefectDecision.Notification     = $projection.DefectInternalID
                                                                                      and _DefectDecision.NotificationItem = '0000'
  //Association to child nodes

  // association [0..*] to I_DefectLongTextTP            as _DefectLongTextTP            on  $projection.DefectInternalID = _DefectLongTextTP.DefectInternalID

  association [1..1] to I_MfgOrderOperation           as _MfgOrderOperation           on  _MfgOrderOperation.OrderInternalBillOfOperations = $projection.OrderInternalID
                                                                                      and _MfgOrderOperation.OrderIntBillOfOperationsItem  = $projection.InspPlanOperationInternalID
  association [1..1] to I_MfgOrderOperationBasic      as _MfgOrderOperationBasic      on  _MfgOrderOperationBasic.OrderInternalBillOfOperations = $projection.OrderInternalID
                                                                                      and _MfgOrderOperationBasic.OrderIntBillOfOperationsItem  = $projection.InspPlanOperationInternalID
  association [1..1] to I_OperationActivityText       as _OperationActivityText       on  $projection.ProductionOrderOperationActy = _OperationActivityText.OperationActivity
                                                                                      and $projection.ProductionOrderOpActyVers    = _OperationActivityText.OperationActyVersionCounter
                                                                                      and _OperationActivityText.Language          = $session.system_language
  association [1..1] to I_OpActyInstceOpActyNtwkElmnt as _OpActyInstceOpActyNtwkElmnt on  _OpActyInstceOpActyNtwkElmnt.ManufacturingOrder          = $projection.ProductionOrder
                                                                                      and _OpActyInstceOpActyNtwkElmnt.OrderOperationInternalID    = $projection.InspPlanOperationInternalID
                                                                                      and _OpActyInstceOpActyNtwkElmnt.OperationActivity           = $projection.ProductionOrderOperationActy
                                                                                      and _OpActyInstceOpActyNtwkElmnt.OperationActyVersionCounter = $projection.ProductionOrderOpActyVers
  association [1..1] to I_OpActyInstceNtwkElmntBasic  as _OpActyInstceNtwkElmntBasic  on  _OpActyInstceNtwkElmntBasic.ManufacturingOrder          = $projection.ProductionOrder
                                                                                      and _OpActyInstceNtwkElmntBasic.OrderOperationInternalID    = $projection.InspPlanOperationInternalID
                                                                                      and _OpActyInstceNtwkElmntBasic.OperationActivity           = $projection.ProductionOrderOperationActy
                                                                                      and _OpActyInstceNtwkElmntBasic.OperationActyVersionCounter = $projection.ProductionOrderOpActyVers
  association [0..1] to I_MfgActionReasonCode         as _MfgActionReasonCode         on  _MfgActionReasonCode.MfgActionReasonCodeGroupCtlg  = $projection.DefectCodeCatalog
                                                                                      and _MfgActionReasonCode.MfgActionReasonCodeGroup      = $projection.DefectCodeGroup
                                                                                      and _MfgActionReasonCode.ManufacturingActionReasonCode = $projection.DefectCode
                                                                                      and _MfgActionReasonCode.Version                       = $projection.DefectCodeVersion
  association [0..1] to I_DefectCodeText              as _DefectCodeText              on  $projection.DefectCodeGroup = _DefectCodeText.DefectCodeGroup
                                                                                      and $projection.DefectCode      = _DefectCodeText.DefectCode
                                                                                      and _DefectCodeText.Language    = $session.system_language
  association [0..*] to C_ReworkBOOVersionDefectCode  as _ReworkBOOVersionDefectCode  on  $projection.DefectCodeGroup                           = _ReworkBOOVersionDefectCode.DefectCodeGroup
                                                                                      and $projection.DefectCode                                = _ReworkBOOVersionDefectCode.DefectCode
                                                                                      and ( --Non-serialized rework routings only if Defect is not bound to a serial number
                                                                                         (
                                                                                           (
                                                                                             $projection.serialnumber                           = ''
                                                                                             or $projection.serialnumber                        is null
                                                                                           )
                                                                                           and _ReworkBOOVersionDefectCode.OpActyConfIsSFIBased = ''
                                                                                         )
                                                                                         or( --Serialized rework routings only if Defect is bound to a serial number
                                                                                           $projection.serialnumber                             > ''
                                                                                           and $projection.serialnumber                         is not null
                                                                                           and _ReworkBOOVersionDefectCode.OpActyConfIsSFIBased = 'X'
                                                                                         )
                                                                                       )
  association [0..*] to I_MaterialText                as _MaterialText                on  $projection.Material = _MaterialText.MaterialName

{
        //C_MfgOrderDefectRecord

        //key

  key   DefectInternalID,
        _Equip.SerialNumber,
        Defect.Defect,
        DefectCategory,
        CreatedByUser,
        CreationDate,
        LastChangedByUser,
        LastChangeDate,
        DefectText,
        DefectCodeCatalog,
        DefectCodeGroup,
        DefectCode,
        DefectCodeVersion,
        DefectObjectCodeCatalog,
        DefectObjectCodeGroup,
        DefectObjectCode,
        DefectObjectCodeVersion,
        DefectCauseCodeCatalog,
        DefectCauseCodeGroup,
        DefectCauseCode,
        DefectCauseCodeVersion,
        //DefectiveQuantity,

        DefectiveQuantityUnit,
        //DefectIsCreatedAutomatically,

        ProductionOrderOperationActy,
        _OpActyInstceNtwkElmntBasic.OpActyNtwkElementExternalID,
        _OpActyInstceNtwkElmntBasic.OpActyNtwkInstance,
        _OpActyInstceNtwkElmntBasic.OpActyNtwkElement,
        _MfgOrderOperationBasic.ManufacturingOrderOperation,
        _MfgOrderOperationBasic.MfgOrderOperationText,
        _MfgOrderOperationBasic.ManufacturingOrder,
        _MfgOrderOperationBasic._MfgOrder.ManufacturingOrderText,
        ProductionOrderOpActyVers,
        Batch,
        DefectiveSingleUnit,
        ProductionOrder,
        OrderInternalID,
        CreationTime,
        LastChangeTime,
        DefectClass,
        NumberOfDefects,
        InspPlanOperationInternalID,
        InspectionCharacteristic,
        InspectionSubsetInternalID,
        MaterialSample,
        WorkCenterTypeCode,
        MainWorkCenterInternalID,
        MainWorkCenterPlant,
        MainWorkCenter,
        Equipment,
        FunctionalLocation,
        //IsDeleted,

        DefectOrigin,
        Material,
        Plant,
        InspectionLot,
        CatalogProfile,
        ChangedDateTime,
        DefectLifecycleStatus,
        cast(LOWER(_DefectStatus._DefectStatusText[1:Language = $session.system_language].DefectLifecycleStatusText) as char40) as DefectLifecycleStatusText,
        ProblemAnalysisStatus,
        QualityIssueReference,
        MasterLanguage,
        /* Associations */
        //C_MfgOrderDefectRecord

        _DefectCodeText,
        _DefectDecision,
        _DefectStatus,
        _InspectionLot,
        _InspectionSubset,
        _MaterialText,
        _MfgActionReasonCode,
        _MfgOrderOperation,
        _OpActyInstceOpActyNtwkElmnt,
        _OperationActivityText,
        _ReworkBOOVersionDefectCode,
        _ShopFloorItem
}
where
  ProductionOrderOperationActy != 0