R_RECONTRCONDITIONTP

CDS View

Real Estate Condition TP

R_RECONTRCONDITIONTP is a CDS View in S/4HANA. Real Estate Condition TP. 3 CDS views read from this table.

CDS Views using this table (3)

ViewTypeJoinVDMDescription
A_REContrCondition view_entity projection CONSUMPTION Conditions
C_REContractConditionTP view_entity projection CONSUMPTION RE Contract Condition
C_REValnMngConditionTP view_entity projection CONSUMPTION Contract Conditions
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@VDM.viewType: #TRANSACTIONAL
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@VDM.usage.type: [ #TRANSACTIONAL_PROCESSING_SERVICE ]

@ObjectModel.representativeKey: 'REConditionUUID'
@Analytics.technicalName: 'RRECONTRCONDTP'
@ObjectModel.semanticKey: [ 'InternalRealEstateNumber', 'REConditionUUID' ] //'REStatusObjectCalculation', 'REConditionType', 'REExtConditionPurpose', 'ValidityStartDate' ]

@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L

@EndUserText.label: 'Real Estate Condition TP'

define view entity R_REContrConditionTP
  as select from I_RECondition
  association        to parent R_REContractTP   as _REContract                   on  $projection.InternalRealEstateNumber = _REContract.InternalRealEstateNumber
  association [1..1] to I_REConditionAddl       as _REConditionAddl              on  $projection.InternalRealEstateNumber = _REConditionAddl.InternalRealEstateNumber
                                                                                 and $projection.REConditionUUID          = _REConditionAddl.REConditionUUID
  association [0..*] to R_REContrObjAssgmtTP    as _REStatusObjectCalculation    on  $projection.InternalRealEstateNumber  = _REStatusObjectCalculation.InternalRealEstateNumber
                                                                                 and $projection.REStatusObjectCalculation = _REStatusObjectCalculation.REStatusObjectTarget
  association [0..*] to R_REContrObjAssgmtTP    as _REStatusObjectDistribution   on  $projection.InternalRealEstateNumber   = _REStatusObjectDistribution.InternalRealEstateNumber
                                                                                 and $projection.REStatusObjectDistribution = _REStatusObjectDistribution.REStatusObjectTarget
  association [0..*] to I_REObjectAssgmtIdnAddl as _REStatusObjectCalcAddl       on  $projection.InternalRealEstateNumber  = _REStatusObjectCalcAddl.InternalRealEstateNumber
                                                                                 and $projection.REStatusObjectCalculation = _REStatusObjectCalcAddl.REStatusObjectTarget
  association [0..*] to I_REObjectAssgmtIdnAddl as _REStatusObjectDistAddl       on  $projection.InternalRealEstateNumber   = _REStatusObjectDistAddl.InternalRealEstateNumber
                                                                                 and $projection.REStatusObjectDistribution = _REStatusObjectDistAddl.REStatusObjectTarget

  association [1..1] to I_RETerm                as _REContrCndnSelPostingTerm    on  $projection.InternalRealEstateNumber  = _REContrCndnSelPostingTerm.InternalRealEstateNumber
                                                                                 and $projection.REPostingTerm             = _REContrCndnSelPostingTerm.RETermNumber
                                                                                 and _REContrCndnSelPostingTerm.RETermType = '1100'
  association [1..1] to I_RETerm                as _REContrCndnSelRhythmTerm     on  $projection.InternalRealEstateNumber = _REContrCndnSelRhythmTerm.InternalRealEstateNumber
                                                                                 and $projection.RERhythmTerm             = _REContrCndnSelRhythmTerm.RETermNumber
                                                                                 and _REContrCndnSelRhythmTerm.RETermType = '1110'
  association [1..1] to I_RETerm                as _REContrCndnSelOrglAssgmtTerm on  $projection.InternalRealEstateNumber     = _REContrCndnSelOrglAssgmtTerm.InternalRealEstateNumber
                                                                                 and $projection.REOrglAssignmentTerm         = _REContrCndnSelOrglAssgmtTerm.RETermNumber
                                                                                 and _REContrCndnSelOrglAssgmtTerm.RETermType = '1120'


  association [1..1] to I_REEntryValidity       as _REEntryValidity              on  $projection.REEntryValidity = _REEntryValidity.REEntryValidity

{
  key   REConditionUUID,
  key   InternalRealEstateNumber,
        REStatusObjectCalculation,
        @ObjectModel.virtualElement: true
        cast( '' as recaident )                                                                                                as REStatusObjectIDCalculation,

        cast( left(REStatusObjectCalculation,2) as recdbusobjtypecalc)                                                         as REStatusObjectTypeCalculation,
        REConditionType,
        REExtConditionPurpose,
        cast(concat(ValidityStartDate, ValidityEndDate ) as recadateperiod)                                                    as ValidityStartEndDateValue,
        ValidityStartDate,

        REStatusObjectDistribution,
        @ObjectModel.virtualElement: true
        cast( '' as recaident )                                                                                                as REStatusObjectIDDistribution,

        @ObjectModel.virtualElement: true
        cast( '' as recavdmidentkey )                                                                                          as REIdentificationKeyCalculation,

        REObjectTypeDistribution,
        REObjectTypePosting,

        ValidityEndDate,

        CreatedByUser,
        //          Create Timestamp aggregation

        @Semantics.systemDateTime.createdAt: true
        cast (dats_tims_to_tstmp( CreationDate,
                            CreationTime,
                            abap_system_timezone( $session.client,'NULL' ), $session.client, 'NULL' ) as vdm_creationdatetime) as CreationDateTime,
        RESourceOfCreation,

        LastChangedByUser,
        //          LastChange Timestamp aggregation

        @Semantics.systemDateTime.lastChangedAt: true
        cast (dats_tims_to_tstmp( LastChangeDate,
                            LastChangeTime,
                            abap_system_timezone( $session.client,'NULL' ), $session.client, 'NULL' ) as vdm_lastchangedon)    as LastChangeDateTime,
        RESourceOfChange,

        REIsOneTimeCondition,
        REConditionIsStatistical,

        //        @ObjectModel.foreignKey.association: '_REContrPostingTerm'

        REPostingTerm,
        //        @ObjectModel.foreignKey.association: '_REContrRhythmTerm'

        RERhythmTerm,
        REAdjustmentNumber,
        //        @ObjectModel.foreignKey.association: '_REContrOrglAssgmtTerm'

        REOrglAssignmentTerm,
        RESalesTerm,
        REPeakSalesTerm,
        RESrvcChrgSettlementPostingTrm,
        REWithholdingTaxTerm,

        RECalculationRule,

        REUnitPrice,
        REConditionCurrency,

        RECalculationRuleParam1,
        RECalculationRuleParam2,
        //      Calculation edit parameters

        @ObjectModel.editableFieldFor: 'RECalculationRuleParam1'
        cast( RECalculationRuleParam1 as rebdmeas )                                                                            as REMeasurementTypeForEdit,
        @ObjectModel.editableFieldFor: 'RECalculationRuleParam2'
        cast( RECalculationRuleParam2 as msehiunit )                                                                           as REMeasurementUnitForEdit,

        REDistributionRule,
        REDistributionRuleParam1,
        REDistributionRuleParam2,
        REReasonForChange,
        REStsObjectParamCalculation,
        REStsObjectParamDistribution,
        RECashFlowPostingFromDate,
        REConditionExceptionalDueDate,
        //      Moved to I_REConditionAdditional

        /*
                REConditionCalcIsInvalid,
                REDistributionIsInvalid,
                REConditionObjTypeCalculation,
        */
        cast('1100' as char4)                                                                                                  as REPostingTermType,
        cast('1110' as char4)                                                                                                  as RERhythmTermType,
        cast('1120' as char4)                                                                                                  as REOrglAssgmtTermType,

        @ObjectModel.foreignKey.association: '_REEntryValidity'
        case
            when ValidityStartDate > $session.system_date then cast ('2' as recavdmentryvalidity)
            when ValidityStartDate <= $session.system_date and ValidityEndDate >= $session.system_date then cast('3' as recavdmentryvalidity)
            else
            cast ('1' as recavdmentryvalidity)
        end                                                                                                                    as REEntryValidity,

        case
            when ValidityStartDate > $session.system_date then 2
            when ValidityStartDate <= $session.system_date and ValidityEndDate >= $session.system_date then 3
            else
            1
        end                                                                                                                    as REEntryValidityCriticality,

        _Currency,
        _CreatedByUser,
        _ChangedByUser,

        _REConditionType,
        _REConditionPurposeExt,
        _REObjectTypeDistribution,
        _REObjectTypePosting,
        _RECndnCalculationRuleExt,
        _RECndnDistributionRuleExt,
        _REConditionChangeReason,
        _REStatusObjectCalculation,
        _REStatusObjectDistribution,
        _REPostingTerm,
        _RERhythmTerm,
        _REOrganizationalAssgmtTerm,
        _REContrCndnSelPostingTerm,
        _REContrCndnSelRhythmTerm,
        _REContrCndnSelOrglAssgmtTerm,
        _REEntryValidity,
        _REConditionAddl,
        _REContract,

        //Text

        _REConditionTypeText,
        _RECndnPurposeExtText,
        _RECndnCalculationRuleExtText,
        _RECndnDistrRuleExtText,
        _RECndnChangeReasonText,
        _CurrencyText
}
where
      _REContract.RealEstateObjectType =  'IS'
  and REConditionIsToBeDeleted         <> 'X'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_RECONDITION",
"R_RECONTRACTTP"
],
"ASSOCIATED":
[
"I_CURRENCY",
"I_CURRENCYTEXT",
"I_RECNDNCALCULATIONRULEEXT",
"I_RECNDNCALCULATIONRULEEXTTEXT",
"I_RECNDNCHANGEREASONTEXT",
"I_RECNDNDISTRIBUTIONRULEEXT",
"I_RECNDNDISTRRULEEXTTEXT",
"I_RECNDNPURPOSEEXTTEXT",
"I_RECONDITIONADDL",
"I_RECONDITIONCHANGEREASON",
"I_RECONDITIONPURPOSEEXT",
"I_RECONDITIONTYPE",
"I_RECONDITIONTYPETEXT",
"I_REENTRYVALIDITY",
"I_REOBJECTTYPEDISTRIBUTION",
"I_REOBJECTTYPEPOSTING",
"I_REORGANIZATIONALASSGMTTERM",
"I_REPOSTINGTERM",
"I_RERHYTHMTERM",
"I_RETERM",
"I_USER",
"R_RECONTRACTTP",
"R_RECONTROBJASSGMTTP"
],
"BASE":
[
"I_RECONDITION"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/