C_TechnicalObjectVH

DDL: C_TECHNICALOBJECTVH SQL: CTECHOBJVH Type: view CONSUMPTION Package: RAP_EAM_NTF

Value Help for Technical Object

C_TechnicalObjectVH is a Consumption CDS View that provides data about "Value Help for Technical Object" in SAP S/4HANA. It reads from 1 data source (I_TechnicalObject) and exposes 21 fields with key fields TechnicalObject, TechObjIsEquipOrFuncnlLoc. It has 1 association to related views. Part of development package RAP_EAM_NTF.

Data Sources (1)

SourceAliasJoin Type
I_TechnicalObject I_TechnicalObject from

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_Equipment _EquipmentSearch $projection.EquipmentWithLeadingZeros = _EquipmentSearch.Equipment

Annotations (11)

NameValueLevelField
AbapCatalog.compiler.compareFilter true view
AbapCatalog.sqlViewName CTECHOBJVH view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
Consumption.ranked true view
EndUserText.label Value Help for Technical Object view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #M view
Search.searchable true view
VDM.viewType #CONSUMPTION view

Fields (21)

KeyFieldSource TableSource FieldDescription
KEY TechnicalObject I_TechnicalObject TechnicalObject Technical Object
KEY TechObjIsEquipOrFuncnlLoc I_TechnicalObject TechObjIsEquipOrFuncnlLoc
EquipmentWithLeadingZeros I_TechnicalObject Equipment
FunctionalLocationLabelName
TechnicalObjectDescription Technical Object Description
Equipment _EquipmentSearch Equipment
MaintenancePlanningPlant
MaintenancePlannerGroup I_TechnicalObject MaintenancePlannerGroup
AuthorizationGroup I_TechnicalObject AuthorizationGroup
TechnicalObjectCategory TechnicalObjectCategory
TechnicalObjectType TechnicalObjectType
MaintObjectLocAcctAssgmtNmbr MaintObjectLocAcctAssgmtNmbr
MaintenancePlant _LocationAccountAssignment MaintenancePlant
CostCenter _LocationAccountAssignment CostCenter
ControllingArea _LocationAccountAssignment ControllingArea
TechObjInstallationLocation
MaintObjectFreeDefinedAttrib _LocationAccountAssignment MaintObjectFreeDefinedAttrib
WorkCenter _WorkCenter WorkCenter
TechObjIsEquipOrFuncnlLocDesc
IsDeleted IsDeleted
TechObjStatusIsInactive TechObjStatusIsInactive
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.sqlViewName: 'CTECHOBJVH'

@AccessControl.authorizationCheck: #CHECK

@ClientHandling.algorithm: #SESSION_VARIABLE

@Consumption.ranked: true

@EndUserText.label: 'Value Help for Technical Object'

@ObjectModel.usageType: { dataClass: #MASTER, serviceQuality: #C, sizeCategory: #M }

@Search.searchable: true

@VDM.viewType: #CONSUMPTION

define view C_TechnicalObjectVH
  as select from I_TechnicalObject

  association [0..1] to I_Equipment as _EquipmentSearch on $projection.EquipmentWithLeadingZeros = _EquipmentSearch.Equipment

{
      @EndUserText.label: 'Technical Object'
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
      @Search.ranking: #HIGH
      @UI.hidden: true
  key I_TechnicalObject.TechnicalObject,

      // @UI.hidden: true

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_TechObjIsEquipOrFuncnlLoc',
                                                      element: 'TechObjIsEquipOrFuncnlLoc' } } ]
      @ObjectModel.text.element: [ 'TechObjIsEquipOrFuncnlLocDesc' ]
      @UI.lineItem: [ { position: 30 } ]
      @UI.textArrangement: #TEXT_ONLY
  key I_TechnicalObject.TechObjIsEquipOrFuncnlLoc,

      @ObjectModel.filter.transformedBy: 'cl_eam_techobjlabel_exit'
      @ObjectModel.text.element: [ 'TechnicalObjectDescription' ]
      @UI.lineItem: [ { position: 10 } ]
      cast(case when I_TechnicalObject.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'
                then case replace(
                            replace(
                                replace(
                                    replace(
                                        replace(
                                            replace(
                                                replace(
                                                    replace(
                                                        replace(
                                                            replace(I_TechnicalObject.Equipment, '0', ''),
                                                        '1', ''),
                                                    '2', ''),
                                                '3', ''),
                                            '4', ''),
                                         '5', ''),
                                      '6', ''),
                                   '7', ''),
                                '8', ''),
                             '9', '')
                     when '' then ltrim(I_TechnicalObject.Equipment, '0')
                     else I_TechnicalObject.Equipment end
                when I_TechnicalObject.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'
                then I_TechnicalObject._FunctionalLocationLabel.FunctionalLocationLabelName  end as eams_tec_obj preserving type)
                                                                                                                        as TechnicalObjectLabel,

      @Consumption.hidden: true
      I_TechnicalObject.Equipment                                                                                       as EquipmentWithLeadingZeros,

      // ---------- Search scope (start) ----------


      @Consumption.hidden: true
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
      @Search.ranking: #HIGH
      I_TechnicalObject._FunctionalLocationLabel._FuncLocationLabelSearch.FunctionalLocationLabelName,

      @EndUserText.label: 'Technical Object Description'
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
      @Search.ranking: #MEDIUM
      @UI.lineItem: [ { position: 20 } ]
      I_TechnicalObject._TechnicalObjectText[1: Language = $session.system_language].TechnicalObjectDescription,

      @Consumption.hidden: true
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
      @Search.ranking: #HIGH
      @UI.hidden: true
      _EquipmentSearch.Equipment,
      // ---------- Search scope (end) ----------


      -- DCL:

      @UI.lineItem: [ { position: 70 } ]
      I_TechnicalObject.MaintenancePlanningPlant,

      @Consumption.hidden: true
      I_TechnicalObject.MaintenancePlannerGroup,

      @Consumption.hidden: true
      I_TechnicalObject.AuthorizationGroup,

      @Consumption.hidden: true
      TechnicalObjectCategory,

      @UI.hidden: true
      TechnicalObjectType,

      @Consumption.hidden: true
      MaintObjectLocAcctAssgmtNmbr,

      @UI.lineItem: [ { position: 60 } ]
      _LocationAccountAssignment.MaintenancePlant,

      @Consumption.hidden: true
      _LocationAccountAssignment.CostCenter,

      @Consumption.hidden: true
      _LocationAccountAssignment.ControllingArea,

      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EAM_MALFUNC_TECHOBJ_EXIT'
      @UI.hidden: true
      cast('' as eam_techobj_installation_loc)                                                                          as TechObjInstallationLocation,

      @UI.lineItem: [ { position: 40 } ]
      _LocationAccountAssignment.MaintObjectFreeDefinedAttrib,

      @UI.lineItem: [ { position: 50 } ]
      _WorkCenter.WorkCenter,

      @Semantics.text: true
      @UI.hidden: true
      _TechObjIsEquipOrFuncnlLoc._Text[1: Language = $session.system_language].TechObjIsEquipOrFuncnlLocDesc,

      @UI.hidden: true
      IsDeleted,

      @UI.hidden: true
      TechObjStatusIsInactive
}