C_BusinessSolutionOrderItemDEX
Data Extraction for Bussiness Solution Order
C_BusinessSolutionOrderItemDEX is a Consumption CDS View (Fact) that provides data about "Data Extraction for Bussiness Solution Order" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 122 fields with key fields ServiceObjectType, ServiceDocument, ServiceDocumentItem. It has 2 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentItemEnhcd | SolutionOrderItem | from |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | E_ServiceDocumentItem | _SolutionDocItemExt | $projection.ServiceObjectType = _SolutionDocItemExt.ServiceCategory and $projection.ServiceDocument = _SolutionDocItemExt.ServiceOrderItem and $projection.ServiceDocumentItem = _SolutionDocItemExt.ServiceLineExternalID |
| [0..1] | E_ServiceDocument | _SolutionDocumentExt | $projection.ServiceObjectType = _SolutionDocumentExt.ServiceCategory and $projection.ServiceDocument = _SolutionDocumentExt.ServiceOrder |
Annotations (16)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Data Extraction for Bussiness Solution Order | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AbapCatalog.sqlViewName | CBSOLORDITMDEX | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| VDM.viewType | #CONSUMPTION | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| Analytics.dataCategory | #FACT | view | |
| Analytics.dataExtraction.enabled | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.representativeKey | ServiceDocumentItem | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.modelingPattern | #NONE | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (122)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ServiceObjectType | I_ServiceDocumentItemEnhcd | ServiceObjectType | |
| KEY | ServiceDocument | I_ServiceDocumentItemEnhcd | ServiceDocument | |
| KEY | ServiceDocumentItem | I_ServiceDocumentItemEnhcd | ServiceDocumentItem | |
| ServiceDocumentUUID | SolutionOrder | ServiceDocumentUUID | ||
| ServiceDocumentCharUUID | SolutionOrder | ServiceDocumentCharUUID | ||
| ServiceDocumentDescription | SolutionOrder | ServiceDocumentDescription | ||
| ServiceDocNetAmount | SolutionOrder | ServiceDocNetAmount | ||
| PurchaseOrderByCustomer | SolutionOrder | PurchaseOrderByCustomer | ||
| ServiceDocumentStatus | SolutionOrder | ServiceDocumentStatus | ||
| ServiceDocumentIsReleased | SolutionOrder | ServiceDocumentIsReleased | ||
| ServiceDocumentIsOpen | SolutionOrder | ServiceDocumentIsOpen | ||
| ServiceDocumentHasError | SolutionOrder | ServiceDocumentHasError | ||
| ServiceDocumentIsRejected | SolutionOrder | ServiceDocumentIsRejected | ||
| ServiceDocChangedDateTime | SolutionOrder | ServiceDocChangedDateTime | ||
| ServiceDocCreationDateTime | SolutionOrder | ServiceDocCreationDateTime | ||
| ServiceDocumentType | I_ServiceDocumentItemEnhcd | ServiceDocumentType | ||
| ServiceDocumentItemObjectType | I_ServiceDocumentItemEnhcd | ServiceDocumentItemObjectType | ||
| ServiceDocumentItemUUID | I_ServiceDocumentItemEnhcd | ServiceDocumentItemUUID | ||
| ServiceDocumentItemCharUUID | I_ServiceDocumentItemEnhcd | ServiceDocumentItemCharUUID | ||
| PostingDate | I_ServiceDocumentItemEnhcd | PostingDate | ||
| ProfitCenter | I_ServiceDocumentItemEnhcd | ProfitCenter | ||
| ControllingArea | I_ServiceDocumentItemEnhcd | ControllingArea | ||
| ProfitCenterDeterminationDate | I_ServiceDocumentItemEnhcd | ProfitCenterDeterminationDate | ||
| ParentServiceDocumentItemUUID | I_ServiceDocumentItemEnhcd | ParentServiceDocumentItemUUID | ||
| ServiceDocItemCategory | I_ServiceDocumentItemEnhcd | ServiceDocItemCategory | ||
| OriginallyRequestedProduct | I_ServiceDocumentItemEnhcd | OriginallyRequestedProduct | ||
| ProductID | I_ServiceDocumentItemEnhcd | Product | ||
| ServiceDocumentItemQuantity | I_ServiceDocumentItemEnhcd | ServiceDocumentItemQuantity | ||
| SrvcDocItmOrdToBaseQtyNmrtr | I_ServiceDocumentItemEnhcd | SrvcDocItmOrdToBaseQtyNmrtr | ||
| SrvcDocItmOrdToBaseQtyDnmntr | I_ServiceDocumentItemEnhcd | SrvcDocItmOrdToBaseQtyDnmntr | ||
| OrderToBaseQuantityExponent | I_ServiceDocumentItemEnhcd | OrderToBaseQuantityExponent | ||
| ServiceDocItemQuantityUnit | I_ServiceDocumentItemEnhcd | ServiceDocItemQuantityUnit | ||
| SrvcDocItemBaseQuantityUnit | I_ServiceDocumentItemEnhcd | SrvcDocItemBaseQuantityUnit | ||
| Plant | I_ServiceDocumentItemEnhcd | Plant | ||
| IncotermsPart1 | I_ServiceDocumentItemEnhcd | IncotermsPart1 | ||
| IncotermsPart2 | I_ServiceDocumentItemEnhcd | IncotermsPart2 | ||
| DeliveryPriority | I_ServiceDocumentItemEnhcd | DeliveryPriority | ||
| PartialDeliveryIsAllowed | I_ServiceDocumentItemEnhcd | PartialDeliveryIsAllowed | ||
| OrderCombinationIsAllowed | I_ServiceDocumentItemEnhcd | OrderCombinationIsAllowed | ||
| DeliveryBlockReason | I_ServiceDocumentItemEnhcd | DeliveryBlockReason | ||
| RequestedDeliveryUTCDateTime | I_ServiceDocumentItemEnhcd | RequestedDeliveryUTCDateTime | ||
| SoldToParty | I_ServiceDocumentItemEnhcd | SoldToParty | ||
| ServiceTeam | I_ServiceDocumentItemEnhcd | ServiceTeam | ||
| SoldToPartyCountry | I_ServiceDocumentItemEnhcd | SoldToPartyCountry | ||
| SoldToPartyRegion | I_ServiceDocumentItemEnhcd | SoldToPartyRegion | ||
| ResponsibleEmployee | ||||
| ContactPerson | ||||
| ShipToParty | I_ServiceDocumentItemEnhcd | ShipToParty | ||
| BillToParty | I_ServiceDocumentItemEnhcd | BillToParty | ||
| PayerParty | I_ServiceDocumentItemEnhcd | PayerParty | ||
| ProjectManager | SolutionCustmMgmtPartner | CustMgmtBusinessPartner | ||
| BillableControl | I_ServiceDocumentItemEnhcd | BillableControl | ||
| TransactionCurrency | I_ServiceDocumentItemEnhcd | TransactionCurrency | ||
| ReferenceCurrency | I_ServiceDocumentItemEnhcd | StatisticsCurrency | ||
| ExchangeRateType | I_ServiceDocumentItemEnhcd | ExchangeRateType | ||
| ExchangeRateDate | I_ServiceDocumentItemEnhcd | ExchangeRateDate | ||
| AccountingExchangeRate | ||||
| CustomerGroup | I_ServiceDocumentItemEnhcd | CustomerGroup | ||
| PaymentTerms | I_ServiceDocumentItemEnhcd | PaymentTerms | ||
| BillingBlockReason | I_ServiceDocumentItemEnhcd | BillingBlockReason | ||
| AdditionalCustomerGroup1 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup1 | ||
| AdditionalCustomerGroup2 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup2 | ||
| AdditionalCustomerGroup3 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup3 | ||
| AdditionalCustomerGroup4 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup4 | ||
| AdditionalCustomerGroup5 | I_ServiceDocumentItemEnhcd | AdditionalCustomerGroup5 | ||
| ServiceDocItemRejectionReason | I_ServiceDocumentItemEnhcd | ServiceDocItemRejectionReason | ||
| SalesOrganizationOrgUnitID | I_ServiceDocumentItemEnhcd | SalesOrganizationOrgUnitID | ||
| SalesOfficeOrgUnitID | I_ServiceDocumentItemEnhcd | SalesOfficeOrgUnitID | ||
| SalesGroupOrgUnitID | I_ServiceDocumentItemEnhcd | SalesGroupOrgUnitID | ||
| DistributionChannel | I_ServiceDocumentItemEnhcd | DistributionChannel | ||
| Division | I_ServiceDocumentItemEnhcd | Division | ||
| ServiceOrganization | I_ServiceDocumentItemEnhcd | ServiceOrganization | ||
| SalesOrganization | I_ServiceDocumentItemEnhcd | SalesOrganization | ||
| SalesOffice | I_ServiceDocumentItemEnhcd | SalesOffice | ||
| SalesGroup | I_ServiceDocumentItemEnhcd | SalesGroup | ||
| CompanyCode | SolutionSalesOrganization | CompanyCode | ||
| ServiceDocumentItemStatus | I_ServiceDocumentItemEnhcd | ServiceDocumentItemStatus | ||
| ServiceDocumentItemIsReleased | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsReleased | ||
| ServiceDocumentItemHasError | I_ServiceDocumentItemEnhcd | ServiceDocumentItemHasError | ||
| SrvcDocItmDeliveryStatus | I_ServiceDocumentItemEnhcd | SrvcDocItmDeliveryStatus | ||
| ServiceDocItemBillingStatus | I_ServiceDocumentItemEnhcd | ServiceDocItemBillingStatus | ||
| ServiceDocumentItemIsRejected | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsRejected | ||
| ServiceDocumentItemIsOpen | I_ServiceDocumentItemEnhcd | ServiceDocumentItemIsOpen | ||
| SrvcDocItemCreditStatus | I_ServiceDocumentItemEnhcd | SrvcDocItemCreditStatus | ||
| ServiceDocumentItemNetAmount | I_ServiceDocumentItemEnhcd | ServiceDocumentItemNetAmount | ||
| ServiceDocItemGrossAmount | I_ServiceDocumentItemEnhcd | ServiceDocItemGrossAmount | ||
| SrvcMaterialPricingGroup | I_ServiceDocumentItemEnhcd | SrvcMaterialPricingGroup | ||
| ProductGroup1 | I_ServiceDocumentItemEnhcd | ProductGroup1 | ||
| ProductGroup2 | I_ServiceDocumentItemEnhcd | ProductGroup2 | ||
| ProductGroup3 | I_ServiceDocumentItemEnhcd | ProductGroup3 | ||
| ProductGroup4 | I_ServiceDocumentItemEnhcd | ProductGroup4 | ||
| ProductGroup5 | I_ServiceDocumentItemEnhcd | ProductGroup5 | ||
| ProductHierarchy | Product Hierarchy | |||
| SrvcRefObjIsMainObject | SolutionOrdItemRefObj | SrvcRefObjIsMainObject | ||
| ProductUUID | SolutionOrdItemRefObj | ProductUUID | ||
| SerialNumber | SolutionOrdItemRefObj | SerialNumber | ||
| Equipment | SolutionOrdItemRefObj | Equipment | ||
| ServiceRefObjectSequenceNumber | SolutionOrdItemRefObj | ServiceRefObjectSequenceNumber | ||
| ServiceReferenceObjectType | SolutionOrdItemRefObj | ServiceReferenceObjectType | ||
| ServiceReferenceObjectUUID | SolutionOrdItemRefObj | ServiceReferenceObjectUUID | ||
| FunctionalLocation | Functional Location | |||
| clientNULLasProjectStartDate | Project Start Date | |||
| clientNULLasProjectEndDate | Project End Date | |||
| ResponsibleCostCenter | I_ServiceDocumentItemEnhcd | ResponsibleCostCenter | ||
| EnterpriseProjectServiceOrg | I_ServiceDocumentItemEnhcd | EnterpriseProjectServiceOrg | ||
| ServiceContrItemStartDateTime | ||||
| ServiceContrItemEndDateTime | ||||
| SubscrpnBillgItmPrcgDateTime | SolutionSubsPrcgDate | SrvcDocApptStartDateTime | ||
| SubscrpnWithdrawalPeriod | SolutionDurationSubsWitPer | SrvcDocDurationValue | ||
| SubscriptionFixedTerm | SolutionDurationSubsFixTer | SrvcDocDurationValue | ||
| SubscriptionTermOfNotice | SolutionDurationSubsTerNot | SrvcDocDurationValue | ||
| SubscriptionMinimumTerm | SolutionDurationSubsMinTer | SrvcDocDurationValue | ||
| SubscriptionRenewalPeriod | SolutionDurationSubsRenTer | SrvcDocDurationValue | ||
| SubscriptionExpectedTerm | SolutionDurationSubsDefTer | SrvcDocDurationValue | ||
| MidBillgCycExprtnIsAllowed | I_ServiceDocumentItemEnhcd | MidBillgCycExprtnIsAllowed | ||
| SubscrpnContrTrmsAreSpecified | I_ServiceDocumentItemEnhcd | SubscrpnContrTrmsAreSpecified | ||
| SubscriptionBillingCycle | I_ServiceDocumentItemEnhcd | SubscriptionBillingCycle | ||
| _ServiceObjType | _ServiceObjType | |||
| _ServiceDocument | _ServiceDocument | |||
| _BaseUnit_2 | _BaseUnit_2 | |||
| _SalesUnit | _SalesUnit | |||
| _TransactionCurrency | _TransactionCurrency |
@EndUserText.label: 'Data Extraction for Bussiness Solution Order'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog: {
sqlViewName: 'CBSOLORDITMDEX',
compiler.compareFilter: true,
preserveKey: true
}
@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: 'BUS2000172'}],
table: 'crms4d_serv_i', role: #MAIN,
viewElement: ['ServiceObjectType', 'ServiceDocument', 'ServiceDocumentItem'],
tableElement: ['objtype_h', 'object_id', 'number_int']
},
{
filter: [{operator: #EQ, tableElement: 'objtype_h', value: 'BUS2000172'}],
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: 'BUS2000172'}],
table: 'crms4d_refobj', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['ServiceObjectType', 'ServiceDocument','ServiceDocumentItem','ServiceRefObjectSequenceNumber'],
tableElement: ['objtype_h', 'object_id','number_int','counter']
}
]
}
}
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
representativeKey: 'ServiceDocumentItem',
usageType: {
dataClass: #MIXED,
serviceQuality: #D,
sizeCategory: #XL
},
supportedCapabilities: [#EXTRACTION_DATA_SOURCE],
modelingPattern: #NONE
}
@Metadata.ignorePropagatedAnnotations: true
/*
Business Solution Order Extractor
Note:
1. Solution Order Items along with some Header fields are projected
2. BW extracts all projected fields and performance is not relevant
*/
define view C_BusinessSolutionOrderItemDEX
as select from I_ServiceDocumentItemEnhcd as SolutionOrderItem
left outer to one join I_ServiceDocumentEnhcd as SolutionOrder on SolutionOrder.ServiceObjectType = 'BUS2000172'
and SolutionOrderItem.ServiceObjectType = 'BUS2000172'
and SolutionOrderItem.ServiceDocument = SolutionOrder.ServiceDocument
left outer to one join I_ServiceDocumentRefObject as SolutionOrdItemRefObj on SolutionOrdItemRefObj.ServiceObjectType = 'BUS2000172'
and SolutionOrdItemRefObj.ServiceDocument = SolutionOrderItem.ServiceDocument
and SolutionOrdItemRefObj.ServiceDocumentItem = SolutionOrderItem.ServiceDocumentItem
and SolutionOrdItemRefObj.SrvcRefObjIsMainObject = 'X'
/*
left outer to one join I_ServiceDocumentItemPrdcssr_2 as SolutionDocumentItemPrdcssr on SolutionOrderItem.ServiceDocumentItemCharUUID = SolutionDocumentItemPrdcssr.ServiceDocumentItemCharUUID
and SolutionOrderItem.ServiceDocumentItemObjectType = SolutionDocumentItemPrdcssr.ServiceDocumentItemObjectType
left outer to one join I_ServiceDocumentItemPrdcssr_2 as SolutionContractItemPrdcssr on SolutionOrderItem.ServiceDocumentItemCharUUID = SolutionContractItemPrdcssr.ServiceDocumentItemCharUUID
and SolutionOrderItem.ServiceDocumentItemObjectType = SolutionContractItemPrdcssr.ServiceDocumentItemObjectType
and SolutionOrderItem.ServiceDocumentItemObjectType = 'BUS2000137'
left outer to one join I_ServiceDocumentPredecessor as SolutionDocumentPredecessor on SolutionOrder.ServiceDocumentUUID = SolutionDocumentPredecessor.ServiceDocumentUUID
and SolutionOrder.ServiceObjectType = SolutionDocumentPredecessor.ServiceObjectType
and SolutionDocumentPredecessor.ServiceDocPrdcssrBusObjType = 'BUS2000112'
*/
left outer to one join I_CustMgmtPartner as SolutionCustmMgmtPartner on SolutionOrderItem.ServiceDocument = SolutionCustmMgmtPartner.CustMgmtDocument
and SolutionOrderItem.ServiceDocumentItem = SolutionCustmMgmtPartner.CustMgmtDocumentItem
and SolutionCustmMgmtPartner.CustMgmtObjectType = 'BUS2000172'
and SolutionCustmMgmtPartner.CustMgmtPartFunctionCategory = '0093'
left outer to one join I_SrvcDocAppointment as SolutionDocumentProjStart on SolutionOrderItem.ServiceDocumentItemUUID = SolutionDocumentProjStart.SrvcMgmtObjectUUID
and SolutionDocumentProjStart.SrvcDocAppointmentType = 'PROJSTART'
left outer to one join I_SrvcDocAppointment as SolutionDocumentProjEnd on SolutionOrderItem.ServiceDocumentItemUUID = SolutionDocumentProjEnd.SrvcMgmtObjectUUID
and SolutionDocumentProjEnd.SrvcDocAppointmentType = 'PROJEND'
left outer to one join I_SrvcDocAppointment as SolutionSubsPrcgDate on SolutionOrderItem.ServiceDocumentItemUUID = SolutionSubsPrcgDate.SrvcMgmtObjectUUID
and SolutionSubsPrcgDate.SrvcDocAppointmentType = 'SUBS_PRIC_DT'
left outer to one join I_ServiceDocumentDuration as SolutionDurationSubsWitPer on SolutionOrderItem.ServiceDocument = SolutionDurationSubsWitPer.ServiceDocument
and SolutionOrderItem.ServiceDocumentItem = SolutionDurationSubsWitPer.ServiceDocumentItem
and SolutionDurationSubsWitPer.ServiceObjectType = 'BUS2000172'
and SolutionDurationSubsWitPer.SrvcDocDurationType = 'SUBS_WIT_PER'
left outer to one join I_ServiceDocumentDuration as SolutionDurationSubsFixTer on SolutionOrderItem.ServiceDocument = SolutionDurationSubsFixTer.ServiceDocument
and SolutionOrderItem.ServiceDocumentItem = SolutionDurationSubsFixTer.ServiceDocumentItem
and SolutionDurationSubsWitPer.ServiceObjectType = 'BUS2000172'
and SolutionDurationSubsWitPer.SrvcDocDurationType = 'SUBS_FIX_TER'
left outer to one join I_ServiceDocumentDuration as SolutionDurationSubsTerNot on SolutionOrderItem.ServiceDocument = SolutionDurationSubsTerNot.ServiceDocument
and SolutionOrderItem.ServiceDocumentItem = SolutionDurationSubsTerNot.ServiceDocumentItem
and SolutionDurationSubsWitPer.ServiceObjectType = 'BUS2000172'
and SolutionDurationSubsWitPer.SrvcDocDurationType = 'SUBS_TER_NOT'
left outer to one join I_ServiceDocumentDuration as SolutionDurationSubsMinTer on SolutionOrderItem.ServiceDocument = SolutionDurationSubsMinTer.ServiceDocument
and SolutionOrderItem.ServiceDocumentItem = SolutionDurationSubsMinTer.ServiceDocumentItem
and SolutionDurationSubsWitPer.ServiceObjectType = 'BUS2000172'
and SolutionDurationSubsWitPer.SrvcDocDurationType = 'SUBS_MIN_TER'
left outer to one join I_ServiceDocumentDuration as SolutionDurationSubsRenTer on SolutionOrderItem.ServiceDocument = SolutionDurationSubsRenTer.ServiceDocument
and SolutionOrderItem.ServiceDocumentItem = SolutionDurationSubsRenTer.ServiceDocumentItem
and SolutionDurationSubsWitPer.ServiceObjectType = 'BUS2000172'
and SolutionDurationSubsWitPer.SrvcDocDurationType = 'SUBS_REN_TER'
left outer to one join I_ServiceDocumentDuration as SolutionDurationSubsDefTer on SolutionOrderItem.ServiceDocument = SolutionDurationSubsDefTer.ServiceDocument
and SolutionOrderItem.ServiceDocumentItem = SolutionDurationSubsDefTer.ServiceDocumentItem
and SolutionDurationSubsWitPer.ServiceObjectType = 'BUS2000172'
and SolutionDurationSubsWitPer.SrvcDocDurationType = 'SUBS_DEF_TER'
left outer to one join I_SalesOrganization as SolutionSalesOrganization on SolutionOrderItem.SalesOrganization = SolutionSalesOrganization.SalesOrganization
association [0..1] to E_ServiceDocumentItem as _SolutionDocItemExt on $projection.ServiceObjectType = _SolutionDocItemExt.ServiceCategory
and $projection.ServiceDocument = _SolutionDocItemExt.ServiceOrderItem
and $projection.ServiceDocumentItem = _SolutionDocItemExt.ServiceLineExternalID
association [0..1] to E_ServiceDocument as _SolutionDocumentExt on $projection.ServiceObjectType = _SolutionDocumentExt.ServiceCategory
and $projection.ServiceDocument = _SolutionDocumentExt.ServiceOrder
{
/* Solution Order Item Keys */
@ObjectModel.foreignKey.association: '_ServiceObjType'
key SolutionOrderItem.ServiceObjectType,
@ObjectModel.foreignKey.association: '_ServiceDocument'
key SolutionOrderItem.ServiceDocument,
key SolutionOrderItem.ServiceDocumentItem,
/* Header Details */
SolutionOrder.ServiceDocumentUUID,
@Semantics.uuid
SolutionOrder.ServiceDocumentCharUUID,
SolutionOrder.ServiceDocumentDescription,
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
SolutionOrder.ServiceDocNetAmount,
SolutionOrder.PurchaseOrderByCustomer,
SolutionOrder.ServiceDocumentStatus,
@Semantics.booleanIndicator: true
SolutionOrder.ServiceDocumentIsReleased,
@Semantics.booleanIndicator: true
SolutionOrder.ServiceDocumentIsOpen,
@Semantics.booleanIndicator: true
SolutionOrder.ServiceDocumentHasError,
@Semantics.booleanIndicator: true
SolutionOrder.ServiceDocumentIsRejected,
SolutionOrder.ServiceDocChangedDateTime,
SolutionOrder.ServiceDocCreationDateTime,
/* Item Details */
SolutionOrderItem.ServiceDocumentType,
SolutionOrderItem.ServiceDocumentItemObjectType,
SolutionOrderItem.ServiceDocumentItemUUID,
@Semantics.uuid
SolutionOrderItem.ServiceDocumentItemCharUUID,
SolutionOrderItem.PostingDate,
SolutionOrderItem.ProfitCenter,
SolutionOrderItem.ControllingArea,
SolutionOrderItem.ProfitCenterDeterminationDate,
SolutionOrderItem.ParentServiceDocumentItemUUID,
SolutionOrderItem.ServiceDocItemCategory,
SolutionOrderItem.OriginallyRequestedProduct,
SolutionOrderItem.Product as ProductID,
/* Item - Schedule Line */
@DefaultAggregation: #SUM
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
SolutionOrderItem.ServiceDocumentItemQuantity,
/* Item - Product */
SolutionOrderItem.SrvcDocItmOrdToBaseQtyNmrtr,
SolutionOrderItem.SrvcDocItmOrdToBaseQtyDnmntr,
SolutionOrderItem.OrderToBaseQuantityExponent,
@ObjectModel.foreignKey.association: '_SalesUnit'
@Semantics.unitOfMeasure:true
SolutionOrderItem.ServiceDocItemQuantityUnit,
@ObjectModel.foreignKey.association: '_BaseUnit_2'
@Semantics.unitOfMeasure:true
SolutionOrderItem.SrvcDocItemBaseQuantityUnit,
SolutionOrderItem.Plant,
SolutionOrderItem.IncotermsPart1,
SolutionOrderItem.IncotermsPart2,
SolutionOrderItem.DeliveryPriority,
SolutionOrderItem.PartialDeliveryIsAllowed,
SolutionOrderItem.OrderCombinationIsAllowed,
SolutionOrderItem.DeliveryBlockReason,
SolutionOrderItem.RequestedDeliveryUTCDateTime,
/* Partner */
SolutionOrderItem.SoldToParty,
SolutionOrderItem.ServiceTeam,
SolutionOrderItem.SoldToPartyCountry,
SolutionOrderItem.SoldToPartyRegion,
cast( SolutionOrderItem.ResponsibleEmployee as resp_empl ) as ResponsibleEmployee,
cast( SolutionOrderItem.ContactPerson as parnr ) as ContactPerson,
SolutionOrderItem.ShipToParty,
SolutionOrderItem.BillToParty,
SolutionOrderItem.PayerParty,
SolutionCustmMgmtPartner.CustMgmtBusinessPartner as ProjectManager,
/* Pricing Parameter Set */
SolutionOrderItem.BillableControl,
@ObjectModel.foreignKey.association: '_TransactionCurrency'
@Semantics.currencyCode:true
SolutionOrderItem.TransactionCurrency,
@Semantics.currencyCode:true
SolutionOrderItem.StatisticsCurrency as ReferenceCurrency,
SolutionOrderItem.ExchangeRateType,
SolutionOrderItem.ExchangeRateDate,
cast( SolutionOrderItem.AccountingExchangeRate as fis_exchange_rate preserving type ) as AccountingExchangeRate,
SolutionOrderItem.CustomerGroup,
SolutionOrderItem.PaymentTerms,
/* Billing Set */
SolutionOrderItem.BillingBlockReason,
/* Item - Sales Set */
SolutionOrderItem.AdditionalCustomerGroup1,
SolutionOrderItem.AdditionalCustomerGroup2,
SolutionOrderItem.AdditionalCustomerGroup3,
SolutionOrderItem.AdditionalCustomerGroup4,
SolutionOrderItem.AdditionalCustomerGroup5,
SolutionOrderItem.ServiceDocItemRejectionReason,
/* Organization Unit Set */
SolutionOrderItem.SalesOrganizationOrgUnitID,
SolutionOrderItem.SalesOfficeOrgUnitID,
SolutionOrderItem.SalesGroupOrgUnitID,
SolutionOrderItem.DistributionChannel,
SolutionOrderItem.Division,
SolutionOrderItem.ServiceOrganization,
/* Organizational units with the S/4 SD codes */
SolutionOrderItem.SalesOrganization,
SolutionOrderItem.SalesOffice,
SolutionOrderItem.SalesGroup,
/* Sales Organization */
SolutionSalesOrganization.CompanyCode as CompanyCode,
/* Status */
SolutionOrderItem.ServiceDocumentItemStatus,
@Semantics.booleanIndicator:true
SolutionOrderItem.ServiceDocumentItemIsReleased,
// ServiceOrderItem.ServiceDocumentItemIsQuotation,
@Semantics.booleanIndicator:true
SolutionOrderItem.ServiceDocumentItemHasError,
SolutionOrderItem.SrvcDocItmDeliveryStatus,
// ServiceOrderItem.SrvcDocItmGoodsIssueStatus,
SolutionOrderItem.ServiceDocItemBillingStatus,
// ServiceOrderItem.SrvcDocItmIsReleasedForBilling,
@Semantics.booleanIndicator:true
SolutionOrderItem.ServiceDocumentItemIsRejected,
@Semantics.booleanIndicator:true
SolutionOrderItem.ServiceDocumentItemIsOpen,
// ServiceOrderItem.QuotationIsAccepted,
SolutionOrderItem.SrvcDocItemCreditStatus,
/* Item - Pricing */
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
SolutionOrderItem.ServiceDocumentItemNetAmount,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
SolutionOrderItem.ServiceDocItemGrossAmount,
/* Item Product */
SolutionOrderItem.SrvcMaterialPricingGroup,
SolutionOrderItem.ProductGroup1,
SolutionOrderItem.ProductGroup2,
SolutionOrderItem.ProductGroup3,
SolutionOrderItem.ProductGroup4,
SolutionOrderItem.ProductGroup5,
@EndUserText.label: 'Product Hierarchy'
cast( SolutionOrderItem.ProductHierarchy as prodh_d ) as ProductHierarchy,
/* Reference Object Details */
SolutionOrdItemRefObj.SrvcRefObjIsMainObject,
SolutionOrdItemRefObj.ProductUUID,
SolutionOrdItemRefObj.SerialNumber,
SolutionOrdItemRefObj.Equipment,
SolutionOrdItemRefObj.ServiceRefObjectSequenceNumber,
SolutionOrdItemRefObj.ServiceReferenceObjectType,
SolutionOrdItemRefObj.ServiceReferenceObjectUUID,
@EndUserText.label: 'Functional Location'
cast( SolutionOrdItemRefObj.FunctionalLocation as vdm_eam_tplnr ) as FunctionalLocation,
/* Project Specific Fields */
@EndUserText.label: 'Project Start Date'
tstmp_to_dats( SolutionDocumentProjStart.SrvcDocApptStartDateTime,
abap_system_timezone( $session.client,'NULL' ),
$session.client,
'NULL' ) as ProjectStartDate,
@EndUserText.label: 'Project End Date'
tstmp_to_dats( SolutionDocumentProjEnd.SrvcDocApptStartDateTime,
abap_system_timezone( $session.client,'NULL' ),
$session.client,
'NULL' ) as ProjectEndDate,
SolutionOrderItem.ResponsibleCostCenter,
SolutionOrderItem.EnterpriseProjectServiceOrg,
/* Subscription Billing Specific Fields */
cast( SolutionOrderItem.ServiceContrItemStartDateTime as sc_tstfro ) as ServiceContrItemStartDateTime,
cast( SolutionOrderItem.ServiceContrItemEndDateTime as sc_tstto ) as ServiceContrItemEndDateTime,
SolutionSubsPrcgDate.SrvcDocApptStartDateTime as SubscrpnBillgItmPrcgDateTime,
SolutionDurationSubsWitPer.SrvcDocDurationValue as SubscrpnWithdrawalPeriod,
SolutionDurationSubsFixTer.SrvcDocDurationValue as SubscriptionFixedTerm,
SolutionDurationSubsTerNot.SrvcDocDurationValue as SubscriptionTermOfNotice,
SolutionDurationSubsMinTer.SrvcDocDurationValue as SubscriptionMinimumTerm,
SolutionDurationSubsRenTer.SrvcDocDurationValue as SubscriptionRenewalPeriod,
SolutionDurationSubsDefTer.SrvcDocDurationValue as SubscriptionExpectedTerm,
@Semantics.booleanIndicator:true
SolutionOrderItem.MidBillgCycExprtnIsAllowed,
@Semantics.booleanIndicator:true
SolutionOrderItem.SubscrpnContrTrmsAreSpecified,
SolutionOrderItem.SubscriptionBillingCycle,
/* Associations */
/* Keys */
_ServiceObjType,
_ServiceDocument,
/* Item - Product */
_BaseUnit_2,
_SalesUnit,
/* Pricing Parameter Set */
_TransactionCurrency
}
where
SolutionOrderItem.ServiceObjectType = 'BUS2000172'
and SolutionOrderItem.ServiceDocumentTemplateType is initial
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTMGMTPARTNER",
"I_SALESORGANIZATION",
"I_SERVICEDOCUMENTDURATION",
"I_SERVICEDOCUMENTENHCD",
"I_SERVICEDOCUMENTITEMENHCD",
"I_SERVICEDOCUMENTREFOBJECT",
"I_SRVCDOCAPPOINTMENT"
],
"ASSOCIATED":
[
"E_SERVICEDOCUMENT",
"E_SERVICEDOCUMENTITEM",
"I_CURRENCY",
"I_CUSTMGMTBUSOBJTYPE",
"I_SERVICEDOCUMENTENHCD",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_SERVICEDOCUMENTITEMENHCD"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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