A_SubscriptionContractItem

DDL: A_SUBSCRIPTIONCONTRACTITEM Type: view_entity CONSUMPTION

Subscription Contract Item

A_SubscriptionContractItem is a Consumption CDS View that provides data about "Subscription Contract Item" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 89 fields with key fields SubscriptionContract, SubscriptionContractItem. It has 19 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ServiceDocumentItemEnhcd I_ServiceDocumentItemEnhcd from

Associations (19)

CardinalityTargetAliasCondition
[0..*] A_SubscrpnContrItmPrElmnt _PriceElement $projection.SubscriptionContract = _PriceElement.SubscriptionContract and $projection.SubscriptionContractItem = _PriceElement.SubscriptionContractItem
[0..*] A_SubscrpnContrItmTechRsce _TechnicalResource $projection.SubscriptionContract = _TechnicalResource.SubscriptionContract and $projection.SubscriptionContractItem = _TechnicalResource.SubscriptionContractItem
[0..*] A_SubscrpnContrItmText _Text $projection.SubscriptionContract = _Text.SubscriptionContract
[0..*] A_SubscrpnContrItmConfign _Configuration $projection.ConfigurationNumber = _Configuration.VariantConfigurationInstance
[1] A_SubscriptionContract _SubscriptionContract $projection.SubscriptionContract = _SubscriptionContract.SubscriptionContract
[0..*] A_SubscrpnContrItmDteParam _DateParameter $projection.SubscriptionContract = _DateParameter.SubscriptionContract and $projection.SubscriptionContractItem = _DateParameter.SubscriptionContractItem
[0..*] A_SubscrpnContrItmStrParam _StringParameter $projection.SubscriptionContract = _StringParameter.SubscriptionContract and $projection.SubscriptionContractItem = _StringParameter.SubscriptionContractItem
[0..*] A_SubscrpnContrItmNmrcParam _NumericParameter $projection.SubscriptionContract = _NumericParameter.SubscriptionContract and $projection.SubscriptionContractItem = _NumericParameter.SubscriptionContractItem
[0..*] A_SubscrpnContrItmTblParam _TableParameter $projection.SubscriptionContract = _TableParameter.SubscriptionContract and $projection.SubscriptionContractItem = _TableParameter.SubscriptionContractItem
[0..1] E_ServiceDocumentItem _Extension _Extension.ServiceCategory = 'BUS2000266' and $projection.SubscriptionContract = _Extension.ServiceOrderItem and $projection.SubscriptionContractItem = _Extension.ServiceLineExternalID
[0..1] I_SubscrpnContrItmExtRef _ExternalReference $projection.SubscriptionContract = _ExternalReference.SubscriptionContract and $projection.SubscriptionContractItem = _ExternalReference.SubscriptionContractItem
[0..*] A_SbscrContrItmPrdcssrQtnItm _PredecessorSolnQtnItem $projection.SubscriptionContract = _PredecessorSolnQtnItem.SubscriptionContract and $projection.SubscriptionContractItem = _PredecessorSolnQtnItem.SubscriptionContractItem
[0..*] A_SbscrContrItmPrdcssrOrdItm _PredecessorSubscrpnOrdItem $projection.SubscriptionContract = _PredecessorSubscrpnOrdItem.SubscriptionContract and $projection.SubscriptionContractItem = _PredecessorSubscrpnOrdItem.SubscriptionContractItem
[0..*] A_SbscrContrItmFUPOrdItm _FollowUpSubscrpnOrdItem $projection.SubscriptionContract = _FollowUpSubscrpnOrdItem.SubscriptionContract and $projection.SubscriptionContractItem = _FollowUpSubscrpnOrdItem.SubscriptionContractItem
[0..*] A_SubscrpnContrItmPrtn _ItemPartner $projection.SubscriptionContract = _ItemPartner.SubscriptionContract and $projection.SubscriptionContractItem = _ItemPartner.SubscriptionContractItem
[0..1] I_UnitOfMeasure _UnitOfMeasure $projection.QuantityUnit = _UnitOfMeasure.UnitOfMeasure
[0..*] I_UnitOfMeasure _UoMPrimaryTime _UoMPrimaryTime.IsPrimaryUnitForISOCode = 'X' and _UoMPrimaryTime.UnitOfMeasureDimension = 'TIME'
[0..*] I_ServiceDocumentDurationEnhcd _ServDocDuration _ServDocDuration.ServiceObjectType = 'BUS2000266' and $projection.SubscriptionContract = _ServDocDuration.ServiceDocument and $projection.SubscriptionContractItem = _ServDocDuration.ServiceDocumentItem
[0..1] I_UnitOfMeasure _UoMAutoRnwlStartDurationUnit I_ServiceDocumentItemEnhcd.SrvcContrItemRnwlDurationUnit = _UoMAutoRnwlStartDurationUnit.UnitOfMeasure

Annotations (11)

NameValueLevelField
EndUserText.label Subscription Contract Item view
VDM.viewType #CONSUMPTION view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
AccessControl.authorizationCheck #CHECK view
ObjectModel.createEnabled false view
ObjectModel.updateEnabled false view
ObjectModel.deleteEnabled false view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
Metadata.ignorePropagatedAnnotations true view

Fields (89)

KeyFieldSource TableSource FieldDescription
KEY SubscriptionContract ServiceDocument
KEY SubscriptionContractItem ServiceDocumentItem
SubscriptionContractExternalID SubscriptionContract
SubscrpnContractItemCategory ServiceDocItemCategory
Product
Quantity ServiceDocumentItemQuantity
QuantityUnit ServiceDocItemQuantityUnit
RequestedQuantityISOUnit _UnitOfMeasure UnitOfMeasureISOCode
RequestedQuantitySAPUnit _UnitOfMeasure UnitOfMeasureSAPCode
TransactionCurrency TransactionCurrency
SubscrpnContrItmGrossAmount ServiceDocItemGrossAmount
SubscrpnContrItmNetAmount ServiceDocumentItemNetAmount
SubscrpnContrItmTaxAmount ServiceDocumentItemTaxAmount
SrvcDocItmRecrrgChrgNetAmount SrvcDocItmRecrrgChrgNetAmount
SrvcDocItmRecrrgChrgGrossAmt SrvcDocItmRecrrgChrgGrossAmt
SrvcDocItmRecrrgChrgTaxAmount SrvcDocItmRecrrgChrgTaxAmount
SrvcDocItmRecrrgChrgDuration SrvcDocItmRecrrgChrgDuration
SrvcDocItmRecrrgChrgDurnUnit SrvcDocItmRecrrgChrgDurnUnit
SubscriptionContrItmDesc ServiceDocumentItemDescription
Language Language
ParentItem
SbscrContrItmTmeSliceStatus
SbscrContrItmCanclnProcedure SrvcDocItmCanclnProcedure
SbscrContrItemCanclnReason ServiceDocumentItmCanclnReason
SbscrContrItemCanclnParty ServiceDocumentItemCanclnParty
SubscrpnContractItemIsRejected ServiceDocumentItemIsRejected
SubscrpnContrItmStartDateTime ServiceContrItemStartDateTime
SubscrpnContrItmEndDateTime ServiceContrItemEndDateTime
SbscrContrTimeSliceStrtDteTme SrvcDocItmTmeSliceStrtDteTme
SbscrContrTimeSliceEndDteTme SrvcDocItmTmeSliceEndDteTme
SubscrpnContrItemDuration
SubscrpnContrItemDurnUnit
SubscrpnContrItmDurnUntISOCode
SubscrpnContrItmDurnUntSAPCode
SubscrpnContrAutoRnwlIsActv SubscrpnContrAutoRnwlIsActv
SubscrpnContrAutoRnwlDurn
SubscrpnContrAutoRnwlDurnUnit
SbscrContrArnwlDurnUntISOCode
SbscrContrArnwlDurnUntSAPCode
SubscrpnContrItmRnwlDteTme SrvcContrItemRenewalDateTime
SubscrpnContrArnwlStrtDurn SrvcContrItemRnwlDuration
SubscrpnContrArnwlStrtDurnUnit SrvcContrItemRnwlDurationUnit
SbsConArnwlStrtDurnUntISOCode
SbsConArnwlStrtDurnUntSAPCode
SbscrContrItmBizValdStrtDteTme SbscrContrItmBizValdStrtDteTme
SbscrContrItmBizValdEndDteTme SbscrContrItmBizValdEndDteTme
SbscrContrItmGrcePerdDteTme SrvcDocItmGrcePerdEndDateTime
SbscrContrItmGrcePerd
SbscrContrItmGrcePerdUntISOCd
SbscrContrItmGrcePerdUntSAPCd
SoldToParty SoldToParty
ShipToParty ShipToParty
PersonResponsible
BillToParty BillToParty
PayerParty PayerParty
ContactPerson
ContractAccount ContractAccount
CABillgCycle CABillgCycle
CrsCatalogMappingVersionNumber CrsCatalogMappingVersionNumber
CustMgmtMasterAgreement CustMgmtMasterAgreement
CustMgmtMstrAgrmtItem CustMgmtMstrAgrmtItem
CustMgmtMstrAgrmtParentItem CustMgmtMstrAgrmtParentItem
SharingContractID SharingContractID
SubscrpnContractSharingGroupID SubscrpnContractSharingGroupID
ConfigurationNumber ConfigurationNumber
SrvcTransChangeProcessGroup ChangeProcessGroup
SrvcTransChangeProcess SrvcTransChangeProcess
SubscrpnContrItemIsPhased BusSolutionQtnItemIsPhased
SbscrContrItmPhasedPrdcssrItm BusSolnQtnItmPhasedPrdcssrItem
PurchaseOrderByShipToParty PurchaseOrderByShipToParty
SbscrContrPrdcssrExtID
SbscrContrSuccssrExtID
LegalContractExtReference
LegalContractItemExtReference
BillOfMaterialItemNodeNumber BillOfMaterialItemNodeNumber
SrvcDocItmProdConfignDateTime
_PriceElement _PriceElement
_TechnicalResource _TechnicalResource
_Text _Text
_DateParameter _DateParameter
_NumericParameter _NumericParameter
_StringParameter _StringParameter
_TableParameter _TableParameter
_Configuration _Configuration
_PredecessorSolnQtnItem _PredecessorSolnQtnItem
_PredecessorSubscrpnOrdItem _PredecessorSubscrpnOrdItem
_FollowUpSubscrpnOrdItem _FollowUpSubscrpnOrdItem
_ItemPartner _ItemPartner
_SubscriptionContract _SubscriptionContract
@EndUserText.label: 'Subscription Contract Item'
@VDM: {
  viewType: #CONSUMPTION,
  lifecycle.contract.type: #PUBLIC_REMOTE_API
}

@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}

@ObjectModel: {
   createEnabled: false,
   updateEnabled: false,
   deleteEnabled: false,
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #C,
     sizeCategory:   #L
   }
}
@Metadata.ignorePropagatedAnnotations: true

define view entity A_SubscriptionContractItem
  as select from I_ServiceDocumentItemEnhcd

  association [0..*] to A_SubscrpnContrItmPrElmnt      as _PriceElement                 on  $projection.SubscriptionContract     = _PriceElement.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _PriceElement.SubscriptionContractItem

  association [0..*] to A_SubscrpnContrItmTechRsce     as _TechnicalResource            on  $projection.SubscriptionContract     = _TechnicalResource.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _TechnicalResource.SubscriptionContractItem

  association [0..*] to A_SubscrpnContrItmText         as _Text                         on  $projection.SubscriptionContract = _Text.SubscriptionContract

  association [0..*] to A_SubscrpnContrItmConfign      as _Configuration                on  $projection.ConfigurationNumber = _Configuration.VariantConfigurationInstance

  association [1]    to A_SubscriptionContract         as _SubscriptionContract         on  $projection.SubscriptionContract = _SubscriptionContract.SubscriptionContract

  association [0..*] to A_SubscrpnContrItmDteParam     as _DateParameter                on  $projection.SubscriptionContract     = _DateParameter.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _DateParameter.SubscriptionContractItem

  association [0..*] to A_SubscrpnContrItmStrParam     as _StringParameter              on  $projection.SubscriptionContract     = _StringParameter.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _StringParameter.SubscriptionContractItem

  association [0..*] to A_SubscrpnContrItmNmrcParam    as _NumericParameter             on  $projection.SubscriptionContract     = _NumericParameter.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _NumericParameter.SubscriptionContractItem

  association [0..*] to A_SubscrpnContrItmTblParam     as _TableParameter               on  $projection.SubscriptionContract     = _TableParameter.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _TableParameter.SubscriptionContractItem
  association [0..1] to E_ServiceDocumentItem          as _Extension                    on  _Extension.ServiceCategory           = 'BUS2000266'
                                                                                        and $projection.SubscriptionContract     = _Extension.ServiceOrderItem
                                                                                        and $projection.SubscriptionContractItem = _Extension.ServiceLineExternalID

  association [0..1] to I_SubscrpnContrItmExtRef       as _ExternalReference            on  $projection.SubscriptionContract     = _ExternalReference.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _ExternalReference.SubscriptionContractItem

  association [0..*] to A_SbscrContrItmPrdcssrQtnItm   as _PredecessorSolnQtnItem       on  $projection.SubscriptionContract     = _PredecessorSolnQtnItem.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _PredecessorSolnQtnItem.SubscriptionContractItem

  association [0..*] to A_SbscrContrItmPrdcssrOrdItm   as _PredecessorSubscrpnOrdItem   on  $projection.SubscriptionContract     = _PredecessorSubscrpnOrdItem.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _PredecessorSubscrpnOrdItem.SubscriptionContractItem

  association [0..*] to A_SbscrContrItmFUPOrdItm       as _FollowUpSubscrpnOrdItem      on  $projection.SubscriptionContract     = _FollowUpSubscrpnOrdItem.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _FollowUpSubscrpnOrdItem.SubscriptionContractItem

  association [0..*] to A_SubscrpnContrItmPrtn         as _ItemPartner                  on  $projection.SubscriptionContract     = _ItemPartner.SubscriptionContract
                                                                                        and $projection.SubscriptionContractItem = _ItemPartner.SubscriptionContractItem
  association [0..1] to I_UnitOfMeasure                as _UnitOfMeasure                on  $projection.QuantityUnit = _UnitOfMeasure.UnitOfMeasure
  association [0..*] to I_UnitOfMeasure                as _UoMPrimaryTime               on  _UoMPrimaryTime.IsPrimaryUnitForISOCode = 'X'
                                                                                        and _UoMPrimaryTime.UnitOfMeasureDimension  = 'TIME'
  association [0..*] to I_ServiceDocumentDurationEnhcd as _ServDocDuration              on  _ServDocDuration.ServiceObjectType   = 'BUS2000266'
                                                                                        and $projection.SubscriptionContract     = _ServDocDuration.ServiceDocument
                                                                                        and $projection.SubscriptionContractItem = _ServDocDuration.ServiceDocumentItem
  association [0..1] to I_UnitOfMeasure                as _UoMAutoRnwlStartDurationUnit on  I_ServiceDocumentItemEnhcd.SrvcContrItemRnwlDurationUnit = _UoMAutoRnwlStartDurationUnit.UnitOfMeasure
{

      /* ORDERADM_I */
  key ServiceDocument                                                                                                                             as SubscriptionContract,
  key ServiceDocumentItem                                                                                                                         as SubscriptionContractItem,

      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOM_PRVC_ITEM_CALC'
      @ObjectModel.filter.transformedBy: 'ABAP:CL_CRMS4_SOM_PRVC_ITEM_CALC'
      SubscriptionContract                                                                                                                        as SubscriptionContractExternalID,

      ServiceDocItemCategory                                                                                                                      as SubscrpnContractItemCategory,
      cast( OriginallyRequestedProduct as abap.char( 40 ))                                                                                        as Product,
      @Semantics: { quantity : {unitOfMeasure: 'QuantityUnit'} }
      @Semantics.quantity.unitOfMeasureIsoCode: 'RequestedQuantityISOUnit'
      @Semantics.quantity.unitOfMeasureSapCode: 'RequestedQuantitySAPUnit'
      ServiceDocumentItemQuantity                                                                                                                 as Quantity,
      ServiceDocItemQuantityUnit                                                                                                                  as QuantityUnit,
      _UnitOfMeasure.UnitOfMeasureISOCode                                                                                                         as RequestedQuantityISOUnit,
      _UnitOfMeasure.UnitOfMeasureSAPCode                                                                                                         as RequestedQuantitySAPUnit,
      TransactionCurrency,

      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      ServiceDocItemGrossAmount                                                                                                                   as SubscrpnContrItmGrossAmount,

      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      ServiceDocumentItemNetAmount                                                                                                                as SubscrpnContrItmNetAmount,

      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      ServiceDocumentItemTaxAmount                                                                                                                as SubscrpnContrItmTaxAmount,

      /*RECURRING*/
      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      SrvcDocItmRecrrgChrgNetAmount,
      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      SrvcDocItmRecrrgChrgGrossAmt,
      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      SrvcDocItmRecrrgChrgTaxAmount,
      SrvcDocItmRecrrgChrgDuration,
      SrvcDocItmRecrrgChrgDurnUnit,
      case SrvcDocItmRecrrgChrgDurnUnit
        when 'DAY'    then _UoMPrimaryTime[1:UnitOfMeasureISOCode = 'DAY'].UnitOfMeasureSAPCode
        when 'HOUR'   then _UoMPrimaryTime[1:UnitOfMeasureISOCode = 'HUR'].UnitOfMeasureSAPCode
        when 'MINUTE' then _UoMPrimaryTime[1:UnitOfMeasureISOCode = 'MIN'].UnitOfMeasureSAPCode
        when 'MONTH'  then _UoMPrimaryTime[1:UnitOfMeasureISOCode = 'MON'].UnitOfMeasureSAPCode
        when 'SECOND' then _UoMPrimaryTime[1:UnitOfMeasureISOCode = 'SEC'].UnitOfMeasureSAPCode
        when 'WEEK'   then _UoMPrimaryTime[1:UnitOfMeasureISOCode = 'WEE'].UnitOfMeasureSAPCode
        when 'YEAR'   then _UoMPrimaryTime[1:UnitOfMeasureISOCode = 'ANN'].UnitOfMeasureSAPCode
        end                                                                                                                                       as SrvcDocItmRcrChrDurUnitSAPCode,
      cast(case SrvcDocItmRecrrgChrgDurnUnit
        when 'DAY'    then 'DAY'
        when 'HOUR'   then 'HUR'
        when 'MINUTE' then 'MIN'
        when 'MONTH'  then 'MON'
        when 'SECOND' then 'SEC'
        when 'WEEK'   then 'WEE'
        when 'YEAR'   then 'ANN'
        end as isocd_unit preserving type )                                                                                                       as SrvcDocItmRcrChrDurUnitISOCode,

      ServiceDocumentItemDescription                                                                                                              as SubscriptionContrItmDesc,
      Language,

      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOM_PRVC_ITEM_CALC'
      cast('' as crms4_number_int)                                                                                                                as ParentItem,
      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOM_PRVC_ITEM_CALC'
      cast('' as abap.char(1))                                                                                                                    as SbscrContrItmTmeSliceStatus,

      /* STATUS */
      case SubscrpnContrActivationStatus
      when 'E' then 'X'
      else ''
      end                                                                                                                                         as SubscrpnContractItemIsActive,

      /*CANCELLATION*/
      SrvcDocItmCanclnProcedure                                                                                                                   as SbscrContrItmCanclnProcedure,
      ServiceDocumentItmCanclnReason                                                                                                              as SbscrContrItemCanclnReason,
      ServiceDocumentItemCanclnParty                                                                                                              as SbscrContrItemCanclnParty,
      @Semantics.dateTime:true
      case ServiceDocumentItemCanclnParty
      when '' then 0
      else ServiceContrItemEndDateTime
      end                                                                                                                                         as SubscrpnContrItmCanclnDteTme,

      ServiceDocumentItemIsRejected                                                                                                               as SubscrpnContractItemIsRejected,

      /*DATES*/
      @Semantics.dateTime:true
      ServiceContrItemStartDateTime                                                                                                               as SubscrpnContrItmStartDateTime,
      @Semantics.dateTime:true
      ServiceContrItemEndDateTime                                                                                                                 as SubscrpnContrItmEndDateTime,
      @Semantics.dateTime:true
      SrvcDocItmTmeSliceStrtDteTme                                                                                                                as SbscrContrTimeSliceStrtDteTme,
      @Semantics.dateTime:true
      SrvcDocItmTmeSliceEndDteTme                                                                                                                 as SbscrContrTimeSliceEndDteTme,
      @Semantics.quantity.unitOfMeasureSapCode: 'SubscrpnContrItmDurnUntSAPCode'
      @Semantics.quantity.unitOfMeasureIsoCode: 'SubscrpnContrItmDurnUntISOCode'
      _ServDocDuration[1:SrvcDocDurationType = 'CONTDURA'].SrvcDocDurationValue                                                                   as SubscrpnContrItemDuration,
      _ServDocDuration[1:SrvcDocDurationType = 'CONTDURA'].SrvcDocDurationUnit                                                                    as SubscrpnContrItemDurnUnit,
      cast(_ServDocDuration[1:SrvcDocDurationType = 'CONTDURA'].SrvcDocDurationUnitISOCode as crms4_som_ctr_dur_isocd_unit preserving type )      as SubscrpnContrItmDurnUntISOCode,
      cast(_ServDocDuration[1:SrvcDocDurationType = 'CONTDURA'].SrvcDocDurationUnitSAPCode as crms4_som_ctr_dur_meinsint )                        as SubscrpnContrItmDurnUntSAPCode,
      /*AUTO RENEWAL*/
      SubscrpnContrAutoRnwlIsActv                                                                                                                 as SubscrpnContrAutoRnwlIsActv,
      @Semantics.quantity.unitOfMeasureSapCode: 'SbscrContrArnwlDurnUntSAPCode'
      @Semantics.quantity.unitOfMeasureIsoCode: 'SbscrContrArnwlDurnUntISOCode'
      _ServDocDuration[1:SrvcDocDurationType = 'AR_EXTENSION'].SrvcDocDurationValue                                                               as SubscrpnContrAutoRnwlDurn,
      _ServDocDuration[1:SrvcDocDurationType = 'AR_EXTENSION'].SrvcDocDurationUnit                                                                as SubscrpnContrAutoRnwlDurnUnit,
      cast(_ServDocDuration[1:SrvcDocDurationType = 'AR_EXTENSION'].SrvcDocDurationUnitISOCode as crms4_ar_dur_isocd_unit preserving type )       as SbscrContrArnwlDurnUntISOCode,
      cast(_ServDocDuration[1:SrvcDocDurationType = 'AR_EXTENSION'].SrvcDocDurationUnitSAPCode as crms4_ar_dur_meinsint )                         as SbscrContrArnwlDurnUntSAPCode,
      @Semantics.dateTime:true
      SrvcContrItemRenewalDateTime                                                                                                                as SubscrpnContrItmRnwlDteTme,
      @Semantics: { quantity : {unitOfMeasure: 'SubscrpnContrArnwlStrtDurnUnit'} }
      @Semantics.quantity.unitOfMeasureSapCode: 'SbsConArnwlStrtDurnUntSAPCode'
      @Semantics.quantity.unitOfMeasureIsoCode: 'SbsConArnwlStrtDurnUntISOCode'
      SrvcContrItemRnwlDuration                                                                                                                   as SubscrpnContrArnwlStrtDurn,
      SrvcContrItemRnwlDurationUnit                                                                                                               as SubscrpnContrArnwlStrtDurnUnit,
      cast( _UoMAutoRnwlStartDurationUnit.UnitOfMeasureISOCode as crms4_ar_strt_isocd_unit preserving type )                                      as SbsConArnwlStrtDurnUntISOCode,
      cast( _UoMAutoRnwlStartDurationUnit.UnitOfMeasureSAPCode as crms4_ar_strt_meinsint preserving type )                                        as SbsConArnwlStrtDurnUntSAPCode,

      @Semantics.dateTime:true
      SbscrContrItmBizValdStrtDteTme,
      @Semantics.dateTime:true
      SbscrContrItmBizValdEndDteTme,
      @Semantics.dateTime:true
      SrvcDocItmGrcePerdEndDateTime                                                                                                               as SbscrContrItmGrcePerdDteTme,

      @Semantics.quantity.unitOfMeasureSapCode: 'SbscrContrItmGrcePerdUntSAPCd'
      @Semantics.quantity.unitOfMeasureIsoCode: 'SbscrContrItmGrcePerdUntISOCd'
      _ServDocDuration[1:SrvcDocDurationType = 'GRACE_PERIOD'].SrvcDocDurationValue                                                               as SbscrContrItmGrcePerd,
      cast(_ServDocDuration[1:SrvcDocDurationType = 'GRACE_PERIOD'].SrvcDocDurationUnitISOCode as crms4_som_grce_dur_isocd_unit preserving type ) as SbscrContrItmGrcePerdUntISOCd,
      cast(_ServDocDuration[1:SrvcDocDurationType = 'GRACE_PERIOD'].SrvcDocDurationUnitSAPCode as crms4_som_grce_dur_meinsint )                   as SbscrContrItmGrcePerdUntSAPCd,
      /* PARTNER */
      SoldToParty,
      ShipToParty,
      cast( ResponsibleEmployee as abap.char( 12 ))                                                                                               as PersonResponsible,
      BillToParty,
      PayerParty,
      cast( ContactPerson as abap.numc( 10 ))                                                                                                     as ContactPerson,

      ContractAccount,

      /*SUBSCRIPTION SPECIFIC*/
      CABillgCycle,
      CrsCatalogMappingVersionNumber,

      /*MASTER AGREEMENT*/
      CustMgmtMasterAgreement,
      CustMgmtMstrAgrmtItem,
      CustMgmtMstrAgrmtParentItem,

      /*SHARING*/
      SharingContractID,
      SubscrpnContractSharingGroupID,

      /*CONFIGURATION*/
      ConfigurationNumber,

      ChangeProcessGroup                                                                                                                          as SrvcTransChangeProcessGroup,
      SrvcTransChangeProcess,

      /*PHASED DEAL*/
      BusSolutionQtnItemIsPhased                                                                                                                  as SubscrpnContrItemIsPhased,
      BusSolnQtnItmPhasedPrdcssrItem                                                                                                              as SbscrContrItmPhasedPrdcssrItm,

      // Sales Set

      PurchaseOrderByShipToParty,

      /*Contrct Transfer Reference*/
      _ExternalReference[1:SubscrpnContrItmRefType = '0018'].SbscrContrPrdcssrExtID,
      _ExternalReference[1:SubscrpnContrItmRefType = '0019'].SbscrContrSuccssrExtID,
      _ExternalReference[1:SubscrpnContrItmRefType = '0021' ].LegalContractExtReference,
      _ExternalReference[1:SubscrpnContrItmRefType = '0022' ].LegalContractItemExtReference,

      //BOM Item Node Number

      BillOfMaterialItemNodeNumber,

      //Configuration Date

      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CRMS4_SOM_PRVC_ITM_DATES'
      cast( 0 as timestamp )                                                                                                                      as SrvcDocItmProdConfignDateTime,

      //Associations

      _PriceElement,
      _TechnicalResource,
      _Text,
      _DateParameter,
      _NumericParameter,
      _StringParameter,
      _TableParameter,
      _Configuration,
      _PredecessorSolnQtnItem,
      _PredecessorSubscrpnOrdItem,
      _FollowUpSubscrpnOrdItem,
      _ItemPartner,
      _SubscriptionContract

}
where
  ServiceObjectType = 'BUS2000266'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SERVICEDOCUMENTDURATIONENHCD",
"I_SERVICEDOCUMENTITEMENHCD",
"I_SUBSCRPNCONTRITMEXTREF",
"I_UNITOFMEASURE"
],
"ASSOCIATED":
[
"A_SBSCRCONTRITMFUPORDITM",
"A_SBSCRCONTRITMPRDCSSRORDITM",
"A_SBSCRCONTRITMPRDCSSRQTNITM",
"A_SUBSCRIPTIONCONTRACT",
"A_SUBSCRPNCONTRITMCONFIGN",
"A_SUBSCRPNCONTRITMDTEPARAM",
"A_SUBSCRPNCONTRITMNMRCPARAM",
"A_SUBSCRPNCONTRITMPRELMNT",
"A_SUBSCRPNCONTRITMPRTN",
"A_SUBSCRPNCONTRITMSTRPARAM",
"A_SUBSCRPNCONTRITMTBLPARAM",
"A_SUBSCRPNCONTRITMTECHRSCE",
"A_SUBSCRPNCONTRITMTEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/