I_EHSAMOUNTROOT

CDS View

EHS Amount Root

I_EHSAMOUNTROOT is a CDS View in S/4HANA. EHS Amount Root. It contains 24 fields. 8 CDS views read from this table.

CDS Views using this table (8)

ViewTypeJoinVDMDescription
C_Amount view from CONSUMPTION Amount Data
C_EHSMyDataCollectionAmounts view from CONSUMPTION My Data Collection Amounts
I_EHSAmountRootVH view from BASIC Search for Amounts
I_EHSAmountsForActivity view from COMPOSITE Amounts for Activity
I_EHSAmountsForActivity view union COMPOSITE Amounts for Activity
I_EnvrmtAmountsForActivity view from COMPOSITE Amounts for Activities
I_EnvrmtAmountsForActivity view union COMPOSITE Amounts for Activities
P_EHSMYDATACOLPENDINGAMOUNTS view from COMPOSITE

Fields (24)

KeyField CDS FieldsUsed in Views
KEY EHSAmountUUID EHSAmountUUID 3
_EHSAmountSourceType _EHSAmountSourceType 2
_EHSAmountStatus _EHSAmountStatus 2
_UnitText _UnitText 3
EHSAmountDeviationID EHSAmountDeviationID 1
EHSAmountExternalSource EHSAmountExternalSource 1
EHSAmountHasWarning EHSAmountHasWarning 1
EHSAmountIsFaulty EHSAmountIsFaulty 1
EHSAmountIsMissing EHSAmountIsMissing 2
EHSAmountIsNotAvailable EHSAmountIsNotAvailable 2
EHSAmountIsPreliminary EHSAmountIsPreliminary 1
EHSAmountIsReplaced EHSAmountIsReplaced 1
EHSAmountSourceType EHSAmountSourceType 1
EHSAmountSourceUUID EHSAmountSourceUUID 2
EHSAmountStatus EHSAmountStatus 2
EHSAmountUTCDateTime EHSAmountUTCDateTime 3
EHSAmountValue EHSAmountValue 2
EHSAmountValueAsText EHSAmountValueAsText 1
EHSSubjectType EHSSubjectType 2
EHSSubjectUUID EHSSubjectUUID 3
Note EHSAmountRemarkText,Note 2
UnitOfMeasure UnitOfMeasure 1
UnitOfMeasureDimension UnitOfMeasureDimension 1
UnitOfMeasureName UnitOfMeasureName 2
@AbapCatalog.sqlViewName: 'IEHSAMNROOT'
@EndUserText.label: 'EHS Amount Root'

@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey:true
 

@AccessControl:
{
  authorizationCheck: #PRIVILEGED_ONLY,
  privilegedAssociations:  [ '_EHSAmountHistory', '_CreatedByUser' ],
  // blocking of personal data not required (user data can not be blocked and no BP info from user exposed)

  personalData.blocking: #NOT_REQUIRED
}


@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType:{ dataClass: #TRANSACTIONAL,
                         serviceQuality: #C,
                         sizeCategory: #XL }
  
@ObjectModel:{modelCategory: #BUSINESS_OBJECT,
              transactionalProcessingEnabled: true,
              createEnabled: false,
              updateEnabled: true,
              deleteEnabled: false,
              writeActivePersistence: 'ehfndv_amns_root',
              representativeKey: 'EHSAmountUUID',
              compositionRoot: true,
              sapObjectNodeType.name: 'EHSDataAmount' }

@VDM: {
  lifecycle.contract.type:#SAP_INTERNAL_API,
  viewType: #BASIC
}

// protected by DCL0

define view I_EHSAmountRoot
  as select from    ehfndv_amns_root

    left outer to one join ehfndd_kv_temp on ehsamountuuid = hextobin(
      ehfndd_kv_temp.master_uuid
    )
  association [0..1] to I_User                as _CreatedByUser       on $projection.CreatedByUser = _CreatedByUser.UserID
  // association [0..1] to I_User                     as _LastChangedByUser     on  $projection.LastChangedByUser   = _LastChangedByUser.UserID

  association [0..*] to I_EHSAmountHistory    as _EHSAmountHistory    on $projection.EHSAmountUUID = _EHSAmountHistory.EHSAmountUUID
  association [0..*] to I_EHSAmountLimitFail  as _EHSAmountLimitFail  on $projection.EHSAmountUUID = _EHSAmountLimitFail.EHSAmountUUID
  association [1..1] to I_EHSAmountStatus     as _EHSAmountStatus     on $projection.EHSAmountStatus = _EHSAmountStatus.EHSAmountStatus
  association [0..1] to I_UnitOfMeasure       as _UnitText            on $projection.UnitOfMeasure = _UnitText.UnitOfMeasure
  association [0..1] to I_EHSAmountSourceType as _EHSAmountSourceType on $projection.EHSAmountSourceType = _EHSAmountSourceType.EHSAmountSourceType

    // Extension include

  association [1..1] to E_EHSDataAmount       as _Extension           on $projection.EHSAmountUUID = _Extension.EHSAmountUUID
{
 

  key ehsamountuuid                                                               as EHSAmountUUID,
      //admin fields

      @Semantics.systemDateTime.createdAt: true
      cast( creationdatetime as ehfnd_datetime_cr preserving type )               as CreationDateTime,
      @Semantics.systemDateTime.lastChangedAt: true
      cast( lastchangedatetime as ehfnd_datetime_ch preserving type )             as LastChangeDateTime,
      @Semantics.user.createdBy: true
      createdbyuser                                                               as CreatedByUser,
      // association

      _CreatedByUser,

      @Semantics.user.lastChangedBy: true
      lastchangedbyuser                                                           as LastChangedByUser,

      //funcional

      ehsamountsourceuuid                                                         as EHSAmountSourceUUID,
      @ObjectModel.foreignKey.association: '_EHSAmountSourceType'
      ehsamountsourcetype                                                         as EHSAmountSourceType,
      _EHSAmountSourceType,

      ehssubjecttype                                                              as EHSSubjectType,
      ehssubjectuuid                                                              as EHSSubjectUUID,
      ehsamountprocessuuid                                                        as EHSAmountProcessUUID,

      ehsamountutcdatetime                                                        as EHSAmountUTCDateTime,

      ehsamountvalue                                                              as EHSAmountValue,

      value                                                                       as EHSAmountValueAsText,

      @Semantics.unitOfMeasure
      unitofmeasure                                                               as UnitOfMeasure,
      _UnitText._Text[1: Language =  $session.system_language ].UnitOfMeasureName as UnitOfMeasureName,
      cast(unitofmeasuredimension as dimid preserving type )                      as UnitOfMeasureDimension,

      ehsamountcategory                                                           as EHSAmountCategory,
      ehsamountsubjcomponenttype                                                  as EHSAmountSubjComponentType,
      ehsamountsubjcomponentuuid                                                  as EHSAmountSubjComponentUUID,
      ehsamountismissing                                                          as EHSAmountIsMissing,
      ehsamountisfaulty                                                           as EHSAmountIsFaulty,
      ehsamountisnotavailable                                                     as EHSAmountIsNotAvailable,
      ehsamountisreplaced                                                         as EHSAmountIsReplaced,
      ehsamountdeviationid                                                        as EHSAmountDeviationID,
      ehsamounthaswarning                                                         as EHSAmountHasWarning,
      ehsamountispreliminary                                                      as EHSAmountIsPreliminary,

      @ObjectModel.foreignKey.association: '_EHSAmountStatus'
      cast( ehsamountstatus as ehfnd_amns_status_code_nc preserving type )        as EHSAmountStatus,
      ehsamountstatus                                                             as EHSAmountStatusName,


      ehsamountexternalsource                                                     as EHSAmountExternalSource,

      ehsamtoutofprecisenessoptr                                                  as EHSAmtOutOfPrecisenessOptr,

      note                                                                        as Note,
      
      ehsamountmigrationsource                                                    as EHSAmountMigrationSource,
      
      ehsdataamountcontrollingobject                                              as EHSDataAmountControllingObject,
      // associations

      _EHSAmountStatus, 
      _UnitText,

      //      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]

      _EHSAmountHistory,
      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _EHSAmountLimitFail

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_UNITOFMEASURE",
"I_UNITOFMEASURETEXT",
"EHFNDD_KV_TEMP",
"EHFNDV_AMNS_ROOT"
],
"ASSOCIATED":
[
"E_EHSDATAAMOUNT",
"I_EHSAMOUNTHISTORY",
"I_EHSAMOUNTLIMITFAIL",
"I_EHSAMOUNTSOURCETYPE",
"I_EHSAMOUNTSTATUS",
"I_UNITOFMEASURE",
"I_USER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/