P_CALENDARENDWEEK

DDL: P_CALENDARENDWEEK Type: view BASIC

P_CALENDARENDWEEK is a Basic CDS View in SAP S/4HANA. It reads from 1 data source (I_CalendarDate) and exposes 10 fields.

Data Sources (1)

SourceAliasJoin Type
I_CalendarDate _Calendar from

Annotations (10)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.sqlViewName PCALENDARENDWK view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XXL view
VDM.viewType #BASIC view
VDM.private true view

Fields (10)

KeyFieldSource TableSource FieldDescription
FirstDayOfYearDate
ShiftedCalendarDate
CalendarDate CalendarDate
YearMonth YearMonth
YearQuarter YearQuarter
CalendarWeek
numc4endasEndDateWeek
YearDay YearDay
CalendarYear CalendarYear
FirstDayOfWeekDate FirstDayOfWeekDate
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog:{
sqlViewName: 'PCALENDARENDWK',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}
//@EndUserText.label: 'Calendar Week'

@ObjectModel: {
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #B,
     sizeCategory:   #XXL
   }
   }
@VDM: {
  viewType: #BASIC,
  private:true
}
define view P_CALENDARENDWEEK
  as select from I_CalendarDate as _Calendar
{
  cast(concat(CalendarYear, '0101') as abap.dats(8))                               as FirstDayOfYearDate,
  DATS_ADD_DAYS(CalendarDate,365,'NULL')                                           as ShiftedCalendarDate,
  CalendarDate,
  YearMonth,
  YearQuarter,
    cast(concat('00',cast(CalendarWeek as abap.char( 4 ))) as abap.numc( 4 ))                      as CalendarWeek,
  //  cast(concat('0',(cast( cast(CalendarWeek as int4) + 52 as abap.char(12 )))) as abap.numc( 4 )) as EndDateWeek,


//  cast(cast(CalendarWeek as abap.char( 4 )) as abap.numc( 4 ) )                    as CalendarWeek,

//  cast(cast( cast(CalendarWeek as int4) + 52 as abap.char(12 )) as abap.numc( 4 )) as EndDateWeek,

  case
      when CalendarWeek > '47'
      then cast(concat( '0', cast(cast(CalendarWeek as int4) + 52 as abap.char(12))) as abap.numc(4))
      else cast(concat('00',(cast( cast(CalendarWeek as int4) + 52 as abap.char( 12 )))) as abap.numc( 4 ))
      end    as EndDateWeek,


  // cast(CalendarWeek as int4) + 52  as EndDateWeek,

  //case

  //when CalendarWeek > '0099'

  //then cast(concat('0',(cast( EndDateWeek  as abap.char(12 )))) as abap.numc( 4 ))

  //else  cast(concat('00',(cast( EndDateWeek  as abap.char(12 )))) as abap.numc( 4 ))

  //end as EndDateWeek,



  YearDay,
  CalendarYear,
  FirstDayOfWeekDate
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CALENDARDATE"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/