A_BusinessSolutionOrder
Solution Order Header
A_BusinessSolutionOrder is a Composite CDS View that provides data about "Solution Order Header" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentEnhcd) and exposes 45 fields with key field BusinessSolutionOrder. It has 18 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentEnhcd | I_ServiceDocumentEnhcd | from |
Associations (18)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | A_BusSolnOrderServiceItem | _ServiceItem | $projection.BusinessSolutionOrder = _ServiceItem.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrderExpenseItem | _ExpenseItem | $projection.BusinessSolutionOrder = _ExpenseItem.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdSrvcPrtItem | _ServicePartItem | $projection.BusinessSolutionOrder = _ServicePartItem.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrderSalesItem | _SalesItem | $projection.BusinessSolutionOrder = _SalesItem.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdSrvcContractItem | _ServiceContractItem | $projection.BusinessSolutionOrder = _ServiceContractItem.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdSubscrpnBillgItem | _SubscriptionBillingItem | $projection.BusinessSolutionOrder = _SubscriptionBillingItem.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdEntProjectItem | _EnterpriseProjectItem | $projection.BusinessSolutionOrder = _EnterpriseProjectItem.BusinessSolutionOrder |
| [0..*] | A_BusinessSolutionOrderText | _Text | $projection.BusinessSolutionOrder = _Text.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrderFUPSalesOrder | _SalesOrder | $projection.BusinessSolutionOrder = _SalesOrder.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdFUPServiceOrder | _ServiceOrder | $projection.BusinessSolutionOrder = _ServiceOrder.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdFUPServiceContract | _ServiceContract | $projection.BusinessSolutionOrder = _ServiceContract.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdFUPSubscrpn | _SubscriptionBilling | $projection.BusinessSolutionOrder = _SubscriptionBilling.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdFUPEntProject | _EnterpriseProject | $projection.BusinessSolutionOrder = _EnterpriseProject.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdItemRelationships | _ItemRelationships | $projection.BusinessSolutionOrder = _ItemRelationships.BusinessSolutionOrder |
| [0..1] | I_CustMgmtExtRefID | _ExternalReference | _ExternalReference.CustMgmtObjectType = 'BUS2000172' and $projection.BusinessSolutionOrder = _ExternalReference.CustMgmtDocument and _ExternalReference.CustMgmtExtRefIDType = '0012' |
| [0..1] | E_ServiceDocument | _Extension | _Extension.ServiceCategory = 'BUS2000172' and $projection.BusinessSolutionOrder = _Extension.ServiceOrder |
| [0..*] | A_BusSolnOrdUserStatus | _UserStatus | $projection.BusinessSolutionOrder = _UserStatus.BusinessSolutionOrder |
| [0..1] | I_ServiceDocumentPredecessor | _CPQQuotation | $projection.BusinessSolutionOrderUUID = _CPQQuotation.ServiceDocumentUUID and _CPQQuotation.ServiceDocPrdcssrBusObjType = 'CPQQUOTH' |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Solution Order Header | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AbapCatalog.sqlViewName | ABUSSOLNORDER | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.representativeKey | BusinessSolutionOrder | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | true | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (45)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BusinessSolutionOrder | ServiceDocument | ||
| BusSolnOrdType | ServiceDocumentType | |||
| BusinessSolutionOrderUUID | ServiceDocumentUUID | |||
| BusSolnOrdDescription | ServiceDocumentDescription | |||
| Language | Language | |||
| BusSolnOrdExtReference | _ExternalReference | CustMgmtExtRefID | ||
| PaymentTerms | PaymentTerms | |||
| CreatedByUser | ServiceDocumentCreatedByUser | |||
| CreationDateTime | ServiceDocCreationDateTime | |||
| LastChangedByUser | ServiceDocumentChangedByUser | |||
| LastChangeDateTime | ServiceDocChangedDateTime | |||
| BusSolnOrdIsReleased | ServiceDocumentIsReleased | |||
| ServiceDocumentHasError | ServiceDocumentHasError | |||
| PurchaseOrderByCustomer | PurchaseOrderByCustomer | |||
| CustomerPurchaseOrderDate | CustomerPurchaseOrderDate | |||
| ServiceDocNetAmount | ServiceDocNetAmount | |||
| TransactionCurrency | TransactionCurrency | |||
| CPQQuotation | ||||
| SalesOrganization | SalesOrganization | |||
| SalesOrganizationOrgUnitID | SalesOrganizationOrgUnitID | |||
| DistributionChannel | DistributionChannel | |||
| Division | Division | |||
| SalesOffice | SalesOffice | |||
| SalesGroup | SalesGroup | |||
| SoldToParty | SoldToParty | |||
| ShipToParty | ShipToParty | |||
| BillToParty | BillToParty | |||
| PayerParty | PayerParty | |||
| PersonResponsible | ResponsibleEmployee | |||
| ContactPerson | ContactPerson | |||
| _ServiceOrder | _ServiceOrder | |||
| _SalesOrder | _SalesOrder | |||
| _ServiceContract | _ServiceContract | |||
| _SubscriptionBilling | _SubscriptionBilling | |||
| _EnterpriseProject | _EnterpriseProject | |||
| _ServiceItem | _ServiceItem | |||
| _SalesItem | _SalesItem | |||
| _ExpenseItem | _ExpenseItem | |||
| _ServicePartItem | _ServicePartItem | |||
| _ServiceContractItem | _ServiceContractItem | |||
| _SubscriptionBillingItem | _SubscriptionBillingItem | |||
| _EnterpriseProjectItem | _EnterpriseProjectItem | |||
| _Text | _Text | |||
| _ItemRelationships | _ItemRelationships | |||
| _UserStatus | _UserStatus |
@EndUserText.label: 'Solution Order Header'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog: {
sqlViewName: 'ABUSSOLNORDER',
compiler.compareFilter: true,
preserveKey: true
}
@VDM: {
viewType: #COMPOSITE,
lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
representativeKey: 'BusinessSolutionOrder',
createEnabled: true,
updateEnabled: true,
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #L
}
}
@Metadata.ignorePropagatedAnnotations: true
define view A_BusinessSolutionOrder
as select from I_ServiceDocumentEnhcd
association [0..*] to A_BusSolnOrderServiceItem as _ServiceItem on $projection.BusinessSolutionOrder = _ServiceItem.BusinessSolutionOrder
association [0..*] to A_BusSolnOrderExpenseItem as _ExpenseItem on $projection.BusinessSolutionOrder = _ExpenseItem.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdSrvcPrtItem as _ServicePartItem on $projection.BusinessSolutionOrder = _ServicePartItem.BusinessSolutionOrder
association [0..*] to A_BusSolnOrderSalesItem as _SalesItem on $projection.BusinessSolutionOrder = _SalesItem.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdSrvcContractItem as _ServiceContractItem on $projection.BusinessSolutionOrder = _ServiceContractItem.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdSubscrpnBillgItem as _SubscriptionBillingItem on $projection.BusinessSolutionOrder = _SubscriptionBillingItem.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdEntProjectItem as _EnterpriseProjectItem on $projection.BusinessSolutionOrder = _EnterpriseProjectItem.BusinessSolutionOrder
//association [0..*] to A_BusSolnOrderBundleItem as _BundleItem on $projection.BusinessSolutionOrder = _BundleItem.BusinessSolutionOrder
association [0..*] to A_BusinessSolutionOrderText as _Text on $projection.BusinessSolutionOrder = _Text.BusinessSolutionOrder
association [0..*] to A_BusSolnOrderFUPSalesOrder as _SalesOrder on $projection.BusinessSolutionOrder = _SalesOrder.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdFUPServiceOrder as _ServiceOrder on $projection.BusinessSolutionOrder = _ServiceOrder.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdFUPServiceContract as _ServiceContract on $projection.BusinessSolutionOrder = _ServiceContract.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdFUPSubscrpn as _SubscriptionBilling on $projection.BusinessSolutionOrder = _SubscriptionBilling.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdFUPEntProject as _EnterpriseProject on $projection.BusinessSolutionOrder = _EnterpriseProject.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdItemRelationships as _ItemRelationships on $projection.BusinessSolutionOrder = _ItemRelationships.BusinessSolutionOrder
association [0..1] to I_CustMgmtExtRefID as _ExternalReference on _ExternalReference.CustMgmtObjectType = 'BUS2000172'
and $projection.BusinessSolutionOrder = _ExternalReference.CustMgmtDocument
and _ExternalReference.CustMgmtExtRefIDType = '0012'
association [0..1] to E_ServiceDocument as _Extension on _Extension.ServiceCategory = 'BUS2000172'
and $projection.BusinessSolutionOrder = _Extension.ServiceOrder
association [0..*] to A_BusSolnOrdUserStatus as _UserStatus on $projection.BusinessSolutionOrder = _UserStatus.BusinessSolutionOrder
association [0..1] to I_ServiceDocumentPredecessor as _CPQQuotation on $projection.BusinessSolutionOrderUUID = _CPQQuotation.ServiceDocumentUUID
and _CPQQuotation.ServiceDocPrdcssrBusObjType = 'CPQQUOTH'
{
key ServiceDocument as BusinessSolutionOrder,
@ObjectModel.sapObjectNodeTypeReference: 'ServiceDocumentType'
ServiceDocumentType as BusSolnOrdType,
ServiceDocumentUUID as BusinessSolutionOrderUUID,
ServiceDocumentDescription as BusSolnOrdDescription,
Language,
_ExternalReference.CustMgmtExtRefID as BusSolnOrdExtReference,
@ObjectModel.sapObjectNodeTypeReference: 'PaymentTerms'
PaymentTerms,
ServiceDocumentCreatedByUser as CreatedByUser,
ServiceDocCreationDateTime as CreationDateTime,
ServiceDocumentChangedByUser as LastChangedByUser,
ServiceDocChangedDateTime as LastChangeDateTime,
/* STATUS */
ServiceDocumentIsReleased as BusSolnOrdIsReleased,
case ServiceDocumentStatus
when 'C' then 'X'
else ''
end as BusSolnOrdIsCompleted,
ServiceDocumentHasError,
PurchaseOrderByCustomer,
CustomerPurchaseOrderDate,
@ObjectModel.readOnly: true
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceDocNetAmount,
@ObjectModel.sapObjectNodeTypeReference: 'Currency'
TransactionCurrency,
/* CPQ Quotation Reference*/
cast ( _CPQQuotation.CustMgmtPrdcssrTransactionKey as abap.char( 10 ) ) as CPQQuotation,
/* ORG */
SalesOrganization,
SalesOrganizationOrgUnitID,
DistributionChannel,
Division,
SalesOffice,
SalesGroup,
/* PARTNERS */
SoldToParty,
ShipToParty,
BillToParty,
PayerParty,
ResponsibleEmployee as PersonResponsible,
ContactPerson,
_ServiceOrder,
_SalesOrder,
_ServiceContract,
_SubscriptionBilling,
_EnterpriseProject,
_ServiceItem,
_SalesItem,
_ExpenseItem,
_ServicePartItem,
_ServiceContractItem,
_SubscriptionBillingItem,
_EnterpriseProjectItem,
// _BundleItem,
_Text,
_ItemRelationships,
_UserStatus
}
where
ServiceObjectType = 'BUS2000172'
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