P_EquipmentStructureList

DDL: P_EQUIPMENTSTRUCTURELIST SQL: PEQUISTRUCLIST Type: view COMPOSITE

P_EquipmentStructureList is a Composite CDS View in SAP S/4HANA. It reads from 1 data source (I_EquipmentTimeSeg) and exposes 17 fields with key field MaintObjectLocAcctAssgmtNmbr. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_EquipmentTimeSeg current from

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_LocationAccountAssignment _LocationAccountAssignment $projection.MaintObjectLocAcctAssgmtNmbr = _LocationAccountAssignment.MaintObjectLocAcctAssgmtNmbr

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName PEQUISTRUCLIST view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.viewType #COMPOSITE view
VDM.private true view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #L view
AbapCatalog.compiler.compareFilter true view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (17)

KeyFieldSource TableSource FieldDescription
KEY MaintObjectLocAcctAssgmtNmbr I_EquipmentTimeSeg MaintObjectLocAcctAssgmtNmbr
TechnicalObject
TechObjIsEquipOrFuncnlLoc
ValidityStartDate I_EquipmentTimeSeg ValidityStartDate
ValidityEndDate I_EquipmentTimeSeg ValidityEndDate
ValidityEndTime I_EquipmentTimeSeg ValidityEndTime
EquipmentInstallationDate I_EquipmentTimeSeg ValidityStartDate
EquipmentInstallationTime prev ValidityEndTime
SuperiorTechnicalObject
EquipInstallationPositionNmbr I_EquipmentTimeSeg EquipInstallationPositionNmbr
Equipment I_EquipmentTimeSeg Equipment
SuperordinateEquipment I_EquipmentTimeSeg SuperordinateEquipment
Material
MaterialName
SerialNumber
SuperiorFunctionalLocation _LocationAccountAssignment FunctionalLocation
EquipmentName
@AbapCatalog.sqlViewName: 'PEQUISTRUCLIST'
@AccessControl.authorizationCheck: #NOT_REQUIRED
//@AccessControl.privilegedAssociations:['_LocationAccountAssignment']

@VDM.viewType: #COMPOSITE
@VDM.private: true
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #L
@AbapCatalog.compiler.compareFilter:true
@ClientHandling.algorithm: #SESSION_VARIABLE

define view P_EquipmentStructureList
  as select from           I_EquipmentTimeSeg as current
    left outer to one join I_EquipmentTimeSeg as prev on  prev.Equipment                      = current.Equipment
                                                      and prev.ValidityEndDate                = current.ValidityStartDate
                                                      and prev.EquipUsagePeriodSequenceNumber = current.NextEquipUsagePeriodSqncNmbr
  association [0..1] to I_LocationAccountAssignment as _LocationAccountAssignment on $projection.MaintObjectLocAcctAssgmtNmbr = _LocationAccountAssignment.MaintObjectLocAcctAssgmtNmbr
{
  key current.MaintObjectLocAcctAssgmtNmbr                                                     as MaintObjectLocAcctAssgmtNmbr,
      cast ( cast (current.Equipment as char40 )  as eams_tec_obj )                            as TechnicalObject,
      cast ( 'EAMS_EQUI'  as eams_tec_obj_type_value )                                         as TechObjIsEquipOrFuncnlLoc,
      current.ValidityStartDate                                                                as ValidityStartDate,
      current.ValidityEndDate                                                                  as ValidityEndDate,
      current.ValidityEndTime                                                                  as ValidityEndTime,
      current.ValidityStartDate                                                                as EquipmentInstallationDate,
      prev.ValidityEndTime                                                                     as EquipmentInstallationTime,
      cast ( cast (current.SuperordinateEquipment as char40 ) as eams_tec_obj   )              as SuperiorTechnicalObject,
      case when current.SuperordinateEquipment <> ''
           then cast ( 'EAMS_EQUI'  as eams_tec_obj_type_value)
           else cast ( ''         as eams_tec_obj_type_value)
           end                                                                                 as SuperiorObjIsEquipOrFuncnlLoc,
      current.EquipInstallationPositionNmbr                                                    as EquipInstallationPositionNmbr,
      current.Equipment                                                                        as Equipment,
      current.SuperordinateEquipment                                                           as SuperordinateEquipment,
      current._Equipment.Material                                                               as Material,
      current._Equipment._Material._Text[ 1: Language = $session.system_language ].MaterialName as MaterialName,
      current._Equipment.SerialNumber                                                          as SerialNumber,      
      _LocationAccountAssignment.FunctionalLocation                                            as SuperiorFunctionalLocation,
      current._Equipment._EquipmentText[1: Language = $session.system_language ].EquipmentName as EquipmentName
      //   _LocationAccountAssignment


}
where
  current.ValidityEndDate = '99991231'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_EQUIPMENT",
"I_EQUIPMENTTEXT",
"I_EQUIPMENTTIMESEG",
"I_LOCATIONACCOUNTASSIGNMENT",
"I_MATERIAL",
"I_MATERIALTEXT"
],
"ASSOCIATED":
[
"I_LOCATIONACCOUNTASSIGNMENT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/