P_SerialNumberServiceDocument

DDL: P_SERIALNUMBERSERVICEDOCUMENT Type: view_entity COMPOSITE Package: ODATA_LO_SN_HISTORY

Serial Number Service Documents

P_SerialNumberServiceDocument is a Composite CDS View that provides data about "Serial Number Service Documents" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentRefObject) and exposes 11 fields with key fields ServiceObjectType, ServiceDocument, ServiceDocumentItem, ServiceRefObjectSequenceNumber. It has 4 associations to related views. Part of development package ODATA_LO_SN_HISTORY.

Data Sources (1)

SourceAliasJoin Type
I_ServiceDocumentRefObject I_ServiceDocumentRefObject from

Associations (4)

CardinalityTargetAliasCondition
[0..1] I_ServiceDocument _ServiceDocument $projection.ServiceDocument = _ServiceDocument.ServiceDocument and $projection.ServiceObjectType = _ServiceDocument.ServiceObjectType
[0..1] I_ServiceDocumentItem _ServiceDocumentItem $projection.ServiceDocument = _ServiceDocumentItem.ServiceDocument and $projection.ServiceObjectType = _ServiceDocumentItem.ServiceObjectType and $projection.ServiceDocumentItem = _ServiceDocumentItem.ServiceDocumentItem
[0..1] I_InHouseRepairItem _InHouseRepairItem $projection.ServiceDocument = _InHouseRepairItem.InHouseRepair and $projection.ServiceObjectType = _InHouseRepairItem.CustMgmtObjectType and $projection.ServiceDocumentItem = _InHouseRepairItem.InHouseRepairItem
[0..1] P_SrlNmbrHistSrvChangeDocument _SrlNmbrHistSrvChangeDocument $projection.ChangeDocTableKey = _SrlNmbrHistSrvChangeDocument.ChangeDocTableKey

Annotations (7)

NameValueLevelField
AccessControl.authorizationCheck #NOT_REQUIRED view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #COMPOSITE view
VDM.private true view

Fields (11)

KeyFieldSource TableSource FieldDescription
KEY ServiceObjectType ServiceObjectType
KEY ServiceDocument ServiceDocument
KEY ServiceDocumentItem ServiceDocumentItem
KEY ServiceRefObjectSequenceNumber ServiceRefObjectSequenceNumber
Equipment Equipment
ServiceReferenceObjectType ServiceReferenceObjectType
SerialNumber SerialNumber
_SrlNmbrHistSrvChangeDocument _SrlNmbrHistSrvChangeDocument
_ServiceDocument _ServiceDocument
_ServiceDocumentItem _ServiceDocumentItem
_InHouseRepairItem _InHouseRepairItem
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #NOT_REQUIRED
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #X,
  sizeCategory: #S,
  dataClass: #MIXED
}
@VDM.viewType: #COMPOSITE
@VDM.private: true
define view entity P_SerialNumberServiceDocument
  as select from I_ServiceDocumentRefObject
  association [0..1] to I_ServiceDocument              as _ServiceDocument              on  $projection.ServiceDocument   = _ServiceDocument.ServiceDocument
                                                                                        and $projection.ServiceObjectType = _ServiceDocument.ServiceObjectType
  association [0..1] to I_ServiceDocumentItem          as _ServiceDocumentItem          on  $projection.ServiceDocument     = _ServiceDocumentItem.ServiceDocument
                                                                                        and $projection.ServiceObjectType   = _ServiceDocumentItem.ServiceObjectType
                                                                                        and $projection.ServiceDocumentItem = _ServiceDocumentItem.ServiceDocumentItem
  association [0..1] to I_InHouseRepairItem            as _InHouseRepairItem            on  $projection.ServiceDocument     = _InHouseRepairItem.InHouseRepair
                                                                                        and $projection.ServiceObjectType   = _InHouseRepairItem.CustMgmtObjectType
                                                                                        and $projection.ServiceDocumentItem = _InHouseRepairItem.InHouseRepairItem
  association [0..1] to P_SrlNmbrHistSrvChangeDocument as _SrlNmbrHistSrvChangeDocument on  $projection.ChangeDocTableKey = _SrlNmbrHistSrvChangeDocument.ChangeDocTableKey

{
  key ServiceObjectType,
  key ServiceDocument,
  key ServiceDocumentItem,
  key ServiceRefObjectSequenceNumber,
      Equipment,
      ServiceReferenceObjectType,
      case
        when ProductID <> '' then ProductID
                             else ReferenceProduct
      end as Material,
      SerialNumber,
      concat( $session.client,
        concat( ServiceObjectType,
        concat( ServiceDocument,
        concat( ServiceDocumentItem,
        concat( ServiceReferenceObjectType,
        case ( ServiceReferenceObjectType )
        when 'F'
        then concat( ProductID,
                     concat( '/', ltrim(SerialNumber, '0')))
        else Equipment
        end )))))        as ChangeDocTableKey,

      _SrlNmbrHistSrvChangeDocument,
      _ServiceDocument,
      _ServiceDocumentItem,
      _InHouseRepairItem
}
where
          SerialNumber                                 is not initial
  and     Equipment                                    is not initial
  and(
    (
          ServiceObjectType                            =  'BUS2000116' // Service Order

      and _ServiceDocument.ServiceDocumentIsQuotation  =  ' '
      and _ServiceDocument.ServiceDocumentTemplateType =  ' '
      and _ServiceDocument.RefInHouseRepairIsExisting  =  ' '
      and _ServiceDocument.SrvcDocIsMaintServiceOrder  =  ' '
    )
    or    ServiceObjectType                            =  'BUS2000117' // Service Confirmation

    or    ServiceObjectType                            =  'BUS2000256' // In-House Repair

  )