I_REUsblObjectToContractAssgmt

DDL: I_REUSBLOBJECTTOCONTRACTASSGMT Type: view_entity COMPOSITE Package: VDM_RE_GO

RE Usable Object Contract Assignment

I_REUsblObjectToContractAssgmt is a Composite CDS View that provides data about "RE Usable Object Contract Assignment" in SAP S/4HANA. It reads from 2 data sources (I_REObjectAssgmt, I_REUsableObject) and exposes 22 fields with key fields REStatusObjectSource, REObjectAssignmentType, CompanyCode, RealEstateContract, ValidityStartEndDateValue. It has 2 associations to related views. Part of development package VDM_RE_GO.

Data Sources (2)

SourceAliasJoin Type
I_REObjectAssgmt _REObjectAssgmt from
I_REUsableObject _REUsableObject inner

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_REContract _REContract $projection.REStatusObjectTarget = _REContract.REStatusObject
[1..1] I_REUsableObject _REUsableObjectData $projection.REStatusObjectSource = _REUsableObjectData.REStatusObject

Annotations (12)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label RE Usable Object Contract Assignment view
Analytics.internalName #LOCAL view
Analytics.dataExtraction.enabled true view
Analytics.technicalName IREUOTOCN view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.modelingPattern #NONE view
ObjectModel.sapObjectNodeType.name REUsblObjToContractAssignment view
Metadata.ignorePropagatedAnnotations true view
VDM.viewType #COMPOSITE view

Fields (22)

KeyFieldSource TableSource FieldDescription
KEY REStatusObjectSource I_REObjectAssgmt REStatusObjectTarget
KEY REObjectAssignmentType I_REObjectAssgmt REObjectAssignmentType
KEY CompanyCode _REContract CompanyCode
KEY RealEstateContract _REContract RealEstateContract
KEY ValidityStartEndDateValue
KEY RealEstateUsableObjectUUID I_REUsableObject RealEstateUsableObjectUUID
ContractStartDateendasValidityStartDate
REStatusObjectTarget I_REObjectAssgmt REStatusObjectSource
ContractEndDateendasValidityEndDate
REOnlyInfoAssgmt I_REObjectAssgmt REOnlyInfoAssgmt
REStatusObjectSourceIsArchived I_REObjectAssgmt REStatusObjectSourceIsArchived
REGenerationType I_REObjectAssgmt REGenerationType
REIsMainAsset I_REObjectAssgmt REIsMainAsset
REAssignmentHasMultiple I_REObjectAssgmt REAssignmentHasMultiple
REObjectPossessionStartDate I_REObjectAssgmt REObjectPossessionStartDate
REObjectPossessionEndDate I_REObjectAssgmt REObjectPossessionEndDate
_REObjectTypeDetails I_REObjectAssgmt _REObjectTypeDetails
_REObjectAssignmentType I_REObjectAssgmt _REObjectAssignmentType
_REGenerationType I_REObjectAssgmt _REGenerationType
_CompanyCode _REContract _CompanyCode
_REContract _REContract
_REUsableObjectData _REUsableObjectData
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'RE Usable Object Contract Assignment'
@Analytics:{
  internalName: #LOCAL,
  dataExtraction.enabled: true,
  technicalName: 'IREUOTOCN'
}
@ObjectModel: {
  usageType: {
    dataClass: #MASTER,
    serviceQuality: #C,
    sizeCategory: #L
  },
  modelingPattern: #NONE,
  supportedCapabilities: [
    #CDS_MODELING_ASSOCIATION_TARGET,
    #SQL_DATA_SOURCE,
    #EXTRACTION_DATA_SOURCE,
    #CDS_MODELING_DATA_SOURCE
  ],
  sapObjectNodeType.name: 'REUsblObjToContractAssignment'
}
@Metadata.ignorePropagatedAnnotations: true
@VDM.viewType: #COMPOSITE

define view entity I_REUsblObjectToContractAssgmt
  as select from I_REObjectAssgmt as _REObjectAssgmt
    inner join   I_REUsableObject as _REUsableObject on _REObjectAssgmt.REStatusObjectTarget = _REUsableObject.REStatusObject
    
  association [1..1] to I_REContract as _REContract on $projection.REStatusObjectTarget = _REContract.REStatusObject
  association [1..1] to I_REUsableObject as _REUsableObjectData on $projection.REStatusObjectSource = _REUsableObjectData.REStatusObject

{
  key _REObjectAssgmt.REStatusObjectTarget                                                                as REStatusObjectSource,
  @ObjectModel.foreignKey.association: '_REObjectAssignmentType'
  key _REObjectAssgmt.REObjectAssignmentType,
  key _REContract.CompanyCode,
  key _REContract.RealEstateContract,
  key cast(concat(_REUsableObject.ValidityStartDate, _REUsableObject.ValidityEndDate ) as recadateperiod preserving type ) as ValidityStartEndDateValue,
  key _REUsableObject.RealEstateUsableObjectUUID,
      @Semantics.businessDate.from: true
      case when _REObjectAssgmt.ValidityStartDate > _REContract.ContractStartDate then cast( coalesce(_REUsableObject.ValidityStartDate, '00000000') as rebdvdmvalidfrom preserving type )
           when _REObjectAssgmt._REObjectTypeDetails._REUsableObject.ValidityStartDate > _REContract.ContractStartDate then _REObjectAssgmt._REObjectTypeDetails._REUsableObject.ValidityStartDate
           else _REContract.ContractStartDate
      end                                                                                                 as ValidityStartDate,
      _REObjectAssgmt.REStatusObjectSource                                                                as REStatusObjectTarget,

      @Semantics.businessDate.to: true
      case when _REObjectAssgmt.ValidityEndDate < _REContract.ContractEndDate then cast( coalesce(_REUsableObject.ValidityEndDate, '99991231') as rebdvdmvalidto preserving type )
           when _REObjectAssgmt._REObjectTypeDetails._REUsableObject.ValidityEndDate < _REContract.ContractEndDate then _REObjectAssgmt._REObjectTypeDetails._REUsableObject.ValidityEndDate
           else _REContract.ContractEndDate
      end                                                                                                 as ValidityEndDate,
      _REObjectAssgmt.REOnlyInfoAssgmt,
      _REObjectAssgmt.REStatusObjectSourceIsArchived,
      _REObjectAssgmt.REGenerationType,
      _REObjectAssgmt.REIsMainAsset,
      _REObjectAssgmt.REAssignmentHasMultiple,
      _REObjectAssgmt.REObjectPossessionStartDate,
      _REObjectAssgmt.REObjectPossessionEndDate,

      _REObjectAssgmt._REObjectTypeDetails,
      _REObjectAssgmt._REObjectAssignmentType,
      _REObjectAssgmt._REGenerationType,
      _REContract._CompanyCode,
      _REContract,
      _REUsableObjectData

}
where
      _REObjectAssgmt.REStatusObjectTarget like 'J7%'
  and _REObjectAssgmt.REStatusObjectSource like 'IS%'