I_QltyTskCode

DDL: I_QLTYTSKCODE Type: view BASIC

Quality Task Code

I_QltyTskCode is a Basic CDS View that provides data about "Quality Task Code" in SAP S/4HANA. It reads from 1 data source (qpcd) and exposes 6 fields with key fields QualityTaskCodeGroup, QualityTaskCode. It has 3 associations to related views.

Data Sources (1)

SourceAliasJoin Type
qpcd qpcd from

Associations (3)

CardinalityTargetAliasCondition
[1..1] I_QltyTskCodeGroup _QltyTskCodeGroup $projection.QualityTaskCodeGroup = _QltyTskCodeGroup.QualityTaskCodeGroup
[0..1] I_QltyTaskFollowUpAction _QltyTaskFollowUpAction $projection.QltyTaskFollowUpAction = _QltyTaskFollowUpAction.QltyTaskFollowUpAction
[0..*] I_QltyTskCodeText _QltyTskCodeText $projection.QualityTaskCodeGroup = _QltyTskCodeText.QualityTaskCodeGroup and $projection.QualityTaskCode = _QltyTskCodeText.QualityTaskCode

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName IQTSKCODE view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ObjectModel.representativeKey QualityTaskCode view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.dataClass #CUSTOMIZING view
EndUserText.label Quality Task Code view
Metadata.ignorePropagatedAnnotations true view

Fields (6)

KeyFieldSource TableSource FieldDescription
KEY QualityTaskCodeGroup
KEY QualityTaskCode
QltyTaskFollowUpAction qpcd folgeakti
_QltyTskCodeText _QltyTskCodeText
_QltyTskCodeGroup _QltyTskCodeGroup
_QltyTaskFollowUpAction _QltyTaskFollowUpAction
@AbapCatalog: {
    sqlViewName: 'IQTSKCODE',
    compiler.compareFilter: true,
    preserveKey: true  
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #CHECK
@VDM: {
    viewType: #BASIC,
    lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@ObjectModel: {
    representativeKey: 'QualityTaskCode',
    usageType: { serviceQuality: #A, sizeCategory: #M, dataClass: #CUSTOMIZING }
}
@EndUserText.label: 'Quality Task Code'
@Metadata.ignorePropagatedAnnotations: true
define view I_QltyTskCode as select from qpcd

    association [1..1] to I_QltyTskCodeGroup as _QltyTskCodeGroup on $projection.QualityTaskCodeGroup = _QltyTskCodeGroup.QualityTaskCodeGroup
    
    association [0..1] to I_QltyTaskFollowUpAction  as _QltyTaskFollowUpAction on $projection.QltyTaskFollowUpAction = _QltyTaskFollowUpAction.QltyTaskFollowUpAction
    
    association [0..*] to I_QltyTskCodeText         as _QltyTskCodeText on  $projection.QualityTaskCodeGroup = _QltyTskCodeText.QualityTaskCodeGroup
                                                                        and $projection.QualityTaskCode = _QltyTskCodeText.QualityTaskCode

{   
    @ObjectModel.foreignKey.association: '_QltyTskCodeGroup'
    key cast( qpcd.codegruppe   as vdm_qtaskcodegrp preserving type )   as QualityTaskCodeGroup,
    @ObjectModel.text.association: '_QltyTskCodeText'
    key cast( qpcd.code         as vdm_qtaskcode    preserving type )   as QualityTaskCode,
    
    // DB field has three values, but field shall be indicator

    @Semantics.booleanIndicator: true
    case qpcd.inaktiv
      when ' ' then cast( ' ' as vdm_qm_codeisinactive preserving type )
      else cast( 'X' as vdm_qm_codeisinactive preserving type )
    end                                                 as CodeIsInactive,
    
    @ObjectModel:{  foreignKey.association: '_QltyTaskFollowUpAction' }
    qpcd.folgeakti                                      as QltyTaskFollowUpAction,    
    
    /* Associations */
    _QltyTskCodeText,
    _QltyTskCodeGroup,
    _QltyTaskFollowUpAction 
    
} where qpcd.katalogart = '2' // Tasks

    and qpcd.version    = '000001'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"QPCD"
],
"ASSOCIATED":
[
"I_QLTYTASKFOLLOWUPACTION",
"I_QLTYTSKCODEGROUP",
"I_QLTYTSKCODETEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/