I_DefectCodeGroup

DDL: I_DEFECTCODEGROUP SQL: IDEFECTCODEGRP Type: view BASIC

Defect Code Group

I_DefectCodeGroup is a Basic CDS View that provides data about "Defect Code Group" in SAP S/4HANA. It reads from 1 data source (qpgr) and exposes 4 fields with key field DefectCodeGroup. It has 2 associations to related views.

Data Sources (1)

SourceAliasJoin Type
qpgr qpgr from

Associations (2)

CardinalityTargetAliasCondition
[0..*] I_DefectCodeGroupText _Text $projection.DefectCodeGroup = _Text.DefectCodeGroup
[0..*] I_DefectCode _DefectCode $projection.DefectCodeGroup = _DefectCode.DefectCodeGroup

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName IDEFECTCODEGRP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Defect Code Group view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ObjectModel.representativeKey DefectCodeGroup view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #CUSTOMIZING view
Metadata.ignorePropagatedAnnotations true view

Fields (4)

KeyFieldSource TableSource FieldDescription
KEY DefectCodeGroup
CodeGroupStatus qpgr status
_Text _Text
_DefectCode _DefectCode
@AbapCatalog.sqlViewName: 'IDEFECTCODEGRP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Defect Code Group'
@AccessControl.authorizationCheck: #CHECK
@VDM: {
    viewType:#BASIC,
    lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@ObjectModel.supportedCapabilities:
    [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET ]
@ObjectModel: {
    representativeKey: 'DefectCodeGroup',
    usageType: { serviceQuality: #A, sizeCategory: #S, dataClass: #CUSTOMIZING }
}
@Metadata.ignorePropagatedAnnotations: true
define view I_DefectCodeGroup as select from qpgr 

  association [0..*] to I_DefectCodeGroupText as _Text
    on $projection.DefectCodeGroup     = _Text.DefectCodeGroup
    
  association [0..*] to I_DefectCode as _DefectCode
    on $projection.DefectCodeGroup = _DefectCode.DefectCodeGroup
    
{
  @ObjectModel.text.association: '_Text'
  key cast( qpgr.codegruppe as vdm_qfegrp preserving type )   as DefectCodeGroup,
  
  // DB field has three values, but field shall be indicator

  @Semantics.booleanIndicator: true
  case qpgr.inaktiv
    when ' ' then cast( ' ' as vdm_qm_codegroupisinactive preserving type )
    else cast( 'X' as vdm_qm_codegroupisinactive preserving type )
  end                                                        as CodeGroupIsInactive,
  
  qpgr.status                                                as CodeGroupStatus,

  //Associations

  _Text,
  _DefectCode
  
} where qpgr.katalogart = '9' // Defects