I_SerialNumberPhysInventoryDoc

DDL: I_SERIALNUMBERPHYSINVENTORYDOC SQL: ISERNOPIDOCS Type: view_entity COMPOSITE

Serial Number in Physical Inventory Doc

I_SerialNumberPhysInventoryDoc is a Composite CDS View that provides data about "Serial Number in Physical Inventory Doc" in SAP S/4HANA. It reads from 2 data sources (I_MaintenanceObjectListItem, I_MaintObjListPhysInventoryDoc) and exposes 12 fields with key fields Equipment, FiscalYear, PhysicalInventoryDocument, PhysicalInventoryDocumentItem, SerialNumberPhysicalInvtryType.

Data Sources (2)

SourceAliasJoin Type
I_MaintenanceObjectListItem _MaintenanceObjectListItem inner
I_MaintObjListPhysInventoryDoc _MaintObjListPhysInventoryDoc from

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
VDM.viewType #COMPOSITE view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #XL view
EndUserText.label Serial Number in Physical Inventory Doc view
Metadata.ignorePropagatedAnnotations true view

Fields (12)

KeyFieldSource TableSource FieldDescription
KEY Equipment I_MaintenanceObjectListItem Equipment
KEY FiscalYear I_MaintObjListPhysInventoryDoc FiscalYear
KEY PhysicalInventoryDocument I_MaintObjListPhysInventoryDoc PhysicalInventoryDocument
KEY PhysicalInventoryDocumentItem I_MaintObjListPhysInventoryDoc PhysicalInventoryDocumentItem
KEY SerialNumberPhysicalInvtryType I_MaintObjListPhysInventoryDoc SerialNumberPhysicalInvtryType
Material I_MaintenanceObjectListItem Material
SerialNumber I_MaintenanceObjectListItem SerialNumber
_Equipment I_MaintenanceObjectListItem _Equipment
_PhysicalInvtryDocFiscalYear I_MaintObjListPhysInventoryDoc _PhysicalInvtryDocFiscalYear
_PhysicalInventoryDocument I_MaintObjListPhysInventoryDoc _PhysicalInventoryDocument
_PhysicalInventoryDocumentItem I_MaintObjListPhysInventoryDoc _PhysicalInventoryDocumentItem
_Product I_MaintenanceObjectListItem _Product
@AccessControl: { authorizationCheck: #CHECK,
                  personalData.blocking: #NOT_REQUIRED }

//@AbapCatalog.sqlViewName: 'ISERNOPIDOCS'

//@AbapCatalog.compiler.compareFilter: true

//@AbapCatalog.preserveKey: true

//@ClientHandling.algorithm: #SESSION_VARIABLE


@VDM.viewType: #COMPOSITE

@ObjectModel.usageType: {
        dataClass:      #TRANSACTIONAL,
        serviceQuality: #A,
        sizeCategory:   #XL }
@ObjectModel.supportedCapabilities: [
  #SQL_DATA_SOURCE,
  #CDS_MODELING_DATA_SOURCE,
  #CDS_MODELING_ASSOCIATION_TARGET
]

@EndUserText.label: 'Serial Number in Physical Inventory Doc'
@Metadata.ignorePropagatedAnnotations:true
define view entity I_SerialNumberPhysInventoryDoc
  as select from I_MaintObjListPhysInventoryDoc as _MaintObjListPhysInventoryDoc
  -- data source association to list item cannot be used due to current CDS restrictions
  -- (could be done implicitly in field list by _A._B[inner].C, but non-maskable warnings ensue)
  -- ... join needs foreign key relationship to be defined again
    inner join I_MaintenanceObjectListItem as _MaintenanceObjectListItem
      on _MaintObjListPhysInventoryDoc.MaintenanceObjectList = _MaintenanceObjectListItem.MaintenanceObjectList
{
  @ObjectModel.foreignKey.association: '_Equipment'
  key _MaintenanceObjectListItem.Equipment,

  @ObjectModel.foreignKey.association: '_PhysicalInvtryDocFiscalYear'
  key _MaintObjListPhysInventoryDoc.FiscalYear,
  @ObjectModel.foreignKey.association: '_PhysicalInventoryDocument'
  key _MaintObjListPhysInventoryDoc.PhysicalInventoryDocument,
  @ObjectModel.foreignKey.association: '_PhysicalInventoryDocumentItem'
  key _MaintObjListPhysInventoryDoc.PhysicalInventoryDocumentItem,
  key _MaintObjListPhysInventoryDoc.SerialNumberPhysicalInvtryType,

  @ObjectModel.foreignKey.association: '_Product'
  _MaintenanceObjectListItem.Material,
  _MaintenanceObjectListItem.SerialNumber,

  _MaintenanceObjectListItem._Equipment,
  _MaintObjListPhysInventoryDoc._PhysicalInvtryDocFiscalYear,
  _MaintObjListPhysInventoryDoc._PhysicalInventoryDocument,
  _MaintObjListPhysInventoryDoc._PhysicalInventoryDocumentItem,
  _MaintenanceObjectListItem._Product
}