I_Defect_TP

DDL: I_DEFECT_TP SQL: IDEFECTTP Type: view TRANSACTIONAL

Defect

I_Defect_TP is a Transactional CDS View that provides data about "Defect" in SAP S/4HANA. It reads from 1 data source (I_Defect) and exposes 105 fields with key field DefectInternalID. It has 20 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_Defect _Defect from

Associations (20)

CardinalityTargetAliasCondition
[0..1] tqdefectconfig _DefectConfiguration _Defect.DefectInternalID = _DefectConfiguration.defectinternalid
[0..1] I_DefectCodeGroup _DefectCodeGroup $projection.DefectCodeGroup = _DefectCodeGroup.DefectCodeGroup
[0..1] I_DefectCode _DefectCode $projection.DefectCodeGroup = _DefectCode.DefectCodeGroup and $projection.DefectCode = _DefectCode.DefectCode
[0..1] I_Inspectioncatalog _DefectCauseCodeCatalog $projection.DefectCauseCodeCatalog = _DefectCauseCodeCatalog.InspectionCatalog
[0..1] I_DefectCauseCodeGroup _DefectCauseCodeGroup $projection.DefectCauseCodeGroup = _DefectCauseCodeGroup.DefectCauseCodeGroup
[0..1] I_DefectCauseCode _DefectCauseCode $projection.DefectCauseCodeGroup = _DefectCauseCode.DefectCauseCodeGroup and $projection.DefectCauseCode = _DefectCauseCode.DefectCauseCode
[0..1] I_Inspectioncatalog _DefectObjectCodeCatalog $projection.DefectObjectCodeCatalog = _DefectObjectCodeCatalog.InspectionCatalog
[0..1] I_InspectionCodeGroup _DefectObjectPartCodeGroup $projection.DefectObjectCodeCatalog = _DefectObjectPartCodeGroup.InspectionCatalog and $projection.DefectObjectCodeGroup = _DefectObjectPartCodeGroup.InspectionCodeGroup
[0..1] I_InspectionCode _DefectObjectCode $projection.DefectObjectCodeCatalog = _DefectObjectCode.InspectionCatalog and $projection.DefectObjectCodeGroup = _DefectObjectCode.InspectionCodeGroup and $projection.DefectObjectCode = _DefectObjectCode.InspectionCode
[0..1] I_DefectStatus _DefectStatus $projection.DefectLifecycleStatus = _DefectStatus.DefectLifecycleStatus
[0..1] I_ProblemAnalysisStatus _ProblemAnalysisStatus $projection.ProblemAnalysisStatus = _ProblemAnalysisStatus.ProblemAnalysisStatus
[0..1] I_EWM_WarehouseNumber _EWM_WarehouseNumber $projection.Warehouse = _EWM_WarehouseNumber.Warehouse
[0..1] I_EWM_StorageType _EWM_StorageType $projection.Warehouse = _EWM_StorageType.Warehouse and $projection.StorageType = _EWM_StorageType.StorageType
[0..1] I_EWM_StorageBin _EWM_StorageBin $projection.Warehouse = _EWM_StorageBin.Warehouse and $projection.SourceStorageBin = _EWM_StorageBin.StorageBin
[0..1] I_UnitOfMeasure _DefectiveQtyUnitOfMeasure $projection.DefectiveQuantityUnit = _DefectiveQtyUnitOfMeasure.UnitOfMeasure
[0..1] I_OrderOperationBasic _ProductionOrderOperation $projection.OrderInternalID = _ProductionOrderOperation.OrderInternalID and $projection.InspPlanOperationInternalID = _ProductionOrderOperation.OrderOperationInternalID
[0..*] I_DefectLongTextTP _DefectLongTextTP $projection.DefectInternalID = _DefectLongTextTP.DefectInternalID
[0..*] I_DefectAffectedObjectTP _DefectAffectedObjectTP $projection.DefectInternalID = _DefectAffectedObjectTP.DefectInternalID
[0..*] I_DefectLongTextTP _DefectDetailedDescription $projection.DefectInternalID = _DefectDetailedDescription.DefectInternalID and _DefectDetailedDescription.LongTextID = 'LTXT'
[1..1] E_NotificationItem _Extension $projection.DefectInternalID = _Extension.Notification and _Extension.NotificationItem = '0000'

Annotations (25)

NameValueLevelField
AbapCatalog.sqlViewName IDEFECTTP view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.compiler.compareFilter true view
EndUserText.label Defect view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
AccessControl.authorizationCheck #MANDATORY view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.representativeKey DefectInternalID view
ObjectModel.sapObjectNodeType.name Defect view
ObjectModel.compositionRoot true view
ObjectModel.createEnabled EXTERNAL_CALCULATION view
ObjectModel.updateEnabled EXTERNAL_CALCULATION view
ObjectModel.deleteEnabled true view
ObjectModel.transactionalProcessingEnabled true view
ObjectModel.draftEnabled true view
ObjectModel.writeDraftPersistence QDEFECT_D view
ObjectModel.writeActivePersistence V_DEF_BO2ACT view
ObjectModel.entityChangeStateId ChangedDateTime view
ObjectModel.lifecycle.enqueue.expiryBehavior #RELATIVE_TO_LAST_CHANGE view
ObjectModel.lifecycle.enqueue.expiryInterval PT15M view
ObjectModel.lifecycle.processing.expiryBehavior #RELATIVE_TO_LAST_CHANGE view
ObjectModel.lifecycle.processing.expiryInterval PT30M view

Fields (105)

KeyFieldSource TableSource FieldDescription
KEY DefectInternalID I_Defect DefectInternalID
Defect I_Defect Defect
DefectCategory I_Defect DefectCategory
CreatedByUser I_Defect CreatedByUser
CreationDate I_Defect CreationDate
LastChangedByUser I_Defect LastChangedByUser
LastChangeDate I_Defect LastChangeDate
DefectText I_Defect DefectText Description
DefectCodeCatalog I_Defect DefectCodeCatalog
DefectCodeGroup I_Defect DefectCodeGroup
DefectCode I_Defect DefectCode
DefectCodeVersion I_Defect DefectCodeVersion
DefectObjectCodeCatalog I_Defect DefectObjectCodeCatalog
DefectObjectCodeGroup I_Defect DefectObjectCodeGroup
DefectObjectCode I_Defect DefectObjectCode
DefectObjectCodeVersion I_Defect DefectObjectCodeVersion
DefectCauseCodeCatalog I_Defect DefectCauseCodeCatalog
DefectCauseCodeGroup I_Defect DefectCauseCodeGroup
DefectCauseCode I_Defect DefectCauseCode
DefectCauseCodeVersion I_Defect DefectCauseCodeVersion
DefectiveQuantity I_Defect DefectiveQuantity
DefectiveQuantityUnit I_Defect DefectiveQuantityUnit
DefectIsCreatedAutomatically I_Defect DefectIsCreatedAutomatically
ProductionOrderOperationActy I_Defect ProductionOrderOperationActy
ProductionOrderOpActyVers I_Defect ProductionOrderOpActyVers
Batch I_Defect Batch
DefectiveSingleUnit I_Defect DefectiveSingleUnit
ProductionOrder I_Defect ProductionOrder
OrderInternalID I_Defect OrderInternalID
ProductionOrderOperation _ProductionOrderOperation Operation
ProductionOrderSequence _ProductionOrderOperation Sequence
CreationTime I_Defect CreationTime
LastChangeTime I_Defect LastChangeTime
DefectClass I_Defect DefectClass
NumberOfDefects I_Defect NumberOfDefects
InspPlanOperationInternalID I_Defect InspPlanOperationInternalID
InspectionCharacteristic I_Defect InspectionCharacteristic
InspectionSubsetInternalID I_Defect InspectionSubsetInternalID
MaterialSample I_Defect MaterialSample
WorkCenterTypeCode I_Defect WorkCenterTypeCode
MainWorkCenterInternalID I_Defect MainWorkCenterInternalID
MainWorkCenterPlant I_Defect MainWorkCenterPlant
MainWorkCenter I_Defect MainWorkCenter
Equipment I_Defect Equipment
FunctionalLocation I_Defect FunctionalLocation
IsDeleted I_Defect IsDeleted
DefectOrigin I_Defect DefectOrigin
Material I_Defect Material
Plant I_Defect Plant
StorageLocation I_Defect StorageLocation
InspectionLot I_Defect InspectionLot
CatalogProfile I_Defect CatalogProfile
ChangedDateTime I_Defect ChangedDateTime
DefectLifecycleStatus DefectLifecycleStatus
DefectArchivingStatus DefectArchivingStatus
ProblemAnalysisStatus ProblemAnalysisStatus
QualityIssueReference QualityIssueReference
MasterLanguage MasterLanguage
DefectUUID DefectUUID
ProductionSupplyArea I_Defect ProductionSupplyArea
Warehouse I_Defect EWMWarehouse
StorageType I_Defect SourceStorageType
SourceStorageBin I_Defect SourceStorageBin
WarehouseLogicalSystem I_Defect WarehouseLogicalSystem
DefectConfigurationValue _DefectConfiguration defectconfigurationvalue
DefectCausedBy I_Defect DefectCausedBy
CostCenter I_Defect CostCenter
BOMItemInstanceUUID I_Defect BOMItemInstanceUUID
ProducedMaterial I_Defect ProducedMaterial
ProducedSerialNumber I_Defect ProducedSerialNumber
_CatalogProfile I_Defect _CatalogProfile
_DefectCategory I_Defect _DefectCategory
_DefectCode _DefectCode
_DefectCodeCatalog I_Defect _DefectCodeCatalog
_DefectCodeGroup _DefectCodeGroup
_InspectionLot I_Defect _InspectionLot
_DefectiveQtyUnitOfMeasure _DefectiveQtyUnitOfMeasure
_DefectiveQuantityUnit I_Defect _DefectiveQuantityUnit
_DefectObjectCodeCatalog _DefectObjectCodeCatalog
_DefectObjectPartCodeGroup _DefectObjectPartCodeGroup
_DefectObjectCode _DefectObjectCode
_DefectStatus _DefectStatus
_DefectArchivingStatus I_Defect _DefectArchivingStatus
_ProblemAnalysisStatus _ProblemAnalysisStatus
_Product _Product
_ProducedMaterial _ProducedMaterial
_Plant _Plant
_StorageLocation _StorageLocation
_DefectClass _DefectClass
_CreatedByUserContactCard _CreatedByUserContactCard
_LastChangedByUserContactCard _LastChangedByUserContactCard
_DefectCauseCodeCatalog _DefectCauseCodeCatalog
_DefectCauseCodeGroup _DefectCauseCodeGroup
_DefectCauseCode _DefectCauseCode
_ProductionSupplyArea _ProductionSupplyArea
_EWM_WarehouseNumber_2 _EWM_WarehouseNumber_2
_EWM_WarehouseNumber _EWM_WarehouseNumber
_EWM_SourceStorageType _EWM_SourceStorageType
_EWM_StorageType _EWM_StorageType
_EWM_SourceStorageBin _EWM_SourceStorageBin
_EWM_StorageBin _EWM_StorageBin
_DefectCausedBy _DefectCausedBy
_DefectLongTextTP _DefectLongTextTP
_DefectAffectedObjectTP _DefectAffectedObjectTP
_DefectDetailedDescription _DefectDetailedDescription
@AbapCatalog.sqlViewName: 'IDEFECTTP'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter:true 
@EndUserText.label: 'Defect'
@VDM: {
    viewType: #TRANSACTIONAL,
    lifecycle.contract.type: #SAP_INTERNAL_API
}
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.privilegedAssociations:  [ '_CreatedByUserContactCard', '_LastChangedByUserContactCard' ] 
@ObjectModel: {
    usageType: {
        dataClass: #TRANSACTIONAL,
        sizeCategory: #L, 
        serviceQuality: #B },
    representativeKey: 'DefectInternalID',
    semanticKey:  [ 'Defect' ],
    sapObjectNodeType.name: 'Defect',
// Begin Draft 2.0

    compositionRoot: true,
    createEnabled: 'EXTERNAL_CALCULATION',
    updateEnabled: 'EXTERNAL_CALCULATION',
    deleteEnabled: true,
    transactionalProcessingEnabled: true,
    draftEnabled: true,
    writeDraftPersistence: 'QDEFECT_D',
    writeActivePersistence: 'V_DEF_BO2ACT',
    entityChangeStateId: 'ChangedDateTime',
    lifecycle.enqueue: {
        expiryBehavior: #RELATIVE_TO_LAST_CHANGE,  // Default #RELATIVE_TO_LAST_CHANGE

        expiryInterval: 'PT15M'                    // Default 'PT15M'

    },
    lifecycle.processing: {
        expiryBehavior: #RELATIVE_TO_LAST_CHANGE,  // Default #RELATIVE_TO_LAST_CHANGE

        expiryInterval: 'PT30M'                    // Default 'PT30M'

    }
// End Draft 2.0 

}

define view I_Defect_TP as select from I_Defect as _Defect
    association [0..1] to tqdefectconfig as _DefectConfiguration on _Defect.DefectInternalID = _DefectConfiguration.defectinternalid
    
    association [0..1] to I_DefectCodeGroup     as _DefectCodeGroup             on  $projection.DefectCodeGroup   = _DefectCodeGroup.DefectCodeGroup
    association [0..1] to I_DefectCode          as _DefectCode                  on  $projection.DefectCodeGroup   = _DefectCode.DefectCodeGroup
                                                                               and $projection.DefectCode        = _DefectCode.DefectCode  

    association [0..1] to I_Inspectioncatalog    as _DefectCauseCodeCatalog    on $projection.DefectCauseCodeCatalog  = _DefectCauseCodeCatalog.InspectionCatalog
    association [0..1] to I_DefectCauseCodeGroup as _DefectCauseCodeGroup      on $projection.DefectCauseCodeGroup    = _DefectCauseCodeGroup.DefectCauseCodeGroup
    association [0..1] to I_DefectCauseCode      as _DefectCauseCode           on $projection.DefectCauseCodeGroup    = _DefectCauseCode.DefectCauseCodeGroup
                                                                              and $projection.DefectCauseCode         = _DefectCauseCode.DefectCauseCode
                                                                               
    association [0..1] to I_Inspectioncatalog   as _DefectObjectCodeCatalog     on  $projection.DefectObjectCodeCatalog      = _DefectObjectCodeCatalog.InspectionCatalog
    association [0..1] to I_InspectionCodeGroup as _DefectObjectPartCodeGroup   on  $projection.DefectObjectCodeCatalog      = _DefectObjectPartCodeGroup.InspectionCatalog
                                                                               and $projection.DefectObjectCodeGroup    = _DefectObjectPartCodeGroup.InspectionCodeGroup
    association [0..1] to I_InspectionCode      as _DefectObjectCode            on  $projection.DefectObjectCodeCatalog      = _DefectObjectCode.InspectionCatalog
                                                                               and $projection.DefectObjectCodeGroup    = _DefectObjectCode.InspectionCodeGroup
                                                                               and $projection.DefectObjectCode             = _DefectObjectCode.InspectionCode                                                                               
   
    association [0..1] to I_DefectStatus            as _DefectStatus           on $projection.DefectLifecycleStatus = _DefectStatus.DefectLifecycleStatus
    association [0..1] to I_ProblemAnalysisStatus   as _ProblemAnalysisStatus  on $projection.ProblemAnalysisStatus = _ProblemAnalysisStatus.ProblemAnalysisStatus
                
    // Deprecated:

    association [0..1] to I_EWM_WarehouseNumber     as _EWM_WarehouseNumber    on $projection.Warehouse = _EWM_WarehouseNumber.Warehouse
       
    association [0..1] to I_EWM_StorageType         as _EWM_StorageType        on $projection.Warehouse = _EWM_StorageType.Warehouse 
                                                                               and $projection.StorageType = _EWM_StorageType.StorageType
    association [0..1] to I_EWM_StorageBin          as _EWM_StorageBin         on $projection.Warehouse = _EWM_StorageBin.Warehouse 
                                                                               and $projection.SourceStorageBin = _EWM_StorageBin.StorageBin
                              
    // Copied from I_NotificationItem; should no longer be used 

    association [0..1] to I_UnitOfMeasure           as _DefectiveQtyUnitOfMeasure    on  $projection.DefectiveQuantityUnit = _DefectiveQtyUnitOfMeasure.UnitOfMeasure
                                                                                                                                        
    // Production Order and Order Operation ("Production" means all data record with 'ManufacturingOrderCategory' = '10' from this data source)

    association [0..1] to I_OrderOperationBasic     as _ProductionOrderOperation on  $projection.OrderInternalID = _ProductionOrderOperation.OrderInternalID
                                                                                 and $projection.InspPlanOperationInternalID = _ProductionOrderOperation.OrderOperationInternalID 
        
    //Association to child nodes (composition)

    association [0..*] to I_DefectLongTextTP        as _DefectLongTextTP       on $projection.DefectInternalID  = _DefectLongTextTP.DefectInternalID                                                                        
    association [0..*] to I_DefectAffectedObjectTP  as _DefectAffectedObjectTP on $projection.DefectInternalID  = _DefectAffectedObjectTP.DefectInternalID
    
    //Association to child nodes (specialization)

    association [0..*] to I_DefectLongTextTP        as _DefectDetailedDescription on  $projection.DefectInternalID  = _DefectDetailedDescription.DefectInternalID
                                                                                  and _DefectDetailedDescription.LongTextID = 'LTXT'
                                                                                  
    //Extension

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

{
       @UI.hidden: true
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      key _Defect.DefectInternalID,
      //  key  _Defect.NotificationItem,  // Not necessary !? --> No

   
       @ObjectModel.readOnly: true
       _Defect.Defect,

       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectCategory, 
       @ObjectModel.readOnly: true 
       _Defect.CreatedByUser, 
       @ObjectModel.readOnly: true 
       _Defect.CreationDate,
       @ObjectModel.readOnly: true 
       _Defect.LastChangedByUser,
       @ObjectModel.readOnly: true 
       _Defect.LastChangeDate,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       @EndUserText.label: 'Description'
       _Defect.DefectText,  
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectCodeCatalog, 
       @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectCodeGroup' }
       _Defect.DefectCodeGroup, 
       @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectCode' }
       _Defect.DefectCode, 
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectCodeVersion,
       @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectObjectCodeCatalog'}
       _Defect.DefectObjectCodeCatalog,
       @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectObjectPartCodeGroup'}
       _Defect.DefectObjectCodeGroup,
       @ObjectModel: {readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectObjectCode'}
       _Defect.DefectObjectCode,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectObjectCodeVersion,       
       
       @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectCauseCodeCatalog' }
       _Defect.DefectCauseCodeCatalog,
       @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectCauseCodeGroup' }
       _Defect.DefectCauseCodeGroup,
       @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' , foreignKey.association: '_DefectCauseCode' }
       _Defect.DefectCauseCode,    
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectCauseCodeVersion,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.DefectiveQuantity,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectiveQuantityUnit,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.DefectIsCreatedAutomatically,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.ProductionOrderOperationActy,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.ProductionOrderOpActyVers,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.Batch,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectiveSingleUnit,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.ProductionOrder,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.OrderInternalID,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       @EndUserText: { label: 'Production Order Operation', quickInfo: 'Number of Production Order Operation' }
       _ProductionOrderOperation.Operation as ProductionOrderOperation, // External operation number

       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _ProductionOrderOperation.Sequence as ProductionOrderSequence, // Sequence of operation

       
       @ObjectModel.readOnly: true 
       @Semantics.time: true
       _Defect.CreationTime,
       @ObjectModel.readOnly: true 
       @Semantics.time: true
       _Defect.LastChangeTime,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.DefectClass,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.NumberOfDefects,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.InspPlanOperationInternalID,  
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.InspectionCharacteristic, 
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.InspectionSubsetInternalID, 
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.MaterialSample, 

//     Work center data

       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.WorkCenterTypeCode, 
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.MainWorkCenterInternalID, 
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.MainWorkCenterPlant,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.MainWorkCenter,           //External id, required for auth. check



       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.Equipment,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.FunctionalLocation,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.IsDeleted,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.DefectOrigin,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'        
       _Defect.Material,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'        
       _Defect.Plant,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'        
       _Defect.StorageLocation,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.InspectionLot, 
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION' 
       _Defect.CatalogProfile, 
       @ObjectModel.readOnly: true 
       _Defect.ChangedDateTime,
       
       @ObjectModel:    {   foreignKey.association: '_DefectStatus',
                            readOnly: 'EXTERNAL_CALCULATION'
       }
       DefectLifecycleStatus,
       @ObjectModel:    {   foreignKey.association: '_DefectArchivingStatus',
                            readOnly: true 
       }
       DefectArchivingStatus,
       @ObjectModel:    {   foreignKey.association: '_ProblemAnalysisStatus',
                            readOnly: 'EXTERNAL_CALCULATION'
       }
       ProblemAnalysisStatus,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       QualityIssueReference,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       MasterLanguage,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       DefectUUID,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.ProductionSupplyArea,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       @ObjectModel.foreignKey.association: '_EWM_WarehouseNumber_2'
       _Defect.EWMWarehouse as Warehouse,
       @ObjectModel.readOnly: true
       @ObjectModel.foreignKey.association: '_EWM_SourceStorageType'
       _Defect.SourceStorageType as StorageType,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       @ObjectModel.foreignKey.association: '_EWM_SourceStorageBin'
       _Defect.SourceStorageBin,
       @ObjectModel.readOnly: true
       _Defect.WarehouseLogicalSystem,
    
       @ObjectModel.readOnly: true
        _DefectConfiguration.defectconfigurationvalue as DefectConfigurationValue,
       
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.DefectCausedBy,
       
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.CostCenter,
       
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.BOMItemInstanceUUID,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.ProducedMaterial,
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       _Defect.ProducedSerialNumber,      
       
       /* Associations */
       _Defect._CatalogProfile, 
       _Defect._DefectCategory, 
       _DefectCode, 
       _Defect._DefectCodeCatalog, 
       _DefectCodeGroup, 
       _Defect._InspectionLot,
       @VDM.lifecycle: { status: #DEPRECATED, successor: '_DefectiveQuantityUnit' }
       _DefectiveQtyUnitOfMeasure,
       _Defect._DefectiveQuantityUnit,
//       _Defect._Notification,  // Do not use, because Defect has no foreignKey relation to I_Notification! 

       _DefectObjectCodeCatalog, 
       _DefectObjectPartCodeGroup, 
       _DefectObjectCode,
       _DefectStatus,
       _Defect._DefectArchivingStatus,
       _ProblemAnalysisStatus,
       _Product,
       _ProducedMaterial,
       _Plant,
       _StorageLocation,
       _DefectClass, 
       _CreatedByUserContactCard,
       _LastChangedByUserContactCard, 
       _DefectCauseCodeCatalog,
       _DefectCauseCodeGroup,
       _DefectCauseCode,
       _ProductionSupplyArea,
       _EWM_WarehouseNumber_2,
       @VDM.lifecycle: { status: #DEPRECATED, successor: '_EWM_WarehouseNumber_2' }
       _EWM_WarehouseNumber,
       _EWM_SourceStorageType,
       @VDM.lifecycle: { status: #DEPRECATED, successor: '_EWM_SourceStorageType' }
       _EWM_StorageType,
       _EWM_SourceStorageBin,
       @VDM.lifecycle: { status: #DEPRECATED, successor: '_EWM_SourceStorageBin' }
       _EWM_StorageBin,
       _DefectCausedBy,
       
       @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD  ] 
       _DefectLongTextTP,
       @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD  ]
       _DefectAffectedObjectTP,
       
       // Specialization for 'Detailed Description'

       _DefectDetailedDescription
          
}