@AccessControl.authorizationCheck: #CHECK
//@VDM.lifecycle.contract.type: #PUBLIC_REMOTE_API
@VDM.usage.type: [ #TRANSACTIONAL_PROCESSING_SERVICE ]
@VDM.viewType: #CONSUMPTION
@ObjectModel.usageType: {
dataClass: #MASTER,
serviceQuality: #C,
sizeCategory: #L
}
@EndUserText.label: 'RE Contract Notice Rules'
@Metadata.allowExtensions: true
define view entity C_REContractNoticeTermRulesTP
as projection on R_REContrNoticeTermRulesTP
{
@UI.hidden: true
key InternalRealEstateNumber,
@UI.hidden: true
key RETermType,
@UI.hidden: true
key RETermNumber,
@ObjectModel.foreignKey.association: '_RENoticeRule'
@ObjectModel.text.element: ['RENoticeRuleDescription']
@UI.hidden: true
// @Consumption.valueHelpDefinition: [{ entity : {name: 'I_RENoticeRule', element: 'RENoticeProcedure' } }]
key RENoticeRule,
@UI.hidden: true
key RENoticeSequenceNo,
@ObjectModel.editableFieldFor: 'RENoticeSequenceNo'
@UI.hidden: true
RENoticeSequenceNoForEdit,
// @ObjectModel.foreignKey.association: '_RENoticeRule'
// @UI.hidden: true
@ObjectModel.text.element: ['RENoticeRuleDescription']
@ObjectModel.editableFieldFor: 'RENoticeRule'
@UI.hidden: true
// @Consumption.valueHelpDefinition: [{ entity : {name: 'I_REIndividualNoticeProcedure', element: 'RENoticeRule' } ,
// additionalBinding: [
// { element: 'RENoticeGivingParty', localElement: 'RENoticeGivingParty', usage: #RESULT },
// { element: 'RENoticeRuleDescription', localElement: 'RENoticeRuleDescription', usage: #RESULT },
// { element: 'RENoticeRuleType', localElement: 'RENoticeRuleType', usage: #FILTER_AND_RESULT },
// { element: 'InternalRealEstateNumber', localElement: 'InternalRealEstateNumber', usage: #FILTER },
// { element: 'RETermType', localElement: 'RETermType', usage: #FILTER },
// { element: 'RETermNumber', localElement: 'RETermNumber', usage: #FILTER }
// ]
// } ]
RENoticeRuleForEdit,
@UI.hidden: true
RENoticeType,
@ObjectModel.foreignKey.association: '_RENoticeGivingParty'
@ObjectModel.text.element: ['RENoticeGivingPartyName']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_RENoticeGivingParty', element: 'RENoticeGivingParty' } ,
additionalBinding: [
{ element: 'RENoticeGivingParty_Text', localElement: 'RENoticeGivingPartyName', usage: #RESULT }]
} ]
RENoticeGivingParty,
@ObjectModel.foreignKey.association: '_RENoticeRuleType'
@ObjectModel.text.element: ['RENoticeRuleTypeName']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_RENoticeRuleTypeVH', element: 'RENoticeRuleType' },
additionalBinding: [
{ element: 'RENoticeRuleType_Text', localElement: 'RENoticeRuleTypeName', usage: #RESULT }]
} ]
RENoticeRuleType,
RETermPeriodInYears,
RETermPeriodInMonths,
RETermPeriodInDays,
@Consumption.valueHelpDefinition: [{ entity : {name: 'C_REPeriodEndRhythmTypeVH', element: 'REPeriodEndRhythmType' } ,
additionalBinding: [
{ element: 'REPeriodEndRhythmType_Text', localElement: 'REPeriodEndRhythmTypeText', usage: #RESULT }]
} ]
@ObjectModel.foreignKey.association: '_REPeriodEndRhythmType'
@ObjectModel.text.element: ['REPeriodEndRhythmTypeText']
REPeriodEndRhythmType,
RENoticePeriodInMonths,
RENoticePeriodInWeeks,
RENoticePeriodInDays,
RENoticeGracePeriod,
@ObjectModel.foreignKey.association: '_REGracePeriodCalOrWorkDay'
@ObjectModel.text.element: ['RECalendarOrWorkDayText']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_RECalendarOrWorkDay', element: 'RECalendarOrWorkDay' } ,
additionalBinding: [
{ element: 'RECalendarOrWorkDay_Text', localElement: 'RECalendarOrWorkDayText', usage: #RESULT }]
} ]
REGracePeriodCalOrWorkDays,
@ObjectModel.foreignKey.association: '_NoticePeriodCalendar'
@ObjectModel.text.element: ['RENoticePeriodCalendarName']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_FactoryCalendar', element: 'FactoryCalendar' } ,
additionalBinding: [
{ element: 'FactoryCalendar_Text', localElement: 'RENoticePeriodCalendarName', usage: #RESULT }]
} ]
RENoticePeriodCalendar,
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_CalendarYear', element: 'CalendarYear' } }
]
RENoticeYear,
@ObjectModel.foreignKey.association: '_NoticeMonth'
@ObjectModel.text.element: ['RENoticeMonthName']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_CalendarMonth', element: 'CalendarMonth' } ,
additionalBinding: [
{ element: 'CalendarMonth_Text', localElement: 'RENoticeMonthName', usage: #RESULT }]
} ]
RENoticeMonth,
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_CalendarDay', element: 'CalendarDay' } }
]
RENoticeDay,
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_CalendarYear', element: 'CalendarYear' } }
]
RENoticeReceiptYear,
@ObjectModel.foreignKey.association: '_NoticeReceiptMonth'
@ObjectModel.text.element: ['RENoticeReceiptMonthName']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_CalendarMonth', element: 'CalendarMonth' } ,
additionalBinding: [
{ element: 'CalendarMonth_Text', localElement: 'RENoticeReceiptMonthName', usage: #RESULT }]
} ]
RENoticeReceiptMonth,
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_CalendarDay', element: 'CalendarDay' } }
]
RENoticeReceiptDay,
@ObjectModel.foreignKey.association: '_RENoticeReceiptCalOrWorkDay'
@ObjectModel.text.element: ['RENoticeReceiptCalOrWorkDayTxt']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_RECalendarOrWorkDay', element: 'RECalendarOrWorkDay' } ,
additionalBinding: [
{ element: 'RECalendarOrWorkDay_Text', localElement: 'RENoticeReceiptCalOrWorkDayTxt', usage: #RESULT }]
} ]
RENoticeRcptCalOrWorkDays,
@ObjectModel.foreignKey.association: '_NoticeReceiptCalendar'
@ObjectModel.text.element: ['RENoticeReceiptCalendarName']
@Consumption.valueHelpDefinition: [{ entity : {name: 'I_FactoryCalendar', element: 'FactoryCalendar' } ,
additionalBinding: [
{ element: 'FactoryCalendar_Text', localElement: 'RENoticeReceiptCalendarName', usage: #RESULT }]
} ]
RENoticeReceiptCalendar,
@UI.hidden: true
_RENoticeGivingParty._Text.RENoticeGivingPartyName as RENoticeGivingPartyName : localized,
@UI.hidden: true
_NoticeReceiptMonth._Text.CalendarMonthName as RENoticeReceiptMonthName : localized,
@UI.hidden: true
_NoticeMonth._Text.CalendarMonthName as RENoticeMonthName : localized,
@UI.hidden: true
_REGracePeriodCalOrWorkDay._Text.RECalendarOrWorkDayText as RECalendarOrWorkDayText : localized,
@UI.hidden: true
_RENoticeReceiptCalOrWorkDay._Text.RECalendarOrWorkDayText as RENoticeReceiptCalOrWorkDayTxt : localized,
@UI.hidden: true
_NoticePeriodCalendar._Text.FactoryCalendarName as RENoticePeriodCalendarName : localized,
@UI.hidden: true
_NoticeReceiptCalendar._Text.FactoryCalendarName as RENoticeReceiptCalendarName : localized,
@UI.hidden: true
_REPeriodEndRhythmType._Text.REPeriodEndRhythmTypeText as REPeriodEndRhythmTypeText : localized,
@UI.hidden: true
_RENoticeRuleType._Text.RENoticeRuleTypeName as RENoticeRuleTypeName : localized,
// @UI.hidden: true
@Semantics.text: true
RENoticeRuleDescription,
@UI.hidden: true
@ObjectModel.virtualElement
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_RECN_NOTICERULE_CALC_EXIT'
virtual RENoticePeriodRuleIsHidden : abap_boolean,
@UI.hidden: true
@ObjectModel.virtualElement
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_RECN_NOTICERULE_CALC_EXIT'
virtual RENoticeDeadlineRuleIsHidden : abap_boolean,
@UI.hidden: true
@ObjectModel.virtualElement
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_RECN_NOTICERULE_CALC_EXIT'
virtual IsDraftEntity : recabool,
/* Associations */
_NoticeMonth,
_NoticePeriodCalendar,
_NoticeReceiptCalendar,
_NoticeReceiptMonth,
_REGracePeriodCalOrWorkDay,
_RENoticeGivingParty,
_RENoticeReceiptCalOrWorkDay,
_RENoticeRule,
_RENoticeRuleType,
_RENoticeType,
_REPeriodEndRhythmType,
// @ObjectModel.text.element: ['RERenewalTypeName']
//@ObjectModel.foreignKey.association: '_RERenewalType'
// key RERenewalType,
// key RERenewalSequenceNumber,
// @ObjectModel.text.element: ['RERenewalRuleTypeName']
//@ObjectModel.foreignKey.association: '_RERenewalRuleType'
// key RERenewalRuleType,
//
//// @UI.hidden: true
//// _REContract.REStatusObject,
//// @UI.hidden: true
//// _REContract.REIdentificationKey,
// @ObjectModel.text.element: ['RERenewalRuleDescription']
// @ObjectModel.foreignKey.association: '_RERenewalRule'
// RERenewalRule,
//// @ObjectModel.foreignKey.association: '_RERenewalRuleType'
// @ObjectModel.text.element: ['REAutomaticRenewalTypeName']
// REAutomaticRenewalType,
// RENumberOfRenewals,
// RERenewalPeriodInYears,
// RERenewalPeriodInMonths,
// RERenewalPeriodInDays,
//// @ObjectModel.foreignKey.association: '_RenewalDateRoundingRule'
// @ObjectModel.text.element: ['RERenewalDateRoundingRuleDesc']
// RERenewalRoundingDateRule,
// RENotificationPeriodInYears,
// RENotificationPeriodInMonths,
// RENotificationPeriodInWeeks,
// RENotificationPeriodInDays,
//
// //@ObjectModel.foreignKey.association: '_NotificationDateRoundingRule'
// @ObjectModel.text.element: ['REDateRoundingRuleDesc']
// RENotificationRoundingDateRule,
@Semantics.valueRange.maximum: '1'
_RENoticeTerm : redirected to parent C_REContractNoticeTermTP,
_REContract : redirected to C_REContractTP
}