@AbapCatalog.sqlViewName: 'IPPFACTORYCAL'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@AccessControl.personalData.blocking: #NOT_REQUIRED
@Analytics.dataCategory: #DIMENSION
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.representativeKey: 'FactoryCalendar'
@ObjectModel.semanticKey: 'FactoryCalendar'
@ObjectModel.usageType: {serviceQuality: #A, sizeCategory: #S, dataClass: #ORGANIZATIONAL}
@Search.searchable: true
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Factory Calendar'
@ClientHandling.type: #INHERITED
@AbapCatalog.buffering.status: #ACTIVE
@AbapCatalog.buffering.type: #FULL
@Analytics:{ dataExtraction: { enabled : true }}
@ObjectModel.supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE ]
define view I_FactoryCalendar
as select from tfacd as fcal
association [0..*] to I_FactoryCalendarText as _Text on $projection.FactoryCalendar = _Text.FactoryCalendar
association [0..1] to I_CalendarYear as _ValidityStartYear on $projection.ValidityStartYear = _ValidityStartYear.CalendarYear
association [0..1] to I_CalendarYear as _ValidityEndYear on $projection.ValidityEndYear = _ValidityEndYear.CalendarYear
{
@ObjectModel.text.association: '_Text'
@Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8}
key cast(fcal.ident as cr_wfcid preserving type) as FactoryCalendar,
cast(fcal.hocid as hident preserving type) as PublicHolidayCalendar,
@Semantics.calendar.year: true
cast(fcal.vjahr as pph_vjahr preserving type) as ValidityStartYear,
@Semantics.calendar.year: true
cast(fcal.bjahr as pph_bjahr preserving type) as ValidityEndYear,
// Admin
@Semantics.systemDate.createdAt: true
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'LastChangeDate'
cast(fcal.crdat as erdat preserving type) as CreationDate,
@Semantics.systemTime.createdAt: true
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'LastChangeTime'
cast(fcal.crtime as erzet preserving type) as CreationTime,
cast(fcal.motag as tamotag preserving type) as MondayIsWorkingDay,
cast(fcal.ditag as taditag preserving type) as TuesdayIsWorkingDay,
cast(fcal.miwch as tamiwch preserving type) as WednesdayIsWorkingDay,
cast(fcal.dotag as tadotag preserving type) as ThursdayIsWorkingDay,
cast(fcal.frtag as tafrtag preserving type) as FridayIsWorkingDay,
cast(fcal.satag as tasatag preserving type) as SaturdayIsWorkingDay,
cast(fcal.sotag as tasotag preserving type) as SundayIsWorkingDay,
cast(fcal.fetag as tafetag preserving type) as HolidayIsWorkingDay,
basis as FactoryCalendarStartDayValue,
@Semantics.systemDate.lastChangedAt: true
cast(fcal.crdat as laeda preserving type) as LastChangeDate,
@Semantics.systemTime.lastChangedAt: true
crtime as LastChangeTime,
cast(fcal.interv as tainterv preserving type) as FactoryCalSpclRulesAreExisting,
// Associations
_Text,
_ValidityStartYear,
_ValidityEndYear
};
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"TFACD"
],
"ASSOCIATED":
[
"I_CALENDARYEAR",
"I_FACTORYCALENDARTEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/