I_CLFNOBJECTCHARC

CDS View

Classification Characteristic of Object

I_CLFNOBJECTCHARC is a CDS View in S/4HANA. Classification Characteristic of Object. It contains 13 fields. 8 CDS views read from this table.

CDS Views using this table (8)

ViewTypeJoinVDMDescription
A_EquipmentClfnCharValue view_entity inner COMPOSITE Equipment Characteristic Values
I_ClfnObjectCharcForKeyDate view from COMPOSITE Clfn Object Characteristic For Key Date
I_DCBQualityNameForMaterial view inner COMPOSITE Quality name parameters per material
P_CharcCtlgVCCharcMatlAssgmt view_entity from COMPOSITE
R_ClfnHistlObjectCharcTP view_entity from TRANSACTIONAL Clfn Historical Object Charc - TP
R_EquipmentClfnCharValueTP view_entity inner TRANSACTIONAL Equipment Characteristic Values
R_FuncnlLocClfnCharValueTP view_entity inner TRANSACTIONAL Characteristic Values
R_MaintPlanClfnCharValueTP view inner TRANSACTIONAL Maintenance Plan Classification Class Characteristics Value

Fields (13)

KeyField CDS FieldsUsed in Views
KEY ChangeNumber ChangeNumber 2
KEY CharcInternalID CharcInternalID 6
KEY ClassInternalID ClassInternalID 6
KEY ClassType ClassType 2
KEY ClfnObjectID ClfnObjectID 2
KEY ClfnObjectTable ClfnObjectTable 2
KEY ClfnObjectType ClfnObjectType 1
_Characteristic _Characteristic 1
ClfnObjectInternalID ClfnObjectInternalID 2
IsDeleted IsDeleted 1
LastChangeDateTime LastChangeDateTime 2
ValidityEndDate ValidityEndDate 2
ValidityStartDate ValidityStartDate 2
@AbapCatalog.preserveKey: true
@AbapCatalog.sqlViewName: 'INGCCLFN12'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Classification Characteristic of Object'
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@VDM.viewType: #BASIC
define view I_ClfnObjectCharc 
  as select distinct from I_ClfnObjectClassBasic as ObjectClassBasic 
      join I_ClfnClassHierarchy as Hierarchy on 
        Hierarchy.DescendantClassInternalID = ObjectClassBasic.ClassInternalID
        and Hierarchy.ValidityStartDate <= ObjectClassBasic.ValidityEndDate
        and Hierarchy.ValidityEndDate   >= ObjectClassBasic.ValidityStartDate
        and ObjectClassBasic.IsDeleted = ''
      join P_ClfnObjectHeader as ObjectHeader
        on  ObjectClassBasic.ClassType      = ObjectHeader.ClassType
        and ObjectClassBasic.ClfnObjectType = ObjectHeader.ClfnObjectType
        and ObjectClassBasic.ClfnObjectID   = ObjectHeader.objekp          
      join I_ClfnClassCharcBasic as ClassCharcBasic 
        on ClassCharcBasic.ClassInternalID       = Hierarchy.AncestorClassInternalID
        and ClassCharcBasic.ValidityStartDate <= ObjectClassBasic.ValidityEndDate
        and ClassCharcBasic.ValidityEndDate   >= ObjectClassBasic.ValidityStartDate
      
      // look for an overlapping interval  

      association [1..1] to I_ClfnClass as _Class 
        on $projection.ClassInternalID    = _Class.ClassInternalID 
       and $projection.ValidityStartDate <= _Class.ValidityEndDate
       and $projection.ValidityEndDate   >= _Class.ValidityStartDate          
           
      /*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/  
      association [1..1] to I_ClfnCharacteristic as _Characteristic         
        on $projection.CharcInternalID    = _Characteristic.CharcInternalID 
        // Usage of validity startr and end date replaces key field TimeIntervalNumber of characteristic in the condition        

       and $projection.ValidityStartDate <= _Characteristic.ValidityEndDate
       and $projection.ValidityEndDate   >= _Characteristic.ValidityStartDate  

{
  key ObjectHeader.ClfnObjectID,
  key ObjectHeader.ClfnObjectTable,
  key ObjectHeader.ClfnObjectType,
  key ObjectClassBasic.ClassInternalID,
  key ClassCharcBasic.CharcInternalID,
  key ClassCharcBasic.TimeIntervalNumber,
      ObjectHeader.ClfnObjectInternalID,    
      ObjectHeader.ClassType,
      ClassCharcBasic.IsDeleted,
      ClassCharcBasic.ChangeNumber,
      @Semantics.businessDate.from: true
      ClassCharcBasic.ValidityStartDate,
      @Semantics.businessDate.to: true
      ClassCharcBasic.ValidityEndDate,
      ObjectHeader.LastChangeDateTime,
      
      _Class,
      _Characteristic     
}

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CLFNCLASSCHARCBASIC",
"I_CLFNCLASSHIERARCHY",
"I_CLFNOBJECTCLASSBASIC",
"P_CLFNOBJECTHEADER"
],
"ASSOCIATED":
[
"I_CLFNCHARACTERISTIC",
"I_CLFNCLASS"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/