CDS System Entities: Generate Series
Learn how to use CDS system entities like SERIES_GENERATE_DATE and SERIES_GENERATE_INTEGER to generate date, integer, and timestamp series.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
"Here are some useful standard CDS system entities for 𝗴𝗲𝗻𝗲𝗿𝗮𝘁𝗶𝗻𝗴 𝘀𝗲𝗿𝗶𝗲𝘀, which can be quite handy in various scenarios:
"1.SERIES_GENERATE_DATE -> Generate Dates
SELECT * FROM series_generate_date( step = 1,
from_value = '20250101',
to_value = '20250130' )
ORDER BY element_number
INTO TABLE @DATA(date_series_gen).
"2.SERIES_GENERATE_INTEGER - Generate Integer
SELECT * FROM series_generate_integer( step = 1,
from_value = 1,
to_value = 100 )
ORDER BY element_number
INTO TABLE @DATA(integer_series_gen).
"3. SERIES_GENERATE_TIME - Generate Time
DATA(time) = cl_demo_date_time=>get_user_time( ).
DATA(seconds_added) = time + 20.
SELECT * FROM series_generate_time( step = 2,
from_value = @time,
to_value = @seconds_added )
ORDER BY element_number
INTO TABLE @DATA(time_series_gen).
"4.SERIES_GENERATE_TIMESTAMP - Generate Timestamp
DATA(ts_from) = utclong_current( ).
DATA(ts_to) = utclong_add( val = ts_from seconds = 10 ).
SELECT * FROM series_generate_timestamp( step = 2,
from_value = @ts_from,
to_value = @ts_to )
ORDER BY element_number
INTO TABLE @DATA(timestamp_series_gen).
This post is licensed under CC BY 4.0 by the author.