R_DEFECTAFFECTEDOBJECTTP

CDS View

Object Affected by Defect

R_DEFECTAFFECTEDOBJECTTP is a CDS View in S/4HANA. Object Affected by Defect. 1 CDS views read from this table.

CDS Views using this table (1)

ViewTypeJoinVDMDescription
A_DefectAffectedObject view_entity projection CONSUMPTION Object Affected by Defect
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.privilegedAssociations:  [ '_DefectAffectedObjLastTask' ]
@EndUserText.label: 'Object Affected by Defect'
@VDM: {
    viewType: #TRANSACTIONAL,
    lifecycle.contract.type: #SAP_INTERNAL_API
}

@ObjectModel: {
    usageType: {
        dataClass: #TRANSACTIONAL,
        sizeCategory: #M,
        serviceQuality: #C },
    representativeKey: 'DefectAffectedObject',
    semanticKey:  [ 'Defect', 'DefectAffectedObject' ]
}
@Metadata.ignorePropagatedAnnotations: true // Block inheritance of annotation which are not allowed here; add required from underlying views explicitly


define view entity R_DefectAffectedObjectTP as select from I_DefectAffectedObject as _DefectAffectedObject

  association to parent R_DefectTP  as _Defect      on $projection.DefectInternalID = _Defect.DefectInternalID
  
  association [0..1] to I_DefectAffectedObjLastTask as _DefectAffectedObjLastTask 
                                                    on  $projection.DefectInternalID     = _DefectAffectedObjLastTask.DefectInternalID
                                                    and $projection.DefectAffectedObject = _DefectAffectedObjLastTask.DefectAffectedObject
  
  association [0..1] to I_QltyTskFllwUpActnSimlnRslt as _QltyTskFllwUpActnSimlnRslt on $projection.QltyTskFllwUpActnSimlnRslt = _QltyTskFllwUpActnSimlnRslt.QltyTskFllwUpActnSimlnRslt                                               
                                                    
  // Extension

  association [1..1] to E_DefectAffectedObject as _Extension           on $projection.DefectInternalID = _Extension.Notification
                                                                      and _Extension.NotificationItem = '0000'
                                                                      and $projection.DefectAffectedObject = _Extension.DefectAffectedObject

{
      @ObjectModel.foreignKey.association: '_Defect'
  key _DefectAffectedObject.DefectInternalID,
  key _DefectAffectedObject.DefectAffectedObject,
  
      // Use external Defect Id as part of the semantic key

      _DefectAffectedObject.Defect,
  
      _DefectAffectedObject.DefectAffectedObjectType,
      
      _DefectAffectedObject.Material,
      @Semantics.quantity.unitOfMeasure: 'DefectAffcdObjQuantityUnit'
      _DefectAffectedObject.DefectAffectedObjectQuantity,
      _DefectAffectedObject.DefectAffcdObjQuantityUnit,
      _DefectAffectedObject.Batch,

      _DefectAffectedObjLastTask.QltyTaskFollowUpAction,
      _DefectAffectedObjLastTask.QltyTaskFllwUpActionSts,
      _DefectAffectedObjLastTask.QualityTaskInternalId,
      _DefectAffectedObjLastTask.QualityTask,
      @ObjectModel.foreignKey.association: '_QltyTskFllwUpActnSimlnRslt'
      cast( abap.char'   ' as qtskfoasimres preserving type ) as QltyTskFllwUpActnSimlnRslt,
      
      @Semantics.booleanIndicator: true
      case DefectAffectedObjectType
        when '01' 
          then
            case when Material is not initial and Material = _Defect.Material and Batch = _Defect.Batch
              then cast( abap.char'X' as qfaffcdobjisdefective preserving type )
              else cast( abap.char' ' as qfaffcdobjisdefective preserving type )
            end
          else cast( abap.char' ' as qfaffcdobjisdefective preserving type )
      end                                                                    as DefectAffcdObjIsDefective,

      // Associations

      // Compositions

      _Defect,
      
      _DefectAffectedObjLastTask,
      _QltyTskFllwUpActnSimlnRslt
      
}