I_QUALITYTASK
Quality Task
I_QUALITYTASK is a CDS View in S/4HANA. Quality Task. It contains 53 fields. 6 CDS views read from this table.
CDS Views using this table (6)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| C_DefectTaskFDP | view_entity | from | CONSUMPTION | FDP view for QM Defect Task |
| ESH_N_QUALITYTASK | view | from | Anchor view -QUALITYTASK | |
| I_QualityTaskTP | view | from | TRANSACTIONAL | Quality Task |
| P_DefectAffcdObjActnParam | view | inner | COMPOSITE | Relation Quality Task to Affected Object |
| R_QualityTaskTP | view_entity | from | TRANSACTIONAL | Quality Task |
| SHSM_IQLTYTASKID | view_entity | from | Quality Task |
Fields (53)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | DefectInternalID | DefectInternalID | 4 |
| KEY | QualityTaskInternalId | QualityTaskInternalId | 5 |
| _CompletedByUserContactCard | _CompletedByUserContactCard | 2 | |
| _CreatedByUserContactCard | _CreatedByUserContactCard | 2 | |
| _Defect | _Defect | 1 | |
| _LastChangedByUserContactCard | _LastChangedByUserContactCard | 2 | |
| _PredecessorQualityTask | _PredecessorQualityTask | 2 | |
| _QltyTaskArchivingStatus | _QltyTaskArchivingStatus | 2 | |
| _QltyTaskFllwUpActionSts | _QltyTaskFllwUpActionSts | 2 | |
| _QltyTaskFollowUpAction | _QltyTaskFollowUpAction | 2 | |
| _QltyTskCode | _QltyTskCode | 2 | |
| _QltyTskCodeGroup | _QltyTskCodeGroup | 2 | |
| _QltyTskProcTimeUnit | _QltyTskProcTimeUnit | 2 | |
| _QualityTaskOrigin | _QualityTaskOrigin | 2 | |
| _QualityTaskProcessor | _QualityTaskProcessor | 2 | |
| _QualityTaskStatus | _QualityTaskStatus | 2 | |
| _QualityTaskType | _QualityTaskType | 1 | |
| ChangedDateTime | ChangedDateTime | 4 | |
| CreatedByUser | CreatedByUser | 3 | |
| CreationDate | CreationDate | 1 | |
| CreationTime | CreationTime | 1 | |
| IsDeleted | IsDeleted | 3 | |
| LastChangeDate | LastChangeDate | 1 | |
| LastChangedByUser | LastChangedByUser | 3 | |
| LastChangeTime | LastChangeTime | 1 | |
| MasterLanguage | MasterLanguage | 1 | |
| NotifTaskCompletedByUser | NotifTaskCompletedByUser | 3 | |
| NotifTaskCompletionDate | NotifTaskCompletionDate | 1 | |
| NotifTaskCompletionTime | NotifTaskCompletionTime | 1 | |
| NotifTaskPlannedEndDate | NotifTaskPlannedEndDate | 1 | |
| NotifTaskPlannedEndTime | NotifTaskPlannedEndTime | 1 | |
| NotifTaskResubmissionDate | NotifTaskResubmissionDate | 1 | |
| NotifTaskResubmissionTime | NotifTaskResubmissionTime | 1 | |
| NotifTaskTimeZone | NotifTaskTimeZone | 1 | |
| PredecessorQltyTaskIntNumber | PredecessorQltyTaskIntNumber | 2 | |
| ProbSolvingProc | ProbSolvingProc | 2 | |
| ProbSolvingProcCause | ProbSolvingProcCause | 2 | |
| ProbSolvingProcStp | ProbSolvingProcStp | 2 | |
| QltyTaskFllwUpActionSts | QltyTaskFllwUpActionSts | 4 | |
| QltyTaskFollowUpAction | QltyTaskFollowUpAction | 4 | |
| QltyTaskTimeBasedEffort | QltyTaskTimeBasedEffort | 2 | |
| QltyTaskTimeBasedEffortUoM | QltyTaskTimeBasedEffortUoM | 2 | |
| QltyTskProcgIsCtrldByTskOrigin | QltyTskProcgIsCtrldByTskOrigin | 2 | |
| QualityTask | QualityTask | 5 | |
| QualityTaskArchivingStatus | QualityTaskArchivingStatus | 3 | |
| QualityTaskCode | QualityTaskCode | 3 | |
| QualityTaskCodeCatalog | QualityTaskCodeCatalog | 3 | |
| QualityTaskCodeGroup | QualityTaskCodeGroup | 3 | |
| QualityTaskLifecycleStatus | QualityTaskLifecycleStatus | 3 | |
| QualityTaskOrigin | QualityTaskOrigin | 4 | |
| QualityTaskProcessor | QualityTaskProcessor | 3 | |
| QualityTaskText | QualityTaskText | 4 | |
| QualityTaskType | QualityTaskType | 4 |
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@EndUserText.label: 'Quality Task'
@Analytics.dataCategory: #DIMENSION
@Analytics.technicalName: 'IQLTYTSK'
@VDM: {
viewType: #BASIC,
lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@ObjectModel.supportedCapabilities:
[ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #ANALYTICAL_DIMENSION ]
@ObjectModel.modelingPattern: #NONE
@ObjectModel: {
semanticKey: [ 'QualityTask' ],
representativeKey: 'QualityTaskInternalId',
usageType: {
dataClass: #TRANSACTIONAL,
sizeCategory: #L,
serviceQuality: #A }
}
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ] } */
define view entity I_QualityTask as select from qmsm
//=== BO Aggregations
association [0..*] to I_QltyTaskFllwUpActionParam as _QltyTaskFllwUpActionParam on $projection.QualityTaskInternalId = _QltyTaskFllwUpActionParam.QualityTaskInternalId
//=== Assocation to QM specific views
association [0..1] to I_Defect as _Defect on $projection.DefectInternalID = _Defect.DefectInternalID
association [1..1] to I_QltyTaskOrigin as _QualityTaskOrigin on $projection.QualityTaskOrigin = _QualityTaskOrigin.QualityTaskOrigin
association [0..1] to I_QltyBPWithUser as _QualityTaskProcessor on $projection.QualityTaskProcessor = _QualityTaskProcessor.BusinessPartner
association [0..1] to I_Inspectioncatalog as _QualityTaskCodeCatalog on $projection.QualityTaskCodeCatalog = _QualityTaskCodeCatalog.InspectionCatalog
association [0..1] to I_QltyTskCodeGroup as _QltyTskCodeGroup on $projection.QualityTaskCodeGroup = _QltyTskCodeGroup.QualityTaskCodeGroup
association [0..1] to I_QltyTskCode as _QltyTskCode on $projection.QualityTaskCodeGroup = _QltyTskCode.QualityTaskCodeGroup and
$projection.QualityTaskCode = _QltyTskCode.QualityTaskCode
association [0..1] to I_QltyTaskFollowUpAction as _QltyTaskFollowUpAction on $projection.QltyTaskFollowUpAction = _QltyTaskFollowUpAction.QltyTaskFollowUpAction
association [1..1] to I_QualityTaskType as _QualityTaskType on $projection.QualityTaskType = _QualityTaskType.QualityTaskType
association [1..1] to I_QualityTask as _PredecessorQualityTask on $projection.PredecessorQltyTaskIntNumber = _PredecessorQualityTask.QualityTaskInternalId
//=== Problem Solving Process
association [0..1] to I_ProbSolvingProc as _ProbSolvingProc on $projection.ProbSolvingProc = _ProbSolvingProc.ProbSolvingProc
association [0..1] to I_ProbSolvingProcStp as _ProbSolvingProcStp on $projection.ProbSolvingProc = _ProbSolvingProcStp.ProbSolvingProc and
$projection.ProbSolvingProcStp = _ProbSolvingProcStp.ProbSolvingProcStp
association [0..1] to I_ProbSolvingProcCause as _ProbSolvingProcCause on $projection.ProbSolvingProc = _ProbSolvingProcCause.ProbSolvingProc and
$projection.ProbSolvingProcCause = _ProbSolvingProcCause.ProbSolvingProcCause
//=== Contact Card
association [0..1] to I_UserContactCard as _CreatedByUserContactCard on $projection.CreatedByUser = _CreatedByUserContactCard.ContactCardID
association [0..1] to I_UserContactCard as _CompletedByUserContactCard on $projection.NotifTaskCompletedByUser = _CompletedByUserContactCard.ContactCardID
association [0..1] to I_UserContactCard as _LastChangedByUserContactCard on $projection.LastChangedByUser = _LastChangedByUserContactCard.ContactCardID
//=== Status
association [1..1] to I_QualityTaskStatus as _QualityTaskStatus on $projection.QualityTaskLifecycleStatus = _QualityTaskStatus.QualityTaskLifecycleStatus
association [1..1] to I_QltyTaskArchivingStatus as _QltyTaskArchivingStatus on $projection.QualityTaskArchivingStatus = _QltyTaskArchivingStatus.QualityTaskArchivingStatus
association [0..1] to I_QltyTaskFllwUpActionSts as _QltyTaskFllwUpActionSts on $projection.QltyTaskFllwUpActionSts = _QltyTaskFllwUpActionSts.QltyTaskFllwUpActionSts
////=== Unit
association [0..1] to I_UnitOfMeasure as _QltyTskProcTimeUnit on $projection.QltyTaskTimeBasedEffortUoM = _QltyTskProcTimeUnit.UnitOfMeasure and
_QltyTskProcTimeUnit.UnitOfMeasureDimension = 'TIME'
//=== Time Zone
/*association [0..1] to I_TimeZone as _QaulityTaskTimeZone on $projection.NotifTaskTimeZone = _QaulityTaskTimeZone.TimeZoneID*/
//=== Extension
association [1..1] to E_NotificationTask as _Extension on $projection.QualityTaskInternalId = _Extension.Notification
and _Extension.NotificationTask = '0000'
{
//=== Key Fields
key cast( qmsm.qmnum as qtaskinternalid preserving type ) as QualityTaskInternalId,
@ObjectModel:{ text.element: [ 'QualityTaskText' ] }
cast( substring(qmsm.qmnum,2,11) as qtaskid preserving type ) as QualityTask,
//=== Common Fields
@ObjectModel.foreignKey.association: '_QualityTaskOrigin'
qmsm.taskorigin as QualityTaskOrigin,
@ObjectModel.foreignKey.association: '_QualityTaskType'
qmsm.tasktype as QualityTaskType,
@Semantics.text: true
cast( qmsm.matxt as vdm_qtaskdesc preserving type ) as QualityTaskText,
@Semantics.booleanIndicator: true
qmsm.kzloesch as IsDeleted,
@ObjectModel.foreignKey.association: '_QualityTaskProcessor'
qmsm.processor as QualityTaskProcessor,
qmsm.kzmla as MasterLanguage,
//=== Code
@ObjectModel.foreignKey.association: '_QualityTaskCodeCatalog'
qmsm.mnkat as QualityTaskCodeCatalog,
@ObjectModel.foreignKey.association: '_QltyTskCodeGroup'
cast( qmsm.mngrp as vdm_qtaskcodegrp preserving type ) as QualityTaskCodeGroup,
@ObjectModel.foreignKey.association: '_QltyTskCode'
qmsm.mncod as QualityTaskCode,
//== Dates & Times
//@ObjectModel.foreignKey.association: '_QaulityTaskTimeZone'
qmsm.tzonsm as NotifTaskTimeZone,
cast( qmsm.peter as vdm_qtaskplannedenddate preserving type ) as NotifTaskPlannedEndDate,
cast( qmsm.petur as vdm_qtaskplannedendtime preserving type ) as NotifTaskPlannedEndTime,
cast( qmsm.erldat as vdm_qtaskcompletiondate preserving type ) as NotifTaskCompletionDate,
cast( qmsm.erlzeit as vdm_qtaskcompletiontime preserving type ) as NotifTaskCompletionTime,
qmsm.wdvdat as NotifTaskResubmissionDate,
qmsm.wdvzeit as NotifTaskResubmissionTime,
@ObjectModel.foreignKey.association: '_CompletedByUserContactCard'
cast( qmsm.erlnam as vdm_qtaskcompletedby preserving type ) as NotifTaskCompletedByUser,
//=== Reference Object Fields
@ObjectModel.foreignKey.association: '_Defect'
qmsm.defectinternalid as DefectInternalID,
@ObjectModel.foreignKey.association: '_ProbSolvingProc'
qmsm.probsolvingprocess as ProbSolvingProc,
@ObjectModel.foreignKey.association: '_ProbSolvingProcStp'
qmsm.probsolvingprocessstep as ProbSolvingProcStp,
@ObjectModel.foreignKey.association: '_ProbSolvingProcCause'
qmsm.prbobsolvproccause as ProbSolvingProcCause,
@ObjectModel.foreignKey.association: '_PredecessorQualityTask'
qmsm.prdcssrqtaskinternalid as PredecessorQltyTaskIntNumber,
//=== Follow-Up Action
@ObjectModel.foreignKey.association: '_QltyTaskFollowUpAction'
qmsm.folgeact as QltyTaskFollowUpAction,
//=== Status fields
@ObjectModel.foreignKey.association: '_QualityTaskStatus'
qmsm.statlcycle as QualityTaskLifecycleStatus,
@ObjectModel.foreignKey.association: '_QltyTaskArchivingStatus'
qmsm.statacycle as QualityTaskArchivingStatus,
@ObjectModel.foreignKey.association: '_QltyTaskFllwUpActionSts'
qmsm.statfoa as QltyTaskFllwUpActionSts,
//=== Administrative Data
@ObjectModel.foreignKey.association: '_CreatedByUserContactCard'
qmsm.ernam as CreatedByUser,
@Semantics.systemDate.createdAt: true
qmsm.erdat as CreationDate,
cast( qmsm.erzeit as vdm_qerstezeit preserving type ) as CreationTime,
qmsm.changeddatetime as ChangedDateTime,
@ObjectModel.foreignKey.association: '_LastChangedByUserContactCard'
qmsm.aenam as LastChangedByUser,
@Semantics.systemDate.lastChangedAt: true
qmsm.aedat as LastChangeDate,
cast( qmsm.aezeit as vdm_qaendezeit preserving type ) as LastChangeTime,
qmsm.taskiscontrolledbyorigin as QltyTskProcgIsCtrldByTskOrigin,
//====Time Recording for Task
@Semantics.quantity.unitOfMeasure: 'QltyTaskTimeBasedEffortUoM'
qmsm.timebasedeffort as QltyTaskTimeBasedEffort,
@ObjectModel.foreignKey.association: '_QltyTskProcTimeUnit'
qmsm.timebasedeffortuom as QltyTaskTimeBasedEffortUoM,
//=== Expose Associations
_QltyTaskFllwUpActionParam,
_QualityTaskType,
_Defect,
_QualityTaskOrigin,
_CreatedByUserContactCard,
_CompletedByUserContactCard,
_LastChangedByUserContactCard,
_QualityTaskProcessor,
_QualityTaskStatus,
_QltyTaskArchivingStatus,
/*_QaulityTaskTimeZone*/
_QltyTaskFollowUpAction,
_QltyTaskFllwUpActionSts,
_QualityTaskCodeCatalog,
_QltyTskCodeGroup,
_QltyTskCode,
_ProbSolvingProc,
_ProbSolvingProcStp,
_ProbSolvingProcCause,
_PredecessorQualityTask,
_QltyTskProcTimeUnit
} where qmsm.qmnum like '$%' // ABAP syntax: CP "$*"
and qmsm.manum = '0000'