A_BusSolnOrdSubscrpnBillgItem
Subscription Billing Item
A_BusSolnOrdSubscrpnBillgItem is a Composite CDS View that provides data about "Subscription Billing Item" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 44 fields with key fields BusinessSolutionOrder, BusinessSolutionOrderItem. It has 11 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentItemEnhcd | I_ServiceDocumentItemEnhcd | from |
Associations (11)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | A_BusinessSolutionOrder | _BusinessSolutionOrder | $projection.BusinessSolutionOrder = _BusinessSolutionOrder.BusinessSolutionOrder |
| [0..*] | A_BusSolnOrdItmRateElement | _RateElements | $projection.BusinessSolutionOrder = _RateElements.BusinessSolutionOrder and $projection.BusinessSolutionOrderItem = _RateElements.BusinessSolutionOrderItem |
| [0..*] | A_BusSolnOrdItmSubscrpnPrParam | _PriceParameters | $projection.BusinessSolutionOrder = _PriceParameters.BusinessSolutionOrder and $projection.BusinessSolutionOrderItem = _PriceParameters.BusinessSolutionOrderItem |
| [0..*] | A_BusSolnOrdItmSubscrpnParam | _SubscriptionParameters | $projection.BusinessSolutionOrder = _SubscriptionParameters.BusinessSolutionOrder and $projection.BusinessSolutionOrderItem = _SubscriptionParameters.BusinessSolutionOrderItem |
| [0..*] | A_BusSolnOrdItmSubscrpnPrAgrmt | _SubscriptionPriceAgreements | $projection.BusinessSolutionOrder = _SubscriptionPriceAgreements.BusinessSolutionOrder and $projection.BusinessSolutionOrderItem = _SubscriptionPriceAgreements.BusinessSolutionOrderItem |
| [0..1] | I_CustMgmtExtRefID | _ExternalReference | $projection.BusinessSolutionOrder = _ExternalReference.CustMgmtDocument and _ExternalReference.CustMgmtObjectType = 'BUS2000172' and $projection.BusinessSolutionOrderItem = _ExternalReference.CustMgmtDocumentItem and _ExternalReference.CustMgmtExtRefIDType = '0013' |
| [0..*] | A_BusSolnOrdItmFUPSubscrpn | _SubscriptionBilling | $projection.BusinessSolutionOrder = _SubscriptionBilling.BusinessSolutionOrder and $projection.BusinessSolutionOrderItem = _SubscriptionBilling.BusinessSolutionOrderItem |
| [0..1] | E_ServiceDocumentItem | _Extension | _Extension.ServiceCategory = 'BUS2000172' and $projection.BusinessSolutionOrder = _Extension.ServiceOrderItem and $projection.BusinessSolutionOrderItem = _Extension.ServiceLineExternalID |
| [0..*] | I_SrvcDocAppointment | _SrvcDocAppointment | _SrvcDocAppointment.SrvcMgmtObjectUUID = $projection.BusinessSolutionOrderItemUUID |
| [0..1] | I_UnitOfMeasure | _QuantityUnit | $projection.QuantityUnit = _QuantityUnit.UnitOfMeasure |
| [0..*] | A_BusSolnOrdItmUserStatus | _UserStatus | $projection.BusinessSolutionOrder = _UserStatus.BusinessSolutionOrder and $projection.BusinessSolutionOrderItem = _UserStatus.BusinessSolutionOrderItem |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Subscription Billing Item | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AbapCatalog.sqlViewName | ABSOSUBSCRPNITM | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | true | view | |
| ObjectModel.deleteEnabled | true | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (44)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BusinessSolutionOrder | ServiceDocument | ||
| KEY | BusinessSolutionOrderItem | ServiceDocumentItem | ||
| BusSolnOrderItemCharUUID | ServiceDocumentItemCharUUID | |||
| BusinessSolutionOrderItemUUID | ServiceDocumentItemUUID | |||
| BusSolnOrdItmCategory | ServiceDocItemCategory | |||
| Product | Product | |||
| Quantity | ServiceDocumentItemQuantity | |||
| QuantityUnit | ServiceDocItemQuantityUnit | |||
| BusSolnOrdItmQtyUnitSAPCode | ||||
| BusSolnOrdItmQtyUnitISOCode | ||||
| BusSolnOrdItmDescription | ServiceDocumentItemDescription | |||
| BusSolnOrdItmExtReference | _ExternalReference | CustMgmtExtRefID | ||
| ServiceDocumentItemNetAmount | ServiceDocumentItemNetAmount | |||
| TransactionCurrency | TransactionCurrency | |||
| Language | Language | |||
| ParentServiceDocumentItemUUID | ParentServiceDocumentItemUUID | |||
| ParentBusSolnOrdItem | _ParentServiceDocItem | ServiceDocumentItem | ||
| BusSolnOrdItmIsReleased | ServiceDocumentItemIsReleased | |||
| BusSolnOrdItmDistrStatus | ||||
| BusSolnOrdItmDistrStatusName | ||||
| SubscrpnSimulationStatus | ||||
| SubscrpnSimulationStatusName | ||||
| SubscriptionStartDateTime | ServiceContrItemStartDateTime | |||
| SubscriptionEndDateTime | ServiceContrItemEndDateTime | |||
| SubscrpnBillgItmPrcgDateTime | ||||
| SubscrpnWithdrawalPeriod | ||||
| SubscriptionFixedTerm | ||||
| SubscriptionTermOfNotice | ||||
| SubscriptionMinimumTerm | ||||
| SubscriptionRenewalPeriod | ||||
| SubscriptionExpectedTerm | ||||
| MidBillgCycExprtnIsAllowed | MidBillgCycExprtnIsAllowed | |||
| SubscriptionBillingCycle | SubscriptionBillingCycle | |||
| SoldToParty | SoldToParty | |||
| ShipToParty | ShipToParty | |||
| BillToParty | BillToParty | |||
| PayerParty | PayerParty | |||
| _BusinessSolutionOrder | _BusinessSolutionOrder | |||
| _RateElements | _RateElements | |||
| _PriceParameters | _PriceParameters | |||
| _SubscriptionParameters | _SubscriptionParameters | |||
| _SubscriptionPriceAgreements | _SubscriptionPriceAgreements | |||
| _SubscriptionBilling | _SubscriptionBilling | |||
| _UserStatus | _UserStatus |
@EndUserText.label: 'Subscription Billing Item'
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM: {
viewType: #COMPOSITE,
lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
sqlViewName: 'ABSOSUBSCRPNITM',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
createEnabled: true,
updateEnabled: true,
deleteEnabled: true,
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #L
}
}
@Metadata.ignorePropagatedAnnotations: true
define view A_BusSolnOrdSubscrpnBillgItem
as select from I_ServiceDocumentItemEnhcd
association [1..1] to A_BusinessSolutionOrder as _BusinessSolutionOrder on $projection.BusinessSolutionOrder = _BusinessSolutionOrder.BusinessSolutionOrder
association [0..*] to A_BusSolnOrdItmRateElement as _RateElements on $projection.BusinessSolutionOrder = _RateElements.BusinessSolutionOrder
and $projection.BusinessSolutionOrderItem = _RateElements.BusinessSolutionOrderItem
association [0..*] to A_BusSolnOrdItmSubscrpnPrParam as _PriceParameters on $projection.BusinessSolutionOrder = _PriceParameters.BusinessSolutionOrder
and $projection.BusinessSolutionOrderItem = _PriceParameters.BusinessSolutionOrderItem
association [0..*] to A_BusSolnOrdItmSubscrpnParam as _SubscriptionParameters on $projection.BusinessSolutionOrder = _SubscriptionParameters.BusinessSolutionOrder
and $projection.BusinessSolutionOrderItem = _SubscriptionParameters.BusinessSolutionOrderItem
association [0..*] to A_BusSolnOrdItmSubscrpnPrAgrmt as _SubscriptionPriceAgreements on $projection.BusinessSolutionOrder = _SubscriptionPriceAgreements.BusinessSolutionOrder
and $projection.BusinessSolutionOrderItem = _SubscriptionPriceAgreements.BusinessSolutionOrderItem
association [0..1] to I_CustMgmtExtRefID as _ExternalReference on $projection.BusinessSolutionOrder = _ExternalReference.CustMgmtDocument
and _ExternalReference.CustMgmtObjectType = 'BUS2000172'
and $projection.BusinessSolutionOrderItem = _ExternalReference.CustMgmtDocumentItem
and _ExternalReference.CustMgmtExtRefIDType = '0013'
association [0..*] to A_BusSolnOrdItmFUPSubscrpn as _SubscriptionBilling on $projection.BusinessSolutionOrder = _SubscriptionBilling.BusinessSolutionOrder
and $projection.BusinessSolutionOrderItem = _SubscriptionBilling.BusinessSolutionOrderItem
association [0..1] to E_ServiceDocumentItem as _Extension on _Extension.ServiceCategory = 'BUS2000172'
and $projection.BusinessSolutionOrder = _Extension.ServiceOrderItem
and $projection.BusinessSolutionOrderItem = _Extension.ServiceLineExternalID
association [0..*] to I_SrvcDocAppointment as _SrvcDocAppointment on _SrvcDocAppointment.SrvcMgmtObjectUUID = $projection.BusinessSolutionOrderItemUUID
association [0..1] to I_UnitOfMeasure as _QuantityUnit on $projection.QuantityUnit = _QuantityUnit.UnitOfMeasure
association [0..*] to A_BusSolnOrdItmUserStatus as _UserStatus on $projection.BusinessSolutionOrder = _UserStatus.BusinessSolutionOrder
and $projection.BusinessSolutionOrderItem = _UserStatus.BusinessSolutionOrderItem
{
key ServiceDocument as BusinessSolutionOrder,
key ServiceDocumentItem as BusinessSolutionOrderItem,
@ObjectModel.readOnly: true
@Semantics.uuid: true
@Consumption.hidden: true
ServiceDocumentItemCharUUID as BusSolnOrderItemCharUUID,
@ObjectModel.readOnly: true
ServiceDocumentItemUUID as BusinessSolutionOrderItemUUID,
@ObjectModel.sapObjectNodeTypeReference: 'ServiceDocumentItemCategory'
ServiceDocItemCategory as BusSolnOrdItmCategory,
Product,
@Semantics.quantity.unitOfMeasure: 'QuantityUnit'
@Semantics.quantity.unitOfMeasureSapCode: 'BusSolnOrdItmQtyUnitSAPCode'
@Semantics.quantity.unitOfMeasureIsoCode: 'BusSolnOrdItmQtyUnitISOCode'
ServiceDocumentItemQuantity as Quantity,
@Semantics.unitOfMeasure: true
ServiceDocItemQuantityUnit as QuantityUnit,
cast(_QuantityUnit.UnitOfMeasureSAPCode as sd_ord_qty_sapunit preserving type) as BusSolnOrdItmQtyUnitSAPCode,
cast(_QuantityUnit.UnitOfMeasureISOCode as sd_ord_qty_isounit preserving type) as BusSolnOrdItmQtyUnitISOCode,
ServiceDocumentItemDescription as BusSolnOrdItmDescription,
_ExternalReference.CustMgmtExtRefID as BusSolnOrdItmExtReference,
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
@ObjectModel.readOnly: true
ServiceDocumentItemNetAmount,
@ObjectModel.sapObjectNodeTypeReference: 'Currency'
TransactionCurrency,
Language,
@ObjectModel.readOnly: true
ParentServiceDocumentItemUUID,
@ObjectModel.readOnly: true
_ParentServiceDocItem.ServiceDocumentItem as ParentBusSolnOrdItem,
/* STATUS */
case ServiceDocumentItemStatus
when 'C' then 'X'
else ''
end as BusSolnOrdItmIsCompleted,
ServiceDocumentItemIsReleased as BusSolnOrdItmIsReleased,
@ObjectModel.readOnly: true
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_DISTR_EXIT'
cast( '' as abap.char( 1 ) ) as BusSolnOrdItmDistrStatus,
@ObjectModel.readOnly: true
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_DISTR_EXIT'
cast( '' as abap.char( 60 ) ) as BusSolnOrdItmDistrStatusName,
@ObjectModel.readOnly: true
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_SUB_SIM_EXIT'
cast( '' as abap.char ( 1 )) as SubscrpnSimulationStatus,
@ObjectModel.readOnly: true
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_SUB_SIM_EXIT'
cast( '' as abap.char( 60 )) as SubscrpnSimulationStatusName,
/* DATES */
@Semantics.dateTime: true
ServiceContrItemStartDateTime as SubscriptionStartDateTime,
@Semantics.dateTime: true
@ObjectModel.readOnly: true
ServiceContrItemEndDateTime as SubscriptionEndDateTime,
@Semantics.dateTime: true
_SrvcDocAppointment[1:SrvcDocAppointmentType = 'SUBS_PRIC_DT'].SrvcDocApptStartDateTime as SubscrpnBillgItmPrcgDateTime,
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_ITM_DUR_EXIT'
cast (0 as abap.dec(13)) as SubscrpnWithdrawalPeriod,
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_ITM_DUR_EXIT'
cast (0 as abap.dec(13)) as SubscriptionFixedTerm,
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_ITM_DUR_EXIT'
cast (0 as abap.dec(13)) as SubscriptionTermOfNotice,
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_ITM_DUR_EXIT'
cast (0 as abap.dec(13)) as SubscriptionMinimumTerm,
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_ITM_DUR_EXIT'
cast (0 as abap.dec(13)) as SubscriptionRenewalPeriod,
@ObjectModel.virtualElement:true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOLO_API_ITM_DUR_EXIT'
cast (0 as abap.dec(13)) as SubscriptionExpectedTerm,
case SubscrpnContrTrmsAreSpecified
when 'Y' then 'X'
when ' ' then 'X'
else ''
end as SubscrpnContrTrmsAreSpecified,
MidBillgCycExprtnIsAllowed,
@ObjectModel.readOnly: true
SubscriptionBillingCycle,
/* PARTNERS */
SoldToParty,
ShipToParty,
BillToParty,
PayerParty,
_BusinessSolutionOrder,
_RateElements,
_PriceParameters,
_SubscriptionParameters,
_SubscriptionPriceAgreements,
_SubscriptionBilling,
_UserStatus
}
where
ServiceObjectType = 'BUS2000172'
and ServiceDocumentItemObjectType = 'BUS2000189'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTMGMTEXTREFID",
"I_SERVICEDOCUMENTITEMENHCD",
"I_SRVCDOCAPPOINTMENT",
"I_UNITOFMEASURE"
],
"ASSOCIATED":
[
"A_BUSINESSSOLUTIONORDER",
"A_BUSSOLNORDITMFUPSUBSCRPN",
"A_BUSSOLNORDITMRATEELEMENT",
"A_BUSSOLNORDITMSUBSCRPNPARAM",
"A_BUSSOLNORDITMSUBSCRPNPRAGRMT",
"A_BUSSOLNORDITMSUBSCRPNPRPARAM",
"A_BUSSOLNORDITMUSERSTATUS",
"E_SERVICEDOCUMENTITEM",
"I_CUSTMGMTEXTREFID",
"I_SRVCDOCAPPOINTMENT",
"I_UNITOFMEASURE"
],
"BASE":
[],
"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