C_QualityTaskProcess

DDL: C_QUALITYTASKPROCESS SQL: CQLTYTSKPROC Type: view CONSUMPTION

Process Quality Task

C_QualityTaskProcess is a Consumption CDS View that provides data about "Process Quality Task" in SAP S/4HANA. It reads from 1 data source (I_QualityTaskTP) and exposes 53 fields with key field QualityTaskInternalId. It has 7 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_QualityTaskTP I_QualityTaskTP from

Associations (7)

CardinalityTargetAliasCondition
[0..1] C_QltyTskProcProcsrNotes _QltyTskProcProcsrNotes $projection.QualityTaskInternalId = _QltyTskProcProcsrNotes.QualityTaskInternalId and $projection.MasterLanguage = _QltyTskProcProcsrNotes.Language and _QltyTskProcProcsrNotes.ItemCounter = 1
[0..1] C_QltyTaskDetailedDescription _QltyTaskDetailedDescription $projection.QualityTaskInternalId = _QltyTaskDetailedDescription.QualityTaskInternalId and $projection.MasterLanguage = _QltyTaskDetailedDescription.Language and _QltyTaskDetailedDescription.ItemCounter = 2
[0..1] C_QltyTskProcFllwActnSglParam _QltyTskProcFllwActnSglParam $projection.QualityTaskInternalId = _QltyTskProcFllwActnSglParam.QualityTaskInternalId and _QltyTskProcFllwActnSglParam.ItemCounter = 1
[0..*] C_QltyTskProcFllwActnTblParam _QltyTskProcFllwActnTblParam $projection.QualityTaskInternalId = _QltyTskProcFllwActnTblParam.QualityTaskInternalId
[1..1] C_QualityTaskProcessCalc _QualityTaskProcessCalc $projection.QualityTaskInternalId = _QualityTaskProcessCalc.QualityTaskInternalId
[0..1] C_QltyTaskProcessDefectInfo _QltyTaskProcessDefectInfo $projection.DefectInternalID = _QltyTaskProcessDefectInfo.DefectInternalID
[0..1] C_QltyTaskProbSolvingProcInfo _QltyTaskProbSolvingProcInfo $projection.ProbSolvingProc = _QltyTaskProbSolvingProcInfo.ProbSolvingProc and $projection.ProbSolvingProcStp = _QltyTaskProbSolvingProcInfo.ProbSolvingProcStp

Annotations (24)

NameValueLevelField
AbapCatalog.sqlViewName CQLTYTSKPROC view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
VDM.viewType #CONSUMPTION view
EndUserText.label Process Quality Task view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.representativeKey QualityTaskInternalId view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.compositionRoot true view
ObjectModel.transactionalProcessingDelegated true view
ObjectModel.draftEnabled true view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled EXTERNAL_CALCULATION view
ObjectModel.deleteEnabled true view
UI.headerInfo.typeName Quality Task view
UI.headerInfo.typeNamePlural Quality Tasks view
UI.headerInfo.title.value QualityTask view
UI.headerInfo.title.label Quality Task view
UI.headerInfo.description.value QualityTaskText view
Consumption.semanticObject QualityTask view
Metadata.allowExtensions true view

Fields (53)

KeyFieldSource TableSource FieldDescription
KEY QualityTaskInternalId QualityTaskInternalId
QualityTask QualityTask
QualityTaskOrigin QualityTaskOrigin
QualityTaskType QualityTaskType
QualityTaskText QualityTaskText
QualityTaskProcessor QualityTaskProcessor
QualityTaskLifecycleStatus QualityTaskLifecycleStatus
QualityTaskArchivingStatus QualityTaskArchivingStatus
MasterLanguage MasterLanguage
NotifTaskPlannedEndDate NotifTaskPlannedEndDate
NotifTaskPlannedEndTime NotifTaskPlannedEndTime
NotifTaskCompletionDate NotifTaskCompletionDate
NotifTaskCompletionTime NotifTaskCompletionTime
NotifTaskCompletedByUser NotifTaskCompletedByUser
NotifTaskTimeZone NotifTaskTimeZone
QualityTaskCodeCatalog QualityTaskCodeCatalog
QualityTaskCodeGroup QualityTaskCodeGroup
QualityTaskCode QualityTaskCode
QltyTaskFollowUpAction QltyTaskFollowUpAction
QltyTaskFllwUpActionSts QltyTaskFllwUpActionSts
QltyTskFllwUpActnConfignVal QltyTskFllwUpActnConfignVal
ChangedDateTime ChangedDateTime
CreationDate CreationDate
CreationTime CreationTime
CreatedByUser CreatedByUser
LastChangeDate LastChangeDate
LastChangeTime LastChangeTime
LastChangedByUser LastChangedByUser
QltyTskProcgIsCtrldByTskOrigin QltyTskProcgIsCtrldByTskOrigin
DefectInternalID DefectInternalID
ProbSolvingProc ProbSolvingProc
ProbSolvingProcStp ProbSolvingProcStp
ProbSolvingProcCause ProbSolvingProcCause
QltyTaskTimeBasedEffort QltyTaskTimeBasedEffort Time Effort
QltyTaskTimeBasedEffortUoM QltyTaskTimeBasedEffortUoM
_QltyTskProcProcsrNotes _QltyTskProcProcsrNotes
_QltyTaskDetailedDescription _QltyTaskDetailedDescription
_QltyTskProcFllwActnSglParam _QltyTskProcFllwActnSglParam
_QltyTskProcFllwActnTblParam _QltyTskProcFllwActnTblParam
_QualityTaskProcessor _QualityTaskProcessor
_QualityTaskStatus _QualityTaskStatus
_QltyTaskArchivingStatus _QltyTaskArchivingStatus
_CreatedByUserContactCard _CreatedByUserContactCard
_CompletedByUserContactCard _CompletedByUserContactCard
_LastChangedByUserContactCard _LastChangedByUserContactCard
_QaulityTaskTimeZone _QaulityTaskTimeZone
_QltyTskCodeGroup _QltyTskCodeGroup
_QltyTskCode _QltyTskCode
_QltyTaskFollowUpAction _QltyTaskFollowUpAction
_QltyTaskFllwUpActionSts _QltyTaskFllwUpActionSts
_QualityTaskProcessCalc _QualityTaskProcessCalc
_QltyTaskProcessDefectInfo _QltyTaskProcessDefectInfo
_QltyTaskProbSolvingProcInfo _QltyTaskProbSolvingProcInfo
@AbapCatalog.sqlViewName: 'CQLTYTSKPROC'
@AbapCatalog.compiler.compareFilter: true

@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED

@VDM.viewType: #CONSUMPTION

@EndUserText.label: 'Process Quality Task'
@ClientHandling.algorithm: #SESSION_VARIABLE

@ObjectModel: {
    semanticKey:  [ 'QualityTask' ],
    representativeKey: 'QualityTaskInternalId',
    usageType: {
        dataClass: #TRANSACTIONAL,
        sizeCategory: #L,
        serviceQuality: #A },
// Begin Draft 2.0

    compositionRoot: true,
    transactionalProcessingDelegated: true,
    draftEnabled:  true,
    createEnabled: true,
    updateEnabled: 'EXTERNAL_CALCULATION',
    deleteEnabled: true    
}
    
@UI.headerInfo: {  
    typeName: 'Quality Task',
    typeNamePlural: 'Quality Tasks',
    title: {value: 'QualityTask', label: 'Quality Task'},
    description: {value: 'QualityTaskText'}
}
@UI.presentationVariant.requestAtLeast: [ 'DefectInternalID', 'ProbSolvingProc', 'ProbSolvingProcStp', 'ProbSolvingProcCause', 'QltyTskFllwUpActnConfignVal', '_QltyTskProcProcsrNotes.QualityTaskProcessorNotes', '_QltyTskProcProcsrNotes.QualityTaskProcsrNotesPreview', 
                                          '_QualityTaskProcessCalc.QltyTaskOriginSemanticObject', '_QualityTaskProcessCalc.QltyTaskOriginObject', '_QualityTaskProcessCalc.QualityTaskOriginText',
                                          '_QltyTskProcFllwActnSglParam.ItemCounter', 'QltyTskProcgIsCtrldByTskOrigin' ]

@AccessControl.privilegedAssociations:  [ '_CreatedByUserContactCard', '_LastChangedByUserContactCard', '_CompletedByUserContactCard' ]

@Consumption.semanticObject: 'QualityTask'

@Metadata.allowExtensions: true

define view C_QualityTaskProcess as select from I_QualityTaskTP 
//=== associations to other QM views

    association [0..1] to C_QltyTskProcProcsrNotes      as _QltyTskProcProcsrNotes        on $projection.QualityTaskInternalId   = _QltyTskProcProcsrNotes.QualityTaskInternalId
                                                                                         and $projection.MasterLanguage          = _QltyTskProcProcsrNotes.Language
                                                                                         and _QltyTskProcProcsrNotes.ItemCounter = 1

    association [0..1] to C_QltyTaskDetailedDescription as _QltyTaskDetailedDescription   on $projection.QualityTaskInternalId        = _QltyTaskDetailedDescription.QualityTaskInternalId
                                                                                         and $projection.MasterLanguage               = _QltyTaskDetailedDescription.Language
                                                                                         and _QltyTaskDetailedDescription.ItemCounter = 2                                                                                    

    association [0..1] to C_QltyTskProcFllwActnSglParam as _QltyTskProcFllwActnSglParam   on $projection.QualityTaskInternalId        = _QltyTskProcFllwActnSglParam.QualityTaskInternalId
                                                                                         and _QltyTskProcFllwActnSglParam.ItemCounter = 1
                                                                                         
    association [0..*] to C_QltyTskProcFllwActnTblParam as _QltyTskProcFllwActnTblParam   on $projection.QualityTaskInternalId        = _QltyTskProcFllwActnTblParam.QualityTaskInternalId                                                                                         
                                                                                         
//  Workaround for auto-update of status text after status change action execution 

//    association [0..*] to I_QualityTaskStatusText       as _QualityTaskStatusText         on $projection.QualityTaskLifecycleStatus = _QualityTaskStatusText.QualityTaskLifecycleStatus


    association [1..1] to C_QualityTaskProcessCalc      as _QualityTaskProcessCalc        on $projection.QualityTaskInternalId = _QualityTaskProcessCalc.QualityTaskInternalId 

    association [0..1] to C_QltyTaskProcessDefectInfo   as _QltyTaskProcessDefectInfo     on $projection.DefectInternalID      = _QltyTaskProcessDefectInfo.DefectInternalID

    association [0..1] to C_QltyTaskProbSolvingProcInfo as _QltyTaskProbSolvingProcInfo   on  $projection.ProbSolvingProc       = _QltyTaskProbSolvingProcInfo.ProbSolvingProc
                                                                                          and $projection.ProbSolvingProcStp    = _QltyTaskProbSolvingProcInfo.ProbSolvingProcStp

{

//=== Key Fields

    key QualityTaskInternalId,
 
 //=== Common Fields

        @ObjectModel.readOnly: true
        QualityTask,
        QualityTaskOrigin,
        QualityTaskType,
        @ObjectModel.mandatory: true
        QualityTaskText,
        @Consumption.valueHelpDefinition: [{ entity: {name: 'I_QltyBPWithUserStdVH', element: 'BusinessPartner' } }]
        QualityTaskProcessor,      
        @Consumption.valueHelpDefinition: [ 
        { entity:  { name:    'I_QualityTaskStatus',
                     element: 'QualityTaskLifecycleStatus' }
        }]
        QualityTaskLifecycleStatus,
        @Consumption.filter.hidden: true
        QualityTaskArchivingStatus,
        MasterLanguage,
        
        //UX Inc

        @Consumption.filter: { selectionType: #INTERVAL }
        NotifTaskPlannedEndDate,
        
        @Consumption.filter.hidden: true
        NotifTaskPlannedEndTime,
        
        @ObjectModel.readOnly: true
        //UX Inc

        @Consumption.filter: { selectionType: #INTERVAL }
        NotifTaskCompletionDate,

        NotifTaskCompletionTime,
        @ObjectModel.readOnly: true
        NotifTaskCompletedByUser,
        @Consumption.filter.hidden: true
        NotifTaskTimeZone,
        
//=== Code

        @Consumption.filter.hidden: true
        QualityTaskCodeCatalog,  
        @Consumption.valueHelpDefinition: [ 
        { entity:  { name:    'I_QltyTskCodeGroupStdVH',
                     element: 'QualityTaskCodeGroup' }
        }]      
        QualityTaskCodeGroup,  
         @Consumption.valueHelpDefinition: [ 
        { entity:  { name:    'I_QltyTskCodeStdVH',
                     element: 'QualityTaskCode' },
          additionalBinding: [{ localElement: 'QualityTaskCodeGroup',
                                element: 'QualityTaskCodeGroup' }]
        }]      
        QualityTaskCode,
 
 //=== Follow-Up Action

        @Consumption.valueHelpDefinition: [
            { entity: { name: 'I_QltyTaskFollowUpActionVH', element: 'QltyTaskFollowUpAction'} }
        ]
        QltyTaskFollowUpAction, 
        QltyTaskFllwUpActionSts,
        @ObjectModel.virtualElement: true
        @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_D_QT_SET_FOA_CONFIG'
        QltyTskFllwUpActnConfignVal,
               
//=== Administrative Data

        ChangedDateTime,
        
        //UX Inc

        @Consumption.filter: { selectionType: #INTERVAL }
        CreationDate,
        
        CreationTime,
        @ObjectModel.foreignKey.association: [ { exclude } ] 
        //we suppress the foreignKey relation. the field is used as selected fields and therefore it seems that Fiori Elements tries to fetch the metadata of the corresponding entity type which fails because access is privileged only. 

        //suppressing the foreignKey relation avoids this error

        CreatedByUser,     
        
        //UX Inc

        @Consumption.filter: { selectionType: #INTERVAL }
        LastChangeDate,
        
        @Consumption.filter.hidden: true
        LastChangeTime,
        LastChangedByUser,
        
        //UX Inc

        @Consumption.filter.hidden: true
        QltyTskProcgIsCtrldByTskOrigin,
        
//=== Reference Object Fields

        DefectInternalID,
        
        ProbSolvingProc,
        ProbSolvingProcStp,
        ProbSolvingProcCause,

////====Time Recording for Task 

       @Consumption.filter.hidden: true
       @EndUserText.label: 'Time Effort' 
       @Semantics.quantity.unitOfMeasure: 'QltyTaskTimeBasedEffortUoM'     
       QltyTaskTimeBasedEffort,

       @Consumption.filter.hidden: true
       @Consumption.valueHelpDefinition: [{ entity: {name: 'C_QltyTskProcTimeUnitVH', element: 'UnitOfMeasure' } }] 
        QltyTaskTimeBasedEffortUoM,      
         
       // the Defect will be directly extracted out of the Defect Internal Id to avoid a join

       /*
       @Consumption.filter.hidden: true
       @ObjectModel.readOnly: true
       cast( substring(DefectInternalID,2,11) as qdefectid preserving type ) as Defect,*/
                      
//=== Expose associations

        @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
        @Consumption.filter.hidden: true
        _QltyTskProcProcsrNotes,
        @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
        @Consumption.filter.hidden: true
        _QltyTaskDetailedDescription,
        @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
        @Consumption.filter.hidden: true
        _QltyTskProcFllwActnSglParam,
        @ObjectModel.association.type:  [ #TO_COMPOSITION_CHILD ]
        @Consumption.filter.hidden: true
        _QltyTskProcFllwActnTblParam,
        @Consumption.filter.hidden: true
        _QualityTaskProcessor,
        @Consumption.filter.hidden: true
        _QualityTaskStatus,       
        @Consumption.filter.hidden: true
        _QltyTaskArchivingStatus,
        @Consumption.filter.hidden: true
        _CreatedByUserContactCard,
        @Consumption.filter.hidden: true
        _CompletedByUserContactCard,
        @Consumption.filter.hidden: true
        _LastChangedByUserContactCard,
        @Consumption.filter.hidden: true
        _QaulityTaskTimeZone,
        @Consumption.filter.hidden: true
        _QltyTskCodeGroup,
        @Consumption.filter.hidden: true
        _QltyTskCode,
        @Consumption.filter.hidden: true
        _QltyTaskFollowUpAction,
        @Consumption.filter.hidden: true
        _QltyTaskFllwUpActionSts,
        @Consumption.filter.hidden: true
        _QualityTaskProcessCalc,

//        @Consumption.filter.hidden: true //--> Allow filter in general, but annotate each field in the target with 'filter.hidden: true' which shall not be used as filter field

        _QltyTaskProcessDefectInfo,
//        @Consumption.filter.hidden: true //--> Allow filter in general, but annotate each field in the target with 'filter.hidden: true' which shall not be used as filter field

        _QltyTaskProbSolvingProcInfo
        
        
//      Workaround for auto-update of status text after status change action execution

//        @Consumption.filter.hidden: true

//        _QualityTaskStatusText


} where IsDeleted <> 'X'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_QUALITYTASKTP"
],
"ASSOCIATED":
[
"C_QLTYTASKDETAILEDDESCRIPTION",
"C_QLTYTASKPROBSOLVINGPROCINFO",
"C_QLTYTASKPROCESSDEFECTINFO",
"C_QLTYTSKPROCFLLWACTNSGLPARAM",
"C_QLTYTSKPROCFLLWACTNTBLPARAM",
"C_QLTYTSKPROCPROCSRNOTES",
"C_QUALITYTASKPROCESSCALC",
"I_QLTYBPWITHUSER",
"I_QLTYTASKARCHIVINGSTATUS",
"I_QLTYTASKFLLWUPACTIONSTS",
"I_QLTYTASKFOLLOWUPACTION",
"I_QLTYTSKCODE",
"I_QLTYTSKCODEGROUP",
"I_QUALITYTASKSTATUS",
"I_TIMEZONE",
"I_USERCONTACTCARD"
],
"BASE":
[
"I_QUALITYTASKTP"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/