A_ServiceContractItem

DDL: A_SERVICECONTRACTITEM Type: view CONSUMPTION

Service Contract Item

A_ServiceContractItem is a Consumption CDS View that provides data about "Service Contract Item" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 47 fields with key fields ServiceContract, ServiceContractItem. It has 11 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ServiceDocumentItemEnhcd ServiceContractItem from

Associations (11)

CardinalityTargetAliasCondition
[1] A_ServiceContract _ServiceContract $projection.ServiceContract = _ServiceContract.ServiceContract
[0..*] A_ServiceContractItemText _Text $projection.ServiceContract = _Text.ServiceContract and $projection.ServiceContractItem = _Text.ServiceContractItem
[0..*] A_SrvcContrItmBillgReqItem _BillingRequestItem $projection.ServiceContract = _BillingRequestItem.ServiceContract and $projection.ServiceContractItem = _BillingRequestItem.ServiceContractItem
[0..*] A_ServiceContrItemObjectList _ObjectList $projection.ServiceContract = _ObjectList.ServiceContract and $projection.ServiceContractItem = _ObjectList.ServiceContractItem
[0..*] A_SrvcContrItemProduct _ProductList $projection.ServiceContract = _ProductList.ServiceContract and $projection.ServiceContractItem = _ProductList.ServiceContractItem
[0..*] A_ServiceContrItmReleasedOrder _ReleasedOrder $projection.ServiceContract = _ReleasedOrder.ServiceContract and $projection.ServiceContractItem = _ReleasedOrder.ServiceContractItem
[0..*] A_ServiceContrItemPriceElement _PricingElement $projection.ServiceContract = _PricingElement.ServiceContract and $projection.ServiceContractItem = _PricingElement.ServiceContractItem
[0..1] I_ServiceDocumentItemEnhcd _ChgProcSourceItem $projection.SrvcTransChgProcSourceItemUUID = _ChgProcSourceItem.ServiceDocumentItemUUID
[0..1] E_ServiceDocumentItem _Extension _Extension.ServiceCategory = 'BUS2000112' and $projection.ServiceContract = _Extension.ServiceOrderItem and $projection.ServiceContractItem = _Extension.ServiceLineExternalID
[0..1] I_CustMgmtExtRefID _ReferenceServiceContract _ReferenceServiceContract.CustMgmtObjectType = 'BUS2000112' and $projection.ServiceContract = _ReferenceServiceContract.CustMgmtDocument and $projection.ServiceContractItem = _ReferenceServiceContract.CustMgmtDocumentItem and _ReferenceServiceContract.CustMgmtExtRefIDType = '0004'
[0..1] I_CustMgmtExtRefID _ReferenceServiceQtan _ReferenceServiceQtan.CustMgmtObjectType = 'BUS2000112' and $projection.ServiceContract = _ReferenceServiceQtan.CustMgmtDocument and $projection.ServiceContractItem = _ReferenceServiceQtan.CustMgmtDocumentItem and _ReferenceServiceQtan.CustMgmtExtRefIDType = '0010'

Annotations (15)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Service Contract Item view
VDM.viewType #CONSUMPTION view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
AbapCatalog.sqlViewName ASRVCTRITEM view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true 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 (47)

KeyFieldSource TableSource FieldDescription
KEY ServiceContract ServiceDocument
KEY ServiceContractItem ServiceDocumentItem
ServiceContractItemCategory ServiceDocItemCategory
Product OriginallyRequestedProduct
Quantity ServiceDocumentItemQuantity
QuantityUnit ServiceDocItemQuantityUnit
ServiceContractItemDescription ServiceDocumentItemDescription
Language Language
ServiceDocItemGrossAmount ServiceDocItemGrossAmount
ServiceDocumentItemNetAmount ServiceDocumentItemNetAmount
ServiceDocumentItemTaxAmount ServiceDocumentItemTaxAmount
TransactionCurrency TransactionCurrency
ServiceContractItemIsReleased ServiceDocumentItemIsReleased
ServiceContractItemCanclnParty ServiceDocumentItemCanclnParty
ServiceContractItmCanclnReason ServiceDocumentItmCanclnReason
SrvcContrItemCreditStatus SrvcDocItemCreditStatus
ServiceContrItemStartDateTime
ServiceContrItemEndDateTime
BillingPlanBillingDateRuleName _BillPlanDateRule CustMgmtDateRuleName
SettlementPeriodRuleName _SettlementDateRule CustMgmtDateRuleName
BillingPlanPriceDateRule BillingPlanPriceDateRule
BillingPlanIsFinalized BillingPlanIsFinalized
BillingBlockReason BillingBlockReason
ShipToParty ShipToParty
PersonResponsible ResponsibleEmployee
BillToParty BillToParty
PayerParty PayerParty
ContactPerson ContactPerson
ReferenceServiceContractItem _ReferenceServiceContract CustMgmtExtRefID
ReferenceServiceQtanItem _ReferenceServiceQtan CustMgmtExtRefID
SrvcContrItemRnwlDuration ServiceDocumentRnwlDuration
SrvcContrItemRnwlDurationUnit ServiceDocRnwlDurationUnit
SrvcContrItemExtensionDuration ServiceDocExtensionDuration
SrvcContrItemExtnDurationUnit ServiceDocExtnDurationUnit
SrvcTransChangeProcess SrvcTransChangeProcess
SrvcTransChangeProcessType SrvcTransChangeProcessType
SrvcTransChgProcSourceTransID _ChgProcSourceItem ServiceDocument
SrvcTransChgProcSourceItemID _ChgProcSourceItem ServiceDocumentItem
SrvcTransChgProcSourceItemUUID SrvcTransChgProcSourceItemUUID
ProfitCenter ProfitCenter
_ServiceContract _ServiceContract
_ObjectList _ObjectList
_ProductList _ProductList
_ReleasedOrder _ReleasedOrder
_Text _Text
_BillingRequestItem _BillingRequestItem
_PricingElement _PricingElement
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Service Contract Item'
@VDM: {
  viewType: #CONSUMPTION,
  lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
  sqlViewName: 'ASRVCTRITEM',
  compiler.compareFilter: true,
  preserveKey: true
}
@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 A_ServiceContractItem
  as select from I_ServiceDocumentItemEnhcd as ServiceContractItem

  association [1]    to A_ServiceContract              as _ServiceContract           on  $projection.ServiceContract = _ServiceContract.ServiceContract
  
  // Text

  association [0..*] to A_ServiceContractItemText      as _Text                      on  $projection.ServiceContract     = _Text.ServiceContract
                                                                                     and $projection.ServiceContractItem = _Text.ServiceContractItem
  // Billing Request Line                                                                                   

  association [0..*] to A_SrvcContrItmBillgReqItem     as _BillingRequestItem        on  $projection.ServiceContract     = _BillingRequestItem.ServiceContract
                                                                                     and $projection.ServiceContractItem = _BillingRequestItem.ServiceContractItem                                                                                     
  // Object List

  association [0..*] to A_ServiceContrItemObjectList   as _ObjectList                on  $projection.ServiceContract     = _ObjectList.ServiceContract
                                                                                     and $projection.ServiceContractItem = _ObjectList.ServiceContractItem
                                                                                     
  // Product List

  association [0..*] to A_SrvcContrItemProduct         as _ProductList               on  $projection.ServiceContract     = _ProductList.ServiceContract
                                                                                     and $projection.ServiceContractItem = _ProductList.ServiceContractItem

  // ReleasedOrder

  association [0..*] to A_ServiceContrItmReleasedOrder as _ReleasedOrder             on  $projection.ServiceContract     = _ReleasedOrder.ServiceContract
                                                                                     and $projection.ServiceContractItem = _ReleasedOrder.ServiceContractItem
  // Item Price Element                                                                                   

  association [0..*] to A_ServiceContrItemPriceElement as _PricingElement            on  $projection.ServiceContract = _PricingElement.ServiceContract
                                                                                     and $projection.ServiceContractItem = _PricingElement.ServiceContractItem
  // Change Document

  association [0..1] to I_ServiceDocumentItemEnhcd     as _ChgProcSourceItem         on  $projection.SrvcTransChgProcSourceItemUUID = _ChgProcSourceItem.ServiceDocumentItemUUID

  //Extensibility

  association [0..1] to E_ServiceDocumentItem          as _Extension                 on  _Extension.ServiceCategory      = 'BUS2000112'
                                                                                     and $projection.ServiceContract     = _Extension.ServiceOrderItem                                                                                     and $projection.ServiceContractItem = _Extension.ServiceLineExternalID
  //External ID

  // 0004 Service Contract External Reference

  // 0010 Service Quotation External Reference

  association [0..1] to I_CustMgmtExtRefID             as _ReferenceServiceContract  on  _ReferenceServiceContract.CustMgmtObjectType   = 'BUS2000112'
                                                                                     and $projection.ServiceContract                    = _ReferenceServiceContract.CustMgmtDocument
                                                                                     and $projection.ServiceContractItem                = _ReferenceServiceContract.CustMgmtDocumentItem
                                                                                     and _ReferenceServiceContract.CustMgmtExtRefIDType = '0004'

  association [0..1] to I_CustMgmtExtRefID             as _ReferenceServiceQtan      on  _ReferenceServiceQtan.CustMgmtObjectType   = 'BUS2000112'
                                                                                     and $projection.ServiceContract                = _ReferenceServiceQtan.CustMgmtDocument
                                                                                     and $projection.ServiceContractItem            = _ReferenceServiceQtan.CustMgmtDocumentItem
                                                                                     and _ReferenceServiceQtan.CustMgmtExtRefIDType = '0010'

{

      /* ORDERADM_I */
  key ServiceDocument                            as ServiceContract,
  key ServiceDocumentItem                        as ServiceContractItem,
      ServiceDocItemCategory                     as ServiceContractItemCategory,
      OriginallyRequestedProduct                 as Product,
      @Semantics: { quantity : {unitOfMeasure: 'QuantityUnit'} }
      ServiceDocumentItemQuantity                as Quantity,
      ServiceDocItemQuantityUnit                 as QuantityUnit,
      ServiceDocumentItemDescription             as ServiceContractItemDescription,
      Language,
      
      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      ServiceDocItemGrossAmount,
      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      ServiceDocumentItemNetAmount,
      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      ServiceDocumentItemTaxAmount,
      TransactionCurrency,
       
      /* STATUS */
      ServiceDocumentItemIsReleased              as ServiceContractItemIsReleased,
      case ServiceDocumentItemStatus
      when 'C' then 'X'
      else ''
      end                                        as ServiceContractItemIsCompleted,

      ServiceDocumentItemCanclnParty             as ServiceContractItemCanclnParty,
      ServiceDocumentItmCanclnReason             as ServiceContractItmCanclnReason,

      SrvcDocItemCreditStatus                    as SrvcContrItemCreditStatus,

      cast ( 
      case ServiceDocumentItemCanclnParty
      when '' then 0
      else ServiceContrItemEndDateTime
      end    
      as crms4_cont_end_dec15 preserving type )  as ServiceContractItemCanclnDate,

      cast ( ServiceContrItemStartDateTime as crms4_cont_start_dec15 preserving type )  as ServiceContrItemStartDateTime,
      cast ( ServiceContrItemEndDateTime   as crms4_cont_end_dec15   preserving type )  as ServiceContrItemEndDateTime,
      
      // Item - Billing Plan

      _BillPlanDateRule.CustMgmtDateRuleName     as BillingPlanBillingDateRuleName,
      _SettlementDateRule.CustMgmtDateRuleName   as SettlementPeriodRuleName,
      BillingPlanPriceDateRule                   as BillingPlanPriceDateRule,
      BillingPlanIsFinalized,
      BillingBlockReason                         as BillingBlockReason,
      
      /* PARTNER */
      ShipToParty,
      ResponsibleEmployee                        as PersonResponsible,
      BillToParty,
      PayerParty,
      ContactPerson                              as ContactPerson,

      /* External ID */
      _ReferenceServiceContract.CustMgmtExtRefID as ReferenceServiceContractItem,
      _ReferenceServiceQtan.CustMgmtExtRefID     as ReferenceServiceQtanItem,

      ServiceDocumentRnwlDuration                as SrvcContrItemRnwlDuration,
      ServiceDocRnwlDurationUnit                 as SrvcContrItemRnwlDurationUnit,
      ServiceDocExtensionDuration                as SrvcContrItemExtensionDuration,
      ServiceDocExtnDurationUnit                 as SrvcContrItemExtnDurationUnit,

      SrvcTransChangeProcess,
      SrvcTransChangeProcessType,
      _ChgProcSourceItem.ServiceDocument         as SrvcTransChgProcSourceTransID,
      _ChgProcSourceItem.ServiceDocumentItem     as SrvcTransChgProcSourceItemID,
      SrvcTransChgProcSourceItemUUID, 
      ProfitCenter                               as ProfitCenter,
      
      //Associations

      _ServiceContract,
      _ObjectList,
      _ProductList,
      _ReleasedOrder,
      _Text,
      _BillingRequestItem,
      _PricingElement

}

where
      ServiceObjectType              = 'BUS2000112'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTMGMTDATERULE",
"I_CUSTMGMTEXTREFID",
"I_SERVICEDOCUMENTITEMENHCD"
],
"ASSOCIATED":
[
"A_SERVICECONTRACT",
"A_SERVICECONTRACTITEMTEXT",
"A_SERVICECONTRITEMOBJECTLIST",
"A_SERVICECONTRITEMPRICEELEMENT",
"A_SERVICECONTRITMRELEASEDORDER",
"A_SRVCCONTRITEMPRODUCT",
"A_SRVCCONTRITMBILLGREQITEM",
"E_SERVICEDOCUMENTITEM",
"I_CUSTMGMTEXTREFID",
"I_SERVICEDOCUMENTITEMENHCD"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/