C_MaintTaskListOperationDEX
Maintenance Task List Operation
C_MaintTaskListOperationDEX is a Consumption CDS View that provides data about "Maintenance Task List Operation" in SAP S/4HANA. It reads from 2 data sources (I_BOOSqncOperationAssgmtChgSt, I_BillOfOperationsOpBasic) and exposes 62 fields with key fields TaskListType, TaskListGroup, TaskListOperationInternalId, BOOOpInternalVersionCounter. It has 2 associations to related views. Part of development package VDM_EAM_TASKLIST.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_BOOSqncOperationAssgmtChgSt | plas | inner |
| I_BillOfOperationsOpBasic | TaskListOpBasic | from |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | C_MaintenanceTaskListDEX | _MaintenanceTaskList | _MaintenanceTaskList.TaskListType = $projection.TaskListType and _MaintenanceTaskList.TaskListGroup = $projection.TaskListGroup and _MaintenanceTaskList.TaskListGroupCounter = $projection.TaskListGroupCounter and _MaintenanceTaskList.TaskListVersionCounter = $projection.BOOOpInternalVersionCounter |
| [0..1] | I_MaintenanceTaskListType | _TaskListType | _TaskListType.TaskListType = $projection.TaskListType |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #MANDATORY | view | |
| EndUserText.label | Maintenance Task List Operation | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ObjectModel.sapObjectNodeType.name | MaintenanceTaskListOperation | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #B | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.modelingPattern | #ANALYTICAL_FACT | view | |
| Analytics.dataExtraction.enabled | true | view |
Fields (62)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | TaskListType | I_BillOfOperationsOpBasic | BillOfOperationsType | |
| KEY | TaskListGroup | I_BillOfOperationsOpBasic | BillOfOperationsGroup | |
| KEY | TaskListOperationInternalId | I_BillOfOperationsOpBasic | BOOOperationInternalID | |
| KEY | BOOOpInternalVersionCounter | I_BillOfOperationsOpBasic | BOOOpInternalVersionCounter | |
| TaskListGroupCounter | I_BOOSqncOperationAssgmtChgSt | BillOfOperationsVariant | ||
| TaskListSequence | I_BOOSqncOperationAssgmtChgSt | BillOfOperationsSequence | ||
| BOOOperationInternalID | I_BOOSqncOperationAssgmtChgSt | BOOOperationInternalID | ||
| TaskListOpBOMItmIntVersCounter | I_BOOSqncOperationAssgmtChgSt | BOOSqncOpAssgmtIntVersionCntr | BOM Item Internal Version Counter | |
| SuperiorOperationInternalID | I_BillOfOperationsOpBasic | SuperiorOperationInternalID | ||
| CreationDate | I_BOOSqncOperationAssgmtChgSt | CreationDate | ||
| LastChangeDate | I_BOOSqncOperationAssgmtChgSt | LastChangeDate | ||
| OperationText | I_BillOfOperationsOpBasic | OperationText | ||
| OperationControlProfile | I_BillOfOperationsOpBasic | OperationControlProfile | ||
| WorkCenterInternalID | I_BillOfOperationsOpBasic | WorkCenterInternalID | ||
| WorkCenterTypeCode | I_BillOfOperationsOpBasic | WorkCenterTypeCode | ||
| Plant | I_BillOfOperationsOpBasic | Plant | ||
| OpPlannedWorkQuantity | I_BillOfOperationsOpBasic | OpPlannedWorkQuantity | ||
| OpWorkQuantityUnit | I_BillOfOperationsOpBasic | OpWorkQuantityUnit | ||
| ChangeNumber | I_BillOfOperationsOpBasic | ChangeNumber | ||
| OperationStandardTextCode | I_BillOfOperationsOpBasic | OperationStandardTextCode | ||
| PurchasingInfoRecdAddlGrpgName | I_BillOfOperationsOpBasic | PurchasingInfoRecdAddlGrpgName | ||
| OpExternalProcessingPrice | I_BillOfOperationsOpBasic | OpExternalProcessingPrice | ||
| NumberOfOperationPriceUnits | I_BillOfOperationsOpBasic | NumberOfOperationPriceUnits | ||
| OpExternalProcessingCurrency | I_BillOfOperationsOpBasic | OpExternalProcessingCurrency | ||
| PurchasingInfoRecord | I_BillOfOperationsOpBasic | PurchasingInfoRecord | ||
| Supplier | I_BillOfOperationsOpBasic | Supplier | ||
| PurchaseContract | I_BillOfOperationsOpBasic | PurchaseContract | ||
| PurchaseContractItem | I_BillOfOperationsOpBasic | PurchaseContractItem | ||
| OperationStandardDuration | I_BillOfOperationsOpBasic | OperationStandardDuration | ||
| OperationStandardDurationUnit | I_BillOfOperationsOpBasic | OperationStandardDurationUnit | ||
| NumberOfCapacities | I_BillOfOperationsOpBasic | NumberOfCapacities | ||
| OperationSystemCondition | I_BillOfOperationsOpBasic | OperationSystemCondition | ||
| CostCtrActivityType | I_BillOfOperationsOpBasic | CostCtrActivityType | ||
| OperationCalculationControl | I_BillOfOperationsOpBasic | OperationCalculationControl | ||
| Assembly | I_BillOfOperationsOpBasic | Assembly | ||
| PurchaseOrderQty | I_BillOfOperationsOpBasic | PurchaseOrderQty | ||
| PurchaseOrderQuantityUnit | I_BillOfOperationsOpBasic | PurchaseOrderQuantityUnit | ||
| FunctionalLocation | ||||
| Equipment | I_BillOfOperationsOpBasic | Equipment | ||
| PurchasingInfoRecordCategory | I_BillOfOperationsOpBasic | PurchasingInfoRecordCategory | ||
| PurchasingOrganization | I_BillOfOperationsOpBasic | PurchasingOrganization | ||
| IsDeletedendasIsDeleted | Is Deleted | |||
| IsImplicitlyDeleted | I_BOOSqncOperationAssgmtChgSt | IsImplicitlyDeleted | Is Implicitly Deleted | |
| OperationUnit | I_BillOfOperationsOpBasic | OperationUnit | ||
| OpQtyToBaseQtyDnmntr | I_BillOfOperationsOpBasic | OpQtyToBaseQtyDnmntr | ||
| OpQtyToBaseQtyNmrtr | I_BillOfOperationsOpBasic | OpQtyToBaseQtyNmrtr | ||
| OperationReferenceQuantity | I_BillOfOperationsOpBasic | OperationReferenceQuantity | ||
| PlannedDeliveryDuration | I_BillOfOperationsOpBasic | PlannedDeliveryDuration | ||
| CostElement | I_BillOfOperationsOpBasic | CostElement | ||
| PurchasingGroup | I_BillOfOperationsOpBasic | PurchasingGroup | ||
| MaterialGroup | I_BillOfOperationsOpBasic | MaterialGroup | ||
| OperationCostingRelevancyType | I_BillOfOperationsOpBasic | OperationCostingRelevancyType | ||
| MinimumDuration | I_BillOfOperationsOpBasic | MinimumDuration | ||
| MinimumDurationUnit | I_BillOfOperationsOpBasic | MinimumDurationUnit | ||
| OperationWorkPercent | I_BillOfOperationsOpBasic | OperationWorkPercent | ||
| CapRqmtsDistributionFunction | I_BillOfOperationsOpBasic | CapRqmtsDistributionFunction | ||
| CompanyCode | I_BillOfOperationsOpBasic | CompanyCode | ||
| FactoryCalendar | I_BillOfOperationsOpBasic | FactoryCalendar | ||
| CapacityRequirementDistrKey | I_BillOfOperationsOpBasic | CapacityRequirementDistrKey | ||
| MaintOperationExecStageCode | I_BillOfOperationsOpBasic | MaintOperationExecStageCode | ||
| _MaintenanceTaskList | _MaintenanceTaskList | |||
| _TaskListType | _TaskListType |
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Maintenance Task List Operation'
@Metadata.ignorePropagatedAnnotations: true
@AccessControl.personalData.blocking: #REQUIRED
@VDM.viewType: #CONSUMPTION
@ObjectModel: {
sapObjectNodeType.name: 'MaintenanceTaskListOperation',
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #B,
sizeCategory: #L
},
supportedCapabilities: [ #EXTRACTION_DATA_SOURCE ],
modelingPattern:#ANALYTICAL_FACT
}
@Analytics: {
dataExtraction: {
enabled: true,
delta.changeDataCapture: {
mapping: [
{
table: 'plpo', role: #MAIN,
viewElement: [ 'TaskListType', 'TaskListGroup', 'TaskListOperationInternalId', 'BOOOpInternalVersionCounter' ],
tableElement: [ 'plnty', 'plnnr', 'plnkn', 'zaehl' ]
},
{
table: 'plas', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: [ 'TaskListType', 'TaskListGroup' ],
tableElement: [ 'plnty', 'plnnr' ]
}
]
}
}
}
define view entity C_MaintTaskListOperationDEX
as select from I_BillOfOperationsOpBasic as TaskListOpBasic
inner join I_BOOSqncOperationAssgmtChgSt as plas on TaskListOpBasic.BillOfOperationsType = plas.BillOfOperationsType
and TaskListOpBasic.BillOfOperationsGroup = plas.BillOfOperationsGroup
and (
( // Operation
TaskListOpBasic.BOOOperationInternalID = plas.BOOOperationInternalID
and TaskListOpBasic.SuperiorOperationInternalID = '00000000'
)
or( // Sub-Operation
TaskListOpBasic.SuperiorOperationInternalID = plas.BOOOperationInternalID
)
)
and plas.IsDeleted = '' // N_3638581
left outer to one join I_BillOfOperationsOpBasic as superior on TaskListOpBasic.BillOfOperationsType = superior.BillOfOperationsType
and TaskListOpBasic.BillOfOperationsGroup = superior.BillOfOperationsGroup
and TaskListOpBasic.SuperiorOperationInternalID = superior.BOOOperationInternalID
association [1..1] to C_MaintenanceTaskListDEX as _MaintenanceTaskList on _MaintenanceTaskList.TaskListType = $projection.TaskListType
and _MaintenanceTaskList.TaskListGroup = $projection.TaskListGroup
and _MaintenanceTaskList.TaskListGroupCounter = $projection.TaskListGroupCounter
and _MaintenanceTaskList.TaskListVersionCounter = $projection.BOOOpInternalVersionCounter
association [0..1] to I_MaintenanceTaskListType as _TaskListType on _TaskListType.TaskListType = $projection.TaskListType
{
/* start suppress warning shlporigin_not_inherited */
key TaskListOpBasic.BillOfOperationsType as TaskListType,
key TaskListOpBasic.BillOfOperationsGroup as TaskListGroup,
key TaskListOpBasic.BOOOperationInternalID as TaskListOperationInternalId,
key TaskListOpBasic.BOOOpInternalVersionCounter as BOOOpInternalVersionCounter,
plas.BillOfOperationsVariant as TaskListGroupCounter,
plas.BillOfOperationsSequence as TaskListSequence,
plas.BOOOperationInternalID as BOOOperationInternalID,
@EndUserText.label: 'BOM Item Internal Version Counter'
plas.BOOSqncOpAssgmtIntVersionCntr as TaskListOpBOMItmIntVersCounter,
TaskListOpBasic.SuperiorOperationInternalID,
plas.CreationDate,
@Semantics.systemDate.lastChangedAt: true
plas.LastChangeDate,
@EndUserText.label: 'Maintenance Task List Operation'
case when superior.Operation_2 is not null
then superior.Operation_2
else TaskListOpBasic.Operation_2
end as MaintenanceTaskListOperation,
@EndUserText.label: 'Maintenance Task List Suboperation'
case when TaskListOpBasic.SuperiorOperationInternalID <> '00000000'
then TaskListOpBasic.Operation_2
else ''
end as MaintTaskListSubOperation,
@Semantics.text:true
TaskListOpBasic.OperationText,
TaskListOpBasic.OperationControlProfile,
TaskListOpBasic.WorkCenterInternalID,
TaskListOpBasic.WorkCenterTypeCode,
TaskListOpBasic.Plant,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit'
TaskListOpBasic.OpPlannedWorkQuantity,
TaskListOpBasic.OpWorkQuantityUnit,
TaskListOpBasic.ChangeNumber,
@Semantics.businessDate.from: true
cast ( case when plas.IsDeleted = 'X' then plas.ValidityStartDate
else TaskListOpBasic.ValidityStartDate
end as vdm_v_validity_start_date preserving type ) as ValidityStartDate,
@Semantics.businessDate.to: true
cast ( case when plas.ValidityEndDate <= TaskListOpBasic.ValidityEndDate then plas.ValidityEndDate
else TaskListOpBasic.ValidityEndDate
end as vdm_v_validity_end_date preserving type ) as ValidityEndDate,
TaskListOpBasic.OperationStandardTextCode,
TaskListOpBasic.PurchasingInfoRecdAddlGrpgName,
@Semantics.amount.currencyCode: 'OpExternalProcessingCurrency'
TaskListOpBasic.OpExternalProcessingPrice,
TaskListOpBasic.NumberOfOperationPriceUnits,
TaskListOpBasic.OpExternalProcessingCurrency,
TaskListOpBasic.PurchasingInfoRecord,
TaskListOpBasic.Supplier,
TaskListOpBasic.PurchaseContract,
TaskListOpBasic.PurchaseContractItem,
@Semantics.quantity.unitOfMeasure: 'OperationStandardDurationUnit'
TaskListOpBasic.OperationStandardDuration,
TaskListOpBasic.OperationStandardDurationUnit,
TaskListOpBasic.NumberOfCapacities,
TaskListOpBasic.OperationSystemCondition,
TaskListOpBasic.CostCtrActivityType,
TaskListOpBasic.OperationCalculationControl,
TaskListOpBasic.Assembly,
@Semantics.quantity.unitOfMeasure: 'PurchaseOrderQuantityUnit'
TaskListOpBasic.PurchaseOrderQty,
TaskListOpBasic.PurchaseOrderQuantityUnit,
cast( TaskListOpBasic.FunctionalLocation as ps_s4_tplnr preserving type ) as FunctionalLocation,
TaskListOpBasic.Equipment,
TaskListOpBasic.PurchasingInfoRecordCategory,
TaskListOpBasic.PurchasingOrganization,
@EndUserText.label: 'Is Deleted'
case when plas.IsDeleted = 'X'
then plas.IsDeleted
else TaskListOpBasic.IsDeleted
end
as IsDeleted,
@EndUserText.label: 'Is Implicitly Deleted'
plas.IsImplicitlyDeleted,
TaskListOpBasic.OperationUnit,
TaskListOpBasic.OpQtyToBaseQtyDnmntr,
TaskListOpBasic.OpQtyToBaseQtyNmrtr,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
TaskListOpBasic.OperationReferenceQuantity,
TaskListOpBasic.PlannedDeliveryDuration,
TaskListOpBasic.CostElement,
TaskListOpBasic.PurchasingGroup,
TaskListOpBasic.MaterialGroup,
TaskListOpBasic.OperationCostingRelevancyType,
@Semantics.quantity.unitOfMeasure: 'MinimumDurationUnit'
TaskListOpBasic.MinimumDuration,
TaskListOpBasic.MinimumDurationUnit,
TaskListOpBasic.OperationWorkPercent,
TaskListOpBasic.CapRqmtsDistributionFunction,
TaskListOpBasic.CompanyCode,
TaskListOpBasic.FactoryCalendar,
TaskListOpBasic.CapacityRequirementDistrKey,
TaskListOpBasic.MaintOperationExecStageCode,
/* end suppress warning shlporigin_not_inherited */
_MaintenanceTaskList,
_TaskListType
}
where
(
TaskListOpBasic.BillOfOperationsType = 'E'
or TaskListOpBasic.BillOfOperationsType = 'A'
or TaskListOpBasic.BillOfOperationsType = 'T'
)
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA