C_ServiceOrderItemDEX
Data Extraction for Service Order
C_ServiceOrderItemDEX is a Consumption CDS View (Fact) that provides data about "Data Extraction for Service Order" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 147 fields with key fields ServiceObjectType, ServiceDocument, ServiceDocumentItem. It has 2 associations to related views. Part of development package CRMS4_ANALYTICS_DEX.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentItemEnhcd | ServiceOrderItem | from |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | E_ServiceDocumentItem | _ServiceDocItemExt | $projection.ServiceObjectType = _ServiceDocItemExt.ServiceCategory and $projection.ServiceDocument = _ServiceDocItemExt.ServiceOrderItem and $projection.ServiceDocumentItem = _ServiceDocItemExt.ServiceLineExternalID |
| [0..1] | E_ServiceDocument | _ServiceDocumentExt | $projection.ServiceObjectType = _ServiceDocumentExt.ServiceCategory and $projection.ServiceDocument = _ServiceDocumentExt.ServiceOrder |
Annotations (13)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Data Extraction for Service Order | view | |
| VDM.viewType | #CONSUMPTION | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| Analytics.dataCategory | #FACT | view | |
| Analytics.dataExtraction.enabled | true | view | |
| Analytics.technicalName | CSRVCORDITMDEX | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.representativeKey | ServiceDocumentItem | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.sapObjectNodeType.name | ServiceOrderItem | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (147)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ServiceObjectType | I_ServiceDocumentItemEnhcd | ServiceObjectType | |
| KEY | ServiceDocument | I_ServiceDocumentItemEnhcd | ServiceDocument | |
| KEY | ServiceDocumentItem | I_ServiceDocumentItemEnhcd | ServiceDocumentItem | |
| ServiceDocumentUUID | ServiceOrder | ServiceDocumentUUID | ||
| ServiceDocumentCharUUID | ServiceOrder | ServiceDocumentCharUUID | ||
| ServiceDocumentDescription | ServiceOrder | ServiceDocumentDescription | ||
| ServiceDocNetAmount | ServiceOrder | ServiceDocNetAmount | ||
| PurchaseOrderByCustomer | ServiceOrder | PurchaseOrderByCustomer | ||
| ServiceDocumentStatus | ServiceOrder | ServiceDocumentStatus | ||
| ServiceDocumentIsReleased | ServiceOrder | ServiceDocumentIsReleased | ||
| ServiceDocumentIsQuotation | ServiceOrder | ServiceDocumentIsQuotation | ||
| ServiceDocumentHasError | ServiceOrder | ServiceDocumentHasError | ||
| ServiceDocIsReleasedForBilling | ServiceOrder | ServiceDocIsReleasedForBilling | ||
| ServiceDocumentIsRejected | ServiceOrder | ServiceDocumentIsRejected | ||
| ServiceDocBillingStatus | ServiceOrder | ServiceDocBillingStatus | ||
| ServiceDocumentIsOpen | ServiceOrder | ServiceDocumentIsOpen | ||
| BusinessActivityCategory | ServiceOrder | BusinessActivityCategory | ||
| ServiceDocChangedDateTime | ServiceOrder | ServiceDocChangedDateTime | ||
| ServiceDocCreationDateTime | ServiceOrder | ServiceDocCreationDateTime | ||
| ServiceDocumentUrgency | ServiceOrder | ServiceDocumentUrgency | ||
| ServiceDocumentImpact | ServiceOrder | ServiceDocumentImpact | ||
| ServiceDocumentProblemCategory | ServiceOrder | ServiceDocumentProblemCategory | ||
| RecommendedServicePriority | ServiceOrder | RecommendedServicePriority | ||
| ServiceEscalationLevel | ServiceOrder | ServiceEscalationLevel | ||
| ServiceRisk | ServiceOrder | ServiceRisk | ||
| RequestedServiceStartDate | ServiceOrder | RequestedServiceStartDate | ||
| RequestedServiceEndDate | ServiceOrder | RequestedServiceEndDate | ||
| ServiceDocumentItemPriority | I_ServiceDocumentItemEnhcd | ServiceDocumentItemPriority | ||
| ServiceDocumentType | I_ServiceDocumentItemEnhcd | ServiceDocumentType | ||
| ServiceDocumentItemUUID | I_ServiceDocumentItemEnhcd | ServiceDocumentItemUUID | ||
| ServiceDocumentItemCharUUID | I_ServiceDocumentItemEnhcd | ServiceDocumentItemCharUUID | ||
| ServiceDocumentItemObjectType | I_ServiceDocumentItemEnhcd | ServiceDocumentItemObjectType | ||
| ParentServiceDocumentItemUUID | I_ServiceDocumentItemEnhcd | ParentServiceDocumentItemUUID | ||
| PostingDate | I_ServiceDocumentItemEnhcd | PostingDate | ||
| ProfitCenter | I_ServiceDocumentItemEnhcd | ProfitCenter | ||
| ControllingArea | I_ServiceDocumentItemEnhcd | ControllingArea | ||
| ProfitCenterDeterminationDate | I_ServiceDocumentItemEnhcd | ProfitCenterDeterminationDate | ||
| ServiceDocItemCategory | I_ServiceDocumentItemEnhcd | ServiceDocItemCategory | ||
| OriginallyRequestedProduct | I_ServiceDocumentItemEnhcd | OriginallyRequestedProduct | ||
| Product | I_ServiceDocumentItemEnhcd | Product | ||
| PlannedServiceStartDateTime | I_ServiceDocumentItemEnhcd | PlannedServiceStartDateTime | ||
| PlannedServiceEndDateTime | I_ServiceDocumentItemEnhcd | PlannedServiceEndDateTime | ||
| SrvcOrderConfirmationRelevance | I_ServiceDocumentItemEnhcd | SrvcOrderConfirmationRelevance | ||
| InvoiceAmountInInvoiceDocCrcy | I_ServiceDocumentItemEnhcd | InvoiceAmountInInvoiceDocCrcy | ||
| SrvcDocItmRequestedQuantity | I_ServiceDocumentItemEnhcd | SrvcDocItmRequestedQuantity | ||
| InvoiceQuantity | I_ServiceDocumentItemEnhcd | InvoiceQuantity | ||
| SrvcDocItmDeliveredQuantity | I_ServiceDocumentItemEnhcd | SrvcDocItmDeliveredQuantity | ||
| SrvcDocItmReleasedQuantity | I_ServiceDocumentItemEnhcd | SrvcDocItmReleasedQuantity | ||
| CumulativeConfirmedQuantity | I_ServiceDocumentItemEnhcd | CumulativeConfirmedQuantity | ||
| SrvcDocItmReldAmtInTransCrcy | I_ServiceDocumentItemEnhcd | SrvcDocItmReldAmtInTransCrcy | ||
| ServiceDocumentItemQuantity | I_ServiceDocumentItemEnhcd | ServiceDocumentItemQuantity | ||
| SrvcDocItmOrdToBaseQtyNmrtr | I_ServiceDocumentItemEnhcd | SrvcDocItmOrdToBaseQtyNmrtr | ||
| SrvcDocItmOrdToBaseQtyDnmntr | I_ServiceDocumentItemEnhcd | SrvcDocItmOrdToBaseQtyDnmntr | ||
| OrderToBaseQuantityExponent | I_ServiceDocumentItemEnhcd | OrderToBaseQuantityExponent | ||
| ServiceDocItemQuantityUnit | I_ServiceDocumentItemEnhcd | ServiceDocItemQuantityUnit | ||
| SrvcDocItemBaseQuantityUnit | I_ServiceDocumentItemEnhcd | SrvcDocItemBaseQuantityUnit | ||
| ServiceTeam | I_ServiceDocumentItemEnhcd | ServiceTeam | ||
| SoldToParty | I_ServiceDocumentItemEnhcd | SoldToParty | ||
| SoldToPartyCountry | I_ServiceDocumentItemEnhcd | SoldToPartyCountry | ||
| SoldToPartyRegion | I_ServiceDocumentItemEnhcd | SoldToPartyRegion | ||
| ResponsibleEmployee | I_ServiceDocumentItemEnhcd | ResponsibleEmployee | ||
| ContactPerson | I_ServiceDocumentItemEnhcd | ContactPerson | ||
| TransactionCurrency | I_ServiceDocumentItemEnhcd | TransactionCurrency | ||
| StatisticsCurrency | I_ServiceDocumentItemEnhcd | StatisticsCurrency | ||
| ExchangeRateType | I_ServiceDocumentItemEnhcd | ExchangeRateType | ||
| ExchangeRateDate | I_ServiceDocumentItemEnhcd | ExchangeRateDate | ||
| AccountingExchangeRate | I_ServiceDocumentItemEnhcd | AccountingExchangeRate | ||
| CustomerGroup | I_ServiceDocumentItemEnhcd | CustomerGroup | ||
| BillableControl | I_ServiceDocumentItemEnhcd | BillableControl | ||
| SrvcSEPAMandateRelevance | I_ServiceDocumentItemEnhcd | SrvcSEPAMandateRelevance | ||
| SEPAMandate | I_ServiceDocumentItemEnhcd | SEPAMandate | ||
| PaymentTerms | I_ServiceDocumentItemEnhcd | PaymentTerms | ||
| PaymentMethod | I_ServiceDocumentItemEnhcd | PaymentMethod | ||
| WBSElementInternalID | I_ServiceDocumentItemEnhcd | WBSElementInternalID | ||
| BillingBlockReason | I_ServiceDocumentItemEnhcd | BillingBlockReason | ||
| AdditionalCustomerGroup1 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup1 | ||
| AdditionalCustomerGroup2 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup2 | ||
| AdditionalCustomerGroup3 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup3 | ||
| AdditionalCustomerGroup4 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup4 | ||
| AdditionalCustomerGroup5 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup5 | ||
| SalesOrganizationOrgUnitID | I_ServiceDocumentItemEnhcd | SalesOrganizationOrgUnitID | ||
| SalesOfficeOrgUnitID | I_ServiceDocumentItemEnhcd | SalesOfficeOrgUnitID | ||
| SalesGroupOrgUnitID | I_ServiceDocumentItemEnhcd | SalesGroupOrgUnitID | ||
| DistributionChannel | I_ServiceDocumentItemEnhcd | DistributionChannel | ||
| Division | I_ServiceDocumentItemEnhcd | Division | ||
| ServiceOrganization | I_ServiceDocumentItemEnhcd | ServiceOrganization | ||
| ResponsibleSalesOrganization | I_ServiceDocumentItemEnhcd | ResponsibleSalesOrganization | ||
| ResponsibleServiceOrganization | I_ServiceDocumentItemEnhcd | ResponsibleServiceOrganization | ||
| SalesOrganization | I_ServiceDocumentItemEnhcd | SalesOrganization | ||
| SalesOffice | I_ServiceDocumentItemEnhcd | SalesOffice | ||
| SalesGroup | I_ServiceDocumentItemEnhcd | SalesGroup | ||
| SrvcDocItemSLADueByDateTime | I_ServiceDocumentItemEnhcd | SrvcDocItemSLADueByDateTime | ||
| ServiceDurationUnit | I_ServiceDocumentItemEnhcd | ServiceDurationUnit | ||
| ServiceDuration | I_ServiceDocumentItemEnhcd | ServiceDuration | ||
| ServiceDocumentItemStatus | I_ServiceDocumentItemEnhcd | ServiceDocumentItemStatus | ||
| ServiceDocumentItemIsReleased | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsReleased | ||
| ServiceDocumentItemIsQuotation | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsQuotation | ||
| ServiceDocumentItemHasError | I_ServiceDocumentItemEnhcd | ServiceDocumentItemHasError | ||
| SrvcDocItmDeliveryStatus | I_ServiceDocumentItemEnhcd | SrvcDocItmDeliveryStatus | ||
| SrvcDocItmGoodsIssueStatus | I_ServiceDocumentItemEnhcd | SrvcDocItmGoodsIssueStatus | ||
| ServiceDocItemBillingStatus | I_ServiceDocumentItemEnhcd | ServiceDocItemBillingStatus | ||
| SrvcDocItmIsReleasedForBilling | I_ServiceDocumentItemEnhcd | SrvcDocItmIsReleasedForBilling | ||
| ServiceDocumentItemIsRejected | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsRejected | ||
| ServiceDocumentItemIsOpen | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsOpen | ||
| QuotationIsAccepted | I_ServiceDocumentItemEnhcd | QuotationIsAccepted | ||
| SrvcDocItemIsUnplanned | I_ServiceDocumentItemEnhcd | SrvcDocItemIsUnplanned | ||
| SrvcDocItemExecutionStatus | I_ServiceDocumentItemEnhcd | SrvcDocItemExecutionStatus | ||
| SrvcDocItemCreditStatus | I_ServiceDocumentItemEnhcd | SrvcDocItemCreditStatus | ||
| ServiceDocumentItemNetAmount | I_ServiceDocumentItemEnhcd | ServiceDocumentItemNetAmount | ||
| ServiceDocItemGrossAmount | I_ServiceDocumentItemEnhcd | ServiceDocItemGrossAmount | ||
| ProductGroup | I_ServiceDocumentItemEnhcd | ProductGroup | ||
| SrvcMaterialPricingGroup | I_ServiceDocumentItemEnhcd | ProductGroup | ||
| ProductGroup1 | I_ServiceDocumentItemEnhcd | ProductGroup1 | ||
| ProductGroup2 | I_ServiceDocumentItemEnhcd | ProductGroup2 | ||
| ProductGroup3 | I_ServiceDocumentItemEnhcd | ProductGroup3 | ||
| ProductGroup4 | I_ServiceDocumentItemEnhcd | ProductGroup4 | ||
| ProductGroup5 | I_ServiceDocumentItemEnhcd | ProductGroup5 | ||
| ProductHierarchy | I_ServiceDocumentItemEnhcd | ProductHierarchy | ||
| ServiceDocItemRejectionReason | I_ServiceDocumentItemEnhcd | ServiceDocItemRejectionReason | ||
| ServiceRefObjectSequenceNumber | ServiceOrdItemRefObj | ServiceRefObjectSequenceNumber | ||
| ServiceReferenceObjectType | ServiceOrdItemRefObj | ServiceReferenceObjectType | ||
| ServiceReferenceObjectUUID | ServiceOrdItemRefObj | ServiceReferenceObjectUUID | ||
| ProductID | ServiceOrdItemRefObj | ProductID | ||
| SrvcRefObjIsMainObject | ServiceOrdItemRefObj | SrvcRefObjIsMainObject | ||
| ProductUUID | ServiceOrdItemRefObj | ProductUUID | ||
| SerialNumber | ServiceOrdItemRefObj | SerialNumber | ||
| Equipment | ServiceOrdItemRefObj | Equipment | ||
| FunctionalLocation | ServiceOrdItemRefObj | FunctionalLocation | ||
| ServiceDocumentRelationUUID | ServiceDocumentPredecessor | ServiceDocumentRelationUUID | ||
| ServiceDocRltnSequenceNumber | ServiceDocumentPredecessor | ServiceDocRltnSequenceNumber | ||
| ServiceDocumentPredecessorUUID | ServiceDocumentPredecessor | ServiceDocumentPredecessorUUID | ||
| ServiceDocPrdcssrBusObjType | ServiceDocumentPredecessor | ServiceDocPrdcssrBusObjType | ||
| SrvcContrPredecessorUUID | ServiceDocumentPredecessor | ServiceDocumentPredecessorUUID | ||
| SrvcContrPrdcssrBusObjType | ServiceDocumentPredecessor | ServiceDocPrdcssrBusObjType | ||
| ServiceDocumentItmRelationUUID | ServiceDocumentItemPrdcssr | ServiceDocumentItmRelationUUID | ||
| ServiceDocItmRltnSqncNumber | ServiceDocumentItemPrdcssr | ServiceDocItmRltnSqncNumber | ||
| ServiceDocItmPrdcssrCharUUID | ServiceDocumentItemPrdcssr | ServiceDocItmPrdcssrCharUUID | ||
| ServiceDocItmPrdcssrBusObjType | ServiceDocumentItemPrdcssr | ServiceDocItmPrdcssrBusObjType | ||
| SrvcContrItmPrdcssrCharUUID | ServiceDocumentItemPrdcssr | ServiceDocItmPrdcssrCharUUID | ||
| SrvcContrItmPrdcssrBusObjType | ServiceDocumentItemPrdcssr | ServiceDocItmPrdcssrBusObjType | ||
| RefBusinessSolutionOrder | I_ServiceDocumentItemEnhcd | RefBusinessSolutionOrder | ||
| RefBusinessSolutionOrderItem | I_ServiceDocumentItemEnhcd | RefBusinessSolutionOrderItem | ||
| _ServiceObjType | I_ServiceDocumentItemEnhcd | _ServiceObjType | ||
| _ServiceDocument | I_ServiceDocumentItemEnhcd | _ServiceDocument | ||
| _BaseUnit_2 | I_ServiceDocumentItemEnhcd | _BaseUnit_2 | ||
| _SalesUnit | I_ServiceDocumentItemEnhcd | _SalesUnit | ||
| _TransactionCurrency | I_ServiceDocumentItemEnhcd | _TransactionCurrency |
@EndUserText.label: 'Data Extraction for Service Order'
@VDM: {
viewType: #CONSUMPTION,
lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@Analytics: {
dataCategory: #FACT,
dataExtraction: {
enabled: true,
delta.changeDataCapture: {
mapping:[
{
filter: [{operator: #EQ, tableElement: 'objtype_h', value: 'BUS2000116'}],
table: 'crms4d_serv_i', role: #MAIN,
viewElement: ['ServiceObjectType', 'ServiceDocument', 'ServiceDocumentItem'],
tableElement: ['objtype_h', 'object_id', 'number_int']
},
{
filter: [{operator: #EQ, tableElement: 'objtype_h', value: 'BUS2000116'}],
table: 'crms4d_serv_h', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['ServiceObjectType', 'ServiceDocument'],
tableElement: ['objtype_h', 'object_id']
},
{
filter: [{operator: #EQ, tableElement: 'objtype_h', value: 'BUS2000116'}],
table: 'crms4d_refobj', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['ServiceObjectType', 'ServiceDocument','ServiceDocumentItem','ServiceRefObjectSequenceNumber'],
tableElement: ['objtype_h', 'object_id','number_int','counter']
},
{
// filter: [{operator: #EQ, tableElement: 'objtype_b_sel', value: 'BUS2000116'}],
table: 'crmd_brelvonae', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['ServiceDocumentRelationUUID', 'ServiceDocRltnSequenceNumber'],
tableElement: ['relationid', 'posno']
},
{
// filter: [{operator: #EQ, tableElement: 'objtype_b', value: 'BUS2000116'}],
table: 'crmd_brelvonai', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['ServiceDocumentItmRelationUUID', 'ServiceDocItmRltnSqncNumber'],
tableElement: ['relationid', 'posno']
}
/* Changes removed
// {
//// filter: [{operator: #EQ, tableElement: 'objtype_b_sel', value: 'BUS2000116'}],
// table: 'crmd_brelvonae', role: #LEFT_OUTER_TO_ONE_JOIN,
// viewElement: ['ServiceDocumentRelationUUID', 'ServiceDocRltnSequenceNumber'],
// tableElement: ['relationid', 'posno']
// },
// {
//// filter: [{operator: #EQ, tableElement: 'objtype_b', value: 'BUS2000116'}],
// table: 'crmd_brelvonai', role: #LEFT_OUTER_TO_ONE_JOIN,
// viewElement: ['ServiceDocumentItmRelationUUID', 'ServiceDocItmRltnSqncNumber'],
// tableElement: ['relationid', 'posno']
// }
*/
]
}
}
}
@Analytics.technicalName: 'CSRVCORDITMDEX'
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
representativeKey: 'ServiceDocumentItem',
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #D,
sizeCategory: #XL
},
supportedCapabilities: [#EXTRACTION_DATA_SOURCE]
}
@ObjectModel.sapObjectNodeType.name: 'ServiceOrderItem'
@Metadata.ignorePropagatedAnnotations: true
/*
Service Order Extractor
Note:
1. Following Service Orders are extracted [excluding Quotations]
a. Service Order
b. Service Order Template
2. Service Order Items along with some Header fields are projected
3. BW extracts all projected fields and performance is not relevant
4. Out of box predecessor UUID fields are projected which indicates Service Contract only.
For any other predecessor types you may have to join explicitly!
*/
define view entity C_ServiceOrderItemDEX
as select from I_ServiceDocumentItemEnhcd as ServiceOrderItem
left outer to one join I_ServiceDocumentEnhcd as ServiceOrder on ServiceOrder.ServiceObjectType = 'BUS2000116'
and ServiceOrderItem.ServiceObjectType = 'BUS2000116'
and ServiceOrderItem.ServiceDocument = ServiceOrder.ServiceDocument
left outer to one join I_ServiceDocumentRefObject as ServiceOrdItemRefObj on ServiceOrdItemRefObj.ServiceObjectType = 'BUS2000116'
and ServiceOrdItemRefObj.ServiceDocument = ServiceOrderItem.ServiceDocument
and ServiceOrdItemRefObj.ServiceDocumentItem = ServiceOrderItem.ServiceDocumentItem
and ServiceOrdItemRefObj.SrvcRefObjIsMainObject = 'X'
left outer to one join I_ServiceDocumentItemPrdcssr_2 as ServiceDocumentItemPrdcssr on ServiceOrderItem.ServiceDocumentItemCharUUID = ServiceDocumentItemPrdcssr.ServiceDocumentItemCharUUID
and ServiceOrderItem.ServiceDocumentItemObjectType = ServiceDocumentItemPrdcssr.ServiceDocumentItemObjectType
and ServiceOrderItem.ServiceDocumentItemObjectType = 'BUS2000137'
/* Changes removed
left outer to one join I_ServiceDocumentItemPrdcssr_2 as ServiceContractItemPrdcssr on ServiceOrderItem.ServiceDocumentItemCharUUID = ServiceContractItemPrdcssr.ServiceDocumentItemCharUUID
and ServiceOrderItem.ServiceDocumentItemObjectType = ServiceContractItemPrdcssr.ServiceDocumentItemObjectType
and ServiceOrderItem.ServiceDocumentItemObjectType = 'BUS2000137'
*/
left outer to one join I_ServiceDocumentPredecessor as ServiceDocumentPredecessor on ServiceOrder.ServiceDocumentUUID = ServiceDocumentPredecessor.ServiceDocumentUUID
and ServiceOrder.ServiceObjectType = ServiceDocumentPredecessor.ServiceObjectType
and ServiceDocumentPredecessor.ServiceDocPrdcssrBusObjType = 'BUS2000112'
association [0..1] to E_ServiceDocumentItem as _ServiceDocItemExt on $projection.ServiceObjectType = _ServiceDocItemExt.ServiceCategory
and $projection.ServiceDocument = _ServiceDocItemExt.ServiceOrderItem
and $projection.ServiceDocumentItem = _ServiceDocItemExt.ServiceLineExternalID
association [0..1] to E_ServiceDocument as _ServiceDocumentExt on $projection.ServiceObjectType = _ServiceDocumentExt.ServiceCategory
and $projection.ServiceDocument = _ServiceDocumentExt.ServiceOrder
{
/* Service Order Item Keys */
@ObjectModel.foreignKey.association: '_ServiceObjType'
key ServiceOrderItem.ServiceObjectType,
@ObjectModel.foreignKey.association: '_ServiceDocument'
key ServiceOrderItem.ServiceDocument,
key ServiceOrderItem.ServiceDocumentItem,
/* Header Details */
ServiceOrder.ServiceDocumentUUID,
ServiceOrder.ServiceDocumentCharUUID,
ServiceOrder.ServiceDocumentDescription,
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceOrder.ServiceDocNetAmount,
ServiceOrder.PurchaseOrderByCustomer,
ServiceOrder.ServiceDocumentStatus,
@Semantics.booleanIndicator: true
ServiceOrder.ServiceDocumentIsReleased,
@Semantics.booleanIndicator: true
ServiceOrder.ServiceDocumentIsQuotation,
@Semantics.booleanIndicator: true
ServiceOrder.ServiceDocumentHasError,
// ServiceOrderItem.SrvcDocItmDeliveryStatus,
// ServiceOrderItem.SrvcDocItmGoodsIssueStatus,
@Semantics.booleanIndicator: true
ServiceOrder.ServiceDocIsReleasedForBilling,
@Semantics.booleanIndicator: true
ServiceOrder.ServiceDocumentIsRejected,
// ServiceOrderItem.QuotationIsAccepted,
ServiceOrder.ServiceDocBillingStatus,
ServiceOrder.ServiceDocumentIsOpen,
ServiceOrder.BusinessActivityCategory,
ServiceOrder.ServiceDocChangedDateTime,
ServiceOrder.ServiceDocCreationDateTime,
ServiceOrder.ServiceDocumentUrgency,
ServiceOrder.ServiceDocumentImpact,
ServiceOrder.ServiceDocumentProblemCategory,
ServiceOrder.RecommendedServicePriority,
ServiceOrder.ServiceEscalationLevel,
ServiceOrder.ServiceRisk,
ServiceOrder.RequestedServiceStartDate,
ServiceOrder.RequestedServiceEndDate,
/* Item Details */
ServiceOrderItem.ServiceDocumentItemPriority,
ServiceOrderItem.ServiceDocumentType,
ServiceOrderItem.ServiceDocumentItemUUID,
ServiceOrderItem.ServiceDocumentItemCharUUID,
ServiceOrderItem.ServiceDocumentItemObjectType,
ServiceOrderItem.ParentServiceDocumentItemUUID,
ServiceOrderItem.PostingDate,
ServiceOrderItem.ProfitCenter,
ServiceOrderItem.ControllingArea,
ServiceOrderItem.ProfitCenterDeterminationDate,
ServiceOrderItem.ServiceDocItemCategory,
ServiceOrderItem.OriginallyRequestedProduct,
ServiceOrderItem.Product,
ServiceOrderItem.PlannedServiceStartDateTime,
ServiceOrderItem.PlannedServiceEndDateTime,
ServiceOrderItem.SrvcOrderConfirmationRelevance,
/* Item - Cumulated Value */
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceOrderItem.InvoiceAmountInInvoiceDocCrcy,
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceOrderItem.SrvcDocItmRequestedQuantity,
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceOrderItem.InvoiceQuantity,
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceOrderItem.SrvcDocItmDeliveredQuantity,
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceOrderItem.SrvcDocItmReleasedQuantity,
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceOrderItem.CumulativeConfirmedQuantity,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceOrderItem.SrvcDocItmReldAmtInTransCrcy,
/* Item - Schedule Line */
@DefaultAggregation: #SUM
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceOrderItem.ServiceDocumentItemQuantity,
/* Item - Product */
ServiceOrderItem.SrvcDocItmOrdToBaseQtyNmrtr,
ServiceOrderItem.SrvcDocItmOrdToBaseQtyDnmntr,
ServiceOrderItem.OrderToBaseQuantityExponent,
@ObjectModel.foreignKey.association: '_SalesUnit'
ServiceOrderItem.ServiceDocItemQuantityUnit,
@ObjectModel.foreignKey.association: '_BaseUnit_2'
ServiceOrderItem.SrvcDocItemBaseQuantityUnit,
/* Partner */
ServiceOrderItem.ServiceTeam,
ServiceOrderItem.SoldToParty,
ServiceOrderItem.SoldToPartyCountry,
ServiceOrderItem.SoldToPartyRegion,
ServiceOrderItem.ResponsibleEmployee,
ServiceOrderItem.ContactPerson,
/* Pricing Parameter Set */
@ObjectModel.foreignKey.association: '_TransactionCurrency'
ServiceOrderItem.TransactionCurrency,
ServiceOrderItem.StatisticsCurrency,
ServiceOrderItem.ExchangeRateType,
ServiceOrderItem.ExchangeRateDate,
ServiceOrderItem.AccountingExchangeRate,
ServiceOrderItem.CustomerGroup,
ServiceOrderItem.BillableControl,
ServiceOrderItem.SrvcSEPAMandateRelevance,
ServiceOrderItem.SEPAMandate,
ServiceOrderItem.PaymentTerms,
ServiceOrderItem.PaymentMethod,
ServiceOrderItem.WBSElementInternalID,
/* Billing Set */
ServiceOrderItem.BillingBlockReason,
/* Item - Sales Set */
ServiceOrderItem.AdditionalCustomerGroup1,
ServiceOrderItem.AdditionalCustomerGroup2,
ServiceOrderItem.AdditionalCustomerGroup3,
ServiceOrderItem.AdditionalCustomerGroup4,
ServiceOrderItem.AdditionalCustomerGroup5,
/* Organization Unit Set */
ServiceOrderItem.SalesOrganizationOrgUnitID,
ServiceOrderItem.SalesOfficeOrgUnitID,
ServiceOrderItem.SalesGroupOrgUnitID,
ServiceOrderItem.DistributionChannel,
ServiceOrderItem.Division,
ServiceOrderItem.ServiceOrganization,
ServiceOrderItem.ResponsibleSalesOrganization,
ServiceOrderItem.ResponsibleServiceOrganization,
/* Organizational units with the S/4 SD codes */
ServiceOrderItem.SalesOrganization,
ServiceOrderItem.SalesOffice,
ServiceOrderItem.SalesGroup,
/* Date */
ServiceOrderItem.SrvcDocItemSLADueByDateTime,
/* Item - Service */
ServiceOrderItem.ServiceDurationUnit,
@Semantics.quantity.unitOfMeasure: 'SRVCDOCITEMBASEQUANTITYUNIT'
ServiceOrderItem.ServiceDuration,
/* Status */
ServiceOrderItem.ServiceDocumentItemStatus,
ServiceOrderItem.ServiceDocumentItemIsReleased,
ServiceOrderItem.ServiceDocumentItemIsQuotation,
ServiceOrderItem.ServiceDocumentItemHasError,
ServiceOrderItem.SrvcDocItmDeliveryStatus,
ServiceOrderItem.SrvcDocItmGoodsIssueStatus,
ServiceOrderItem.ServiceDocItemBillingStatus,
ServiceOrderItem.SrvcDocItmIsReleasedForBilling,
ServiceOrderItem.ServiceDocumentItemIsRejected,
ServiceOrderItem.ServiceDocumentItemIsOpen,
ServiceOrderItem.QuotationIsAccepted,
ServiceOrderItem.SrvcDocItemIsUnplanned,
ServiceOrderItem.SrvcDocItemExecutionStatus,
/* Credit Status */
ServiceOrderItem.SrvcDocItemCreditStatus,
/* Item - Pricing */
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceOrderItem.ServiceDocumentItemNetAmount,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceOrderItem.ServiceDocItemGrossAmount,
/* Item Product */
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcMaterialPricingGroup'
ServiceOrderItem.ProductGroup,
ServiceOrderItem.ProductGroup as SrvcMaterialPricingGroup,
ServiceOrderItem.ProductGroup1,
ServiceOrderItem.ProductGroup2,
ServiceOrderItem.ProductGroup3,
ServiceOrderItem.ProductGroup4,
ServiceOrderItem.ProductGroup5,
ServiceOrderItem.ProductHierarchy,
/* Item - Sales Set */
ServiceOrderItem.ServiceDocItemRejectionReason,
/* Service Subject */
// ServiceOrderItem.ServiceSchema1Category1UUID,
// ServiceOrderItem.ServiceSchema1Category2UUID,
// ServiceOrderItem.ServiceSchema1Category3UUID,
// ServiceOrderItem.ServiceSchema1Category4UUID,
// ServiceOrderItem.ServiceSchema1Category5UUID,
// ServiceOrderItem.ServiceSchema1Category6UUID,
// ServiceOrderItem.ServiceSchema1Category7UUID,
// ServiceOrderItem.ServiceSchema1Category8UUID,
// ServiceOrderItem.ServiceSchema1Category9UUID,
// ServiceOrderItem.ServiceSchema1Category10UUID,
// ServiceOrderItem.SrvcCatztnSchema1,
// ServiceOrderItem.SrvcCatztnSchemaCategory1,
//
// ServiceOrderItem.ServiceSchema2Category1UUID,
// ServiceOrderItem.ServiceSchema2Category2UUID,
// ServiceOrderItem.ServiceSchema2Category3UUID,
// ServiceOrderItem.ServiceSchema2Category4UUID,
// ServiceOrderItem.ServiceSchema2Category5UUID,
// ServiceOrderItem.ServiceSchema2Category6UUID,
// ServiceOrderItem.ServiceSchema2Category7UUID,
// ServiceOrderItem.ServiceSchema2Category8UUID,
// ServiceOrderItem.ServiceSchema2Category9UUID,
// ServiceOrderItem.ServiceSchema2Category10UUID,
// ServiceOrderItem.SrvcCatztnSchema2,
// ServiceOrderItem.SrvcCatztnSchemaCategory2,
/* Reference Object Details */
ServiceOrdItemRefObj.ServiceRefObjectSequenceNumber,
ServiceOrdItemRefObj.ServiceReferenceObjectType,
ServiceOrdItemRefObj.ServiceReferenceObjectUUID,
ServiceOrdItemRefObj.ProductID,
ServiceOrdItemRefObj.SrvcRefObjIsMainObject,
ServiceOrdItemRefObj.ProductUUID,
ServiceOrdItemRefObj.SerialNumber,
ServiceOrdItemRefObj.Equipment,
ServiceOrdItemRefObj.FunctionalLocation,
/* Predecessor fields */
ServiceDocumentPredecessor.ServiceDocumentRelationUUID,
ServiceDocumentPredecessor.ServiceDocRltnSequenceNumber,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrPredecessorUUID'
ServiceDocumentPredecessor.ServiceDocumentPredecessorUUID,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrPrdcssrBusObjType'
ServiceDocumentPredecessor.ServiceDocPrdcssrBusObjType,
ServiceDocumentPredecessor.ServiceDocumentPredecessorUUID as SrvcContrPredecessorUUID,
ServiceDocumentPredecessor.ServiceDocPrdcssrBusObjType as SrvcContrPrdcssrBusObjType,
ServiceDocumentItemPrdcssr.ServiceDocumentItmRelationUUID,
ServiceDocumentItemPrdcssr.ServiceDocItmRltnSqncNumber,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrItmPrdcssrCharUUID'
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrCharUUID,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrItmPrdcssrBusObjType'
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrBusObjType,
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrCharUUID as SrvcContrItmPrdcssrCharUUID,
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrBusObjType as SrvcContrItmPrdcssrBusObjType,
/* Changes removed
@API.element.releaseState: #DEPRECATED
ServiceDocumentPredecessor.ServiceDocumentRelationUUID,
@API.element.releaseState: #DEPRECATED
ServiceDocumentPredecessor.ServiceDocRltnSequenceNumber,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrPredecessorUUID'
ServiceDocumentPredecessor.ServiceDocumentPredecessorUUID,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrPrdcssrBusObjType'
ServiceDocumentPredecessor.ServiceDocPrdcssrBusObjType,
ServiceDocumentPredecessor.ServiceDocumentPredecessorUUID as SrvcContrPredecessorUUID,
ServiceDocumentPredecessor.ServiceDocPrdcssrBusObjType as SrvcContrPrdcssrBusObjType,
@API.element.releaseState: #DEPRECATED
ServiceDocumentItemPrdcssr.ServiceDocumentItmRelationUUID,
@API.element.releaseState: #DEPRECATED
ServiceDocumentItemPrdcssr.ServiceDocItmRltnSqncNumber,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrItmPrdcssrCharUUID'
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrCharUUID,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrItmPrdcssrBusObjType'
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrBusObjType,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrItmPrdcssrCharUUID_2'
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrCharUUID as SrvcContrItmPrdcssrCharUUID,
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'SrvcContrItmPrdcssrBusObjType_2'
ServiceDocumentItemPrdcssr.ServiceDocItmPrdcssrBusObjType as SrvcContrItmPrdcssrBusObjType,
ServiceContractItemPrdcssr.ServiceDocItmPrdcssrCharUUID as SrvcContrItmPrdcssrCharUUID_2,
ServiceContractItemPrdcssr.ServiceDocItmPrdcssrBusObjType as SrvcContrItmPrdcssrBusObj_2,
*/
/* Solution Order */
ServiceOrderItem.RefBusinessSolutionOrder,
ServiceOrderItem.RefBusinessSolutionOrderItem,
/* Associations */
/* Keys */
ServiceOrderItem._ServiceObjType,
ServiceOrderItem._ServiceDocument,
/* Item - Product */
ServiceOrderItem._BaseUnit_2,
ServiceOrderItem._SalesUnit,
/* Pricing Parameter Set */
ServiceOrderItem._TransactionCurrency
}
where
ServiceOrderItem.ServiceObjectType = 'BUS2000116'
and ServiceOrderItem.ServiceDocumentItemIsQuotation != 'X'
and ServiceOrder.ServiceDocumentIsQuotation != 'X'
and ServiceOrderItem.ServiceDocumentTemplateType is initial
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