C_ServiceQuotationItemDEX
Data Extraction for Srvc Quotation Item
C_ServiceQuotationItemDEX is a Consumption CDS View (Fact) that provides data about "Data Extraction for Srvc Quotation Item" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 47 fields with key fields ServiceObjectType, ServiceDocument, ServiceDocumentItem. It has 1 association to related views. Part of development package CRMS4_ANALYTICS_DEX.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentItemEnhcd | ServiceQuotationItem | from |
Associations (1)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | E_ServiceDocumentItem | _ServiceDocItemExt | $projection.ServiceObjectType = _ServiceDocItemExt.ServiceCategory and $projection.ServiceDocument = _ServiceDocItemExt.ServiceOrderItem and $projection.ServiceDocumentItem = _ServiceDocItemExt.ServiceLineExternalID |
Annotations (12)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Data Extraction for Srvc Quotation Item | view | |
| VDM.viewType | #CONSUMPTION | view | |
| Analytics.technicalName | CSRVCQTANITMDEX | view | |
| Analytics.dataCategory | #FACT | view | |
| Analytics.dataExtraction.enabled | true | view | |
| AccessControl.authorizationCheck | #MANDATORY | view | |
| ObjectModel.representativeKey | ServiceDocumentItem | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.sapObjectNodeType.name | ServiceQuotationItem | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (47)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ServiceObjectType | I_ServiceDocumentItemEnhcd | ServiceObjectType | |
| KEY | ServiceDocument | I_ServiceDocumentItemEnhcd | ServiceDocument | |
| KEY | ServiceDocumentItem | I_ServiceDocumentItemEnhcd | ServiceDocumentItem | |
| ServiceDocumentType | I_ServiceDocumentItemEnhcd | ServiceDocumentType | ||
| ServiceDocumentItemDescription | I_ServiceDocumentItemEnhcd | ServiceDocumentItemDescription | ||
| ServiceDocumentItemIsRejected | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsRejected | ||
| SoldToParty | I_ServiceDocumentItemEnhcd | SoldToParty | ||
| ShipToParty | I_ServiceDocumentItemEnhcd | ShipToParty | ||
| RespEmployeeBusinessPartnerId | I_ServiceDocumentItemEnhcd | ResponsibleEmployee | ||
| RespyMgmtGlobalTeamID | ||||
| SalesOrganization | I_ServiceDocumentItemEnhcd | SalesOrganization | ||
| DistributionChannel | I_ServiceDocumentItemEnhcd | DistributionChannel | ||
| Division | I_ServiceDocumentItemEnhcd | Division | ||
| SalesOffice | I_ServiceDocumentItemEnhcd | SalesOffice | ||
| SalesGroup | I_ServiceDocumentItemEnhcd | SalesGroup | ||
| PaymentTerms | I_ServiceDocumentItemEnhcd | PaymentTerms | ||
| TransactionCurrency | I_ServiceDocumentItemEnhcd | TransactionCurrency | ||
| Product | I_ServiceDocumentItemEnhcd | Product | ||
| ServiceDocumentItemQuantity | I_ServiceDocumentItemEnhcd | ServiceDocumentItemQuantity | ||
| ServiceDocItemQuantityUnit | I_ServiceDocumentItemEnhcd | ServiceDocItemQuantityUnit | ||
| ServiceDuration | I_ServiceDocumentItemEnhcd | ServiceDuration | ||
| ServiceDurationUnit | I_ServiceDocumentItemEnhcd | ServiceDurationUnit | ||
| ServiceDocumentItemIsQuotation | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsQuotation | ||
| TimeSheetOvertimeCategory | I_ServiceDocumentItemEnhcd | TimeSheetOvertimeCategory | ||
| ServiceDocumentItemStatus | I_ServiceDocumentItemEnhcd | ServiceDocumentItemStatus | ||
| ServiceDocItemCategory | I_ServiceDocumentItemEnhcd | ServiceDocItemCategory | ||
| ServiceDocItemGrossAmount | I_ServiceDocumentItemEnhcd | ServiceDocItemGrossAmount | ||
| ServiceDocumentItemNetAmount | I_ServiceDocumentItemEnhcd | ServiceDocumentItemNetAmount | ||
| ServiceDocumentItemTaxAmount | I_ServiceDocumentItemEnhcd | ServiceDocumentItemTaxAmount | ||
| ServiceDocItemRejectionReason | I_ServiceDocumentItemEnhcd | ServiceDocItemRejectionReason | ||
| ParentServiceQuotationItem | ||||
| ServiceDocumentItemObjectType | I_ServiceDocumentItemEnhcd | ServiceDocumentItemObjectType | ||
| ReferenceServiceContract | ||||
| ReferenceServiceContractItem | ||||
| SerialNumber | ServiceQtanItemRefObj | SerialNumber | ||
| Equipment | ServiceQtanItemRefObj | Equipment | ||
| SrvcQtanItemFunctionalLocation | ||||
| ProductID | ServiceQtanItemRefObj | ProductID | ||
| _ServiceObjType | I_ServiceDocumentItemEnhcd | _ServiceObjType | ||
| _ServiceDocumentType | I_ServiceDocumentItemEnhcd | _ServiceDocumentType | ||
| _PaymentTerms | I_ServiceDocumentItemEnhcd | _PaymentTerms | ||
| _TransactionCurrency | I_ServiceDocumentItemEnhcd | _TransactionCurrency | ||
| _SalesUnit | I_ServiceDocumentItemEnhcd | _SalesUnit | ||
| _ServiceDocOvertimeCat | I_ServiceDocumentItemEnhcd | _ServiceDocOvertimeCat | ||
| _ServiceDocItemCategory | I_ServiceDocumentItemEnhcd | _ServiceDocItemCategory | ||
| _SrvcDocItmLifecycleStatus | I_ServiceDocumentItemEnhcd | _SrvcDocItmLifecycleStatus | ||
| _ServiceDocItemRejectionReason | I_ServiceDocumentItemEnhcd | _ServiceDocItemRejectionReason |
@EndUserText.label: 'Data Extraction for Srvc Quotation Item'
@VDM: {
viewType: #CONSUMPTION
// lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@Analytics: {
technicalName: 'CSRVCQTANITMDEX',
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_refobj', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['ServiceObjectType', 'ServiceDocument'],
tableElement: ['objtype_h', 'object_id']
} ] } } }
@AccessControl: {
authorizationCheck: #MANDATORY,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
representativeKey: 'ServiceDocumentItem',
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #D,
sizeCategory: #XL
},
supportedCapabilities: [#EXTRACTION_DATA_SOURCE]
}
@ObjectModel.sapObjectNodeType.name: 'ServiceQuotationItem'
@Metadata.ignorePropagatedAnnotations: true
define view entity C_ServiceQuotationItemDEX
as select from I_ServiceDocumentItemEnhcd as ServiceQuotationItem
left outer to one join I_ServiceDocumentRefObject as ServiceQtanItemRefObj on ServiceQtanItemRefObj.ServiceObjectType = 'BUS2000116'
and ServiceQtanItemRefObj.ServiceDocument = ServiceQuotationItem.ServiceDocument
and ServiceQtanItemRefObj.ServiceDocumentItem = ServiceQuotationItem.ServiceDocumentItem
and ServiceQtanItemRefObj.SrvcRefObjIsMainObject = 'X'
left outer to one join I_ServiceDocumentItemPrdcssr_2 as ServiceDocumentItemPrdcssr on ServiceQuotationItem.ServiceDocumentItemCharUUID = ServiceDocumentItemPrdcssr.ServiceDocumentItemCharUUID
and ServiceQuotationItem.ServiceDocumentItemObjectType = ServiceDocumentItemPrdcssr.ServiceDocumentItemObjectType
and ServiceQuotationItem.ServiceDocumentItemObjectType = 'BUS2000137'
association [0..1] to E_ServiceDocumentItem as _ServiceDocItemExt on $projection.ServiceObjectType = _ServiceDocItemExt.ServiceCategory
and $projection.ServiceDocument = _ServiceDocItemExt.ServiceOrderItem
and $projection.ServiceDocumentItem = _ServiceDocItemExt.ServiceLineExternalID
{
/* Service Order Item Keys */
@ObjectModel.foreignKey.association: '_ServiceObjType'
key ServiceQuotationItem.ServiceObjectType,
key ServiceQuotationItem.ServiceDocument,
key ServiceQuotationItem.ServiceDocumentItem,
// ServiceQuotationItem.ServiceDocumentItemUUID,
// ServiceQuotationItem.ServiceDocumentItemCharUUID,
@ObjectModel.foreignKey.association: '_ServiceDocumentType'
ServiceQuotationItem.ServiceDocumentType,
ServiceQuotationItem.ServiceDocumentItemDescription,
@Semantics.booleanIndicator: true
ServiceQuotationItem.ServiceDocumentItemIsRejected,
ServiceQuotationItem.SoldToParty,
ServiceQuotationItem.ShipToParty,
ServiceQuotationItem.ResponsibleEmployee as RespEmployeeBusinessPartnerId,
ServiceQuotationItem._ServiceTeamHeader.RespyMgmtGlobalTeamID,
/* Organizational units with the S/4 SD codes */
ServiceQuotationItem.SalesOrganization,
ServiceQuotationItem.DistributionChannel,
ServiceQuotationItem.Division,
ServiceQuotationItem.SalesOffice,
ServiceQuotationItem.SalesGroup,
@ObjectModel.foreignKey.association: '_PaymentTerms'
ServiceQuotationItem.PaymentTerms,
@ObjectModel.foreignKey.association: '_TransactionCurrency'
ServiceQuotationItem.TransactionCurrency,
ServiceQuotationItem.Product,
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceQuotationItem.ServiceDocumentItemQuantity,
@ObjectModel.foreignKey.association: '_SalesUnit'
ServiceQuotationItem.ServiceDocItemQuantityUnit,
@Semantics.quantity.unitOfMeasure: 'ServiceDurationUnit'
ServiceQuotationItem.ServiceDuration,
ServiceQuotationItem.ServiceDurationUnit,
@Semantics.booleanIndicator: true
ServiceQuotationItem.ServiceDocumentItemIsQuotation,
@ObjectModel.foreignKey.association: '_ServiceDocOvertimeCat'
ServiceQuotationItem.TimeSheetOvertimeCategory,
@ObjectModel.foreignKey.association: '_SrvcDocItmLifecycleStatus'
ServiceQuotationItem.ServiceDocumentItemStatus,
@ObjectModel.foreignKey.association: '_ServiceDocItemCategory'
ServiceQuotationItem.ServiceDocItemCategory,
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceQuotationItem.ServiceDocItemGrossAmount,
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceQuotationItem.ServiceDocumentItemNetAmount,
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceQuotationItem.ServiceDocumentItemTaxAmount,
@ObjectModel.foreignKey.association: '_ServiceDocItemRejectionReason'
ServiceQuotationItem.ServiceDocItemRejectionReason,
ServiceQuotationItem._ParentServiceDocItem_2.ServiceDocumentItem as ParentServiceQuotationItem,
//@ObjectModel.foreignKey.association: '_ServiceObjType'
ServiceQuotationItem.ServiceDocumentItemObjectType,
ServiceDocumentItemPrdcssr._ServiceDocItm.ServiceDocument as ReferenceServiceContract,
ServiceDocumentItemPrdcssr._ServiceDocItm.ServiceDocumentItem as ReferenceServiceContractItem,
/* Reference Object Details */
//ServiceQtanItemRefObj.SrvcRefObjIsMainObject,
ServiceQtanItemRefObj.SerialNumber,
ServiceQtanItemRefObj.Equipment,
cast ( ServiceQtanItemRefObj.FunctionalLocation as functionallocation preserving type ) as SrvcQtanItemFunctionalLocation,
ServiceQtanItemRefObj.ProductID,
ServiceQuotationItem._ServiceObjType,
ServiceQuotationItem._ServiceDocumentType,
ServiceQuotationItem._PaymentTerms,
ServiceQuotationItem._TransactionCurrency,
ServiceQuotationItem._SalesUnit,
ServiceQuotationItem._ServiceDocOvertimeCat,
ServiceQuotationItem._ServiceDocItemCategory,
ServiceQuotationItem._SrvcDocItmLifecycleStatus,
ServiceQuotationItem._ServiceDocItemRejectionReason
}
where
ServiceQuotationItem.ServiceObjectType = 'BUS2000116'
and ServiceQuotationItem.ServiceDocumentItemIsQuotation = 'X'
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