Вычиление дат начала и окончания каждой недели текущего года
за начало недели принимается - суббота
источник:
CreateTable (x string) | AddRow(-) | ComputeFunction ( start_year, DateTime.Today.BeginYear(), end_year, DateTime.Today.EndYear() ) |
ComputeFunction ( days_year, (end_year - start_year).Days) | Value (days_year);
CreateTable (x string) | AddRow(-) | ComputeFunction ( start_year, DateTime.Today.BeginYear() ) | Value (start_year);
CreateTable (x string) | AddRow(-) | AddColumn (start_day, number, 1) | AddColumn (days_year, number, $result_1) | AddColumn (start_year, datetime, $result_2) |
CloneRow (days_year) | CumSum (start_day) | DeleteColumn (days_year) |
ComputeFunction ( start_date, start_year.AddDays (start_day) ) |
ComputeFunction ( day_of_week, start_date.DayOfWeek ) |
ComputeFunction ( end_day, start_day +6 ) |
ComputeFunction ( end_date, start_year.AddDays (start_day).AddDays(6) ) |
ComputeFunction ( week_n, start_day / 7) |
Having (day_of_week = 6) |
DeleteColumn (days_yea, start_year, day_of_week)
результат:
| # | x | start_day | start_date | end_day | end_date | week_n |
|---|---|---|---|---|---|---|
| 1 | - | 7 | 2022-01-08T00:00:00 | 13 | 2022-01-14T00:00:00 | 1 |
| 2 | - | 14 | 2022-01-15T00:00:00 | 20 | 2022-01-21T00:00:00 | 2 |
| 3 | - | 21 | 2022-01-22T00:00:00 | 27 | 2022-01-28T00:00:00 | 3 |
| 4 | - | 28 | 2022-01-29T00:00:00 | 34 | 2022-02-04T00:00:00 | 4 |
| 5 | - | 35 | 2022-02-05T00:00:00 | 41 | 2022-02-11T00:00:00 | 5 |
| 6 | - | 42 | 2022-02-12T00:00:00 | 48 | 2022-02-18T00:00:00 | 6 |
| 7 | - | 49 | 2022-02-19T00:00:00 | 55 | 2022-02-25T00:00:00 | 7 |
| 8 | - | 56 | 2022-02-26T00:00:00 | 62 | 2022-03-04T00:00:00 | 8 |
| 9 | - | 63 | 2022-03-05T00:00:00 | 69 | 2022-03-11T00:00:00 | 9 |
| 10 | - | 70 | 2022-03-12T00:00:00 | 76 | 2022-03-18T00:00:00 | 10 |
| 11 | - | 77 | 2022-03-19T00:00:00 | 83 | 2022-03-25T00:00:00 | 11 |
| 12 | - | 84 | 2022-03-26T00:00:00 | 90 | 2022-04-01T00:00:00 | 12 |
| 13 | - | 91 | 2022-04-02T00:00:00 | 97 | 2022-04-08T00:00:00 | 13 |
| 14 | - | 98 | 2022-04-09T00:00:00 | 104 | 2022-04-15T00:00:00 | 14 |
| 15 | - | 105 | 2022-04-16T00:00:00 | 111 | 2022-04-22T00:00:00 | 15 |
| 16 | - | 112 | 2022-04-23T00:00:00 | 118 | 2022-04-29T00:00:00 | 16 |
| 17 | - | 119 | 2022-04-30T00:00:00 | 125 | 2022-05-06T00:00:00 | 17 |
| 18 | - | 126 | 2022-05-07T00:00:00 | 132 | 2022-05-13T00:00:00 | 18 |
| 19 | - | 133 | 2022-05-14T00:00:00 | 139 | 2022-05-20T00:00:00 | 19 |
| 20 | - | 140 | 2022-05-21T00:00:00 | 146 | 2022-05-27T00:00:00 | 20 |
| 21 | - | 147 | 2022-05-28T00:00:00 | 153 | 2022-06-03T00:00:00 | 21 |
| 22 | - | 154 | 2022-06-04T00:00:00 | 160 | 2022-06-10T00:00:00 | 22 |
| 23 | - | 161 | 2022-06-11T00:00:00 | 167 | 2022-06-17T00:00:00 | 23 |
| 24 | - | 168 | 2022-06-18T00:00:00 | 174 | 2022-06-24T00:00:00 | 24 |
| 25 | - | 175 | 2022-06-25T00:00:00 | 181 | 2022-07-01T00:00:00 | 25 |
| 26 | - | 182 | 2022-07-02T00:00:00 | 188 | 2022-07-08T00:00:00 | 26 |
| 27 | - | 189 | 2022-07-09T00:00:00 | 195 | 2022-07-15T00:00:00 | 27 |
| 28 | - | 196 | 2022-07-16T00:00:00 | 202 | 2022-07-22T00:00:00 | 28 |
| 29 | - | 203 | 2022-07-23T00:00:00 | 209 | 2022-07-29T00:00:00 | 29 |
| 30 | - | 210 | 2022-07-30T00:00:00 | 216 | 2022-08-05T00:00:00 | 30 |
| 31 | - | 217 | 2022-08-06T00:00:00 | 223 | 2022-08-12T00:00:00 | 31 |
| 32 | - | 224 | 2022-08-13T00:00:00 | 230 | 2022-08-19T00:00:00 | 32 |
| 33 | - | 231 | 2022-08-20T00:00:00 | 237 | 2022-08-26T00:00:00 | 33 |
| 34 | - | 238 | 2022-08-27T00:00:00 | 244 | 2022-09-02T00:00:00 | 34 |
| 35 | - | 245 | 2022-09-03T00:00:00 | 251 | 2022-09-09T00:00:00 | 35 |
| 36 | - | 252 | 2022-09-10T00:00:00 | 258 | 2022-09-16T00:00:00 | 36 |
| 37 | - | 259 | 2022-09-17T00:00:00 | 265 | 2022-09-23T00:00:00 | 37 |
| 38 | - | 266 | 2022-09-24T00:00:00 | 272 | 2022-09-30T00:00:00 | 38 |
| 39 | - | 273 | 2022-10-01T00:00:00 | 279 | 2022-10-07T00:00:00 | 39 |
| 40 | - | 280 | 2022-10-08T00:00:00 | 286 | 2022-10-14T00:00:00 | 40 |
| 41 | - | 287 | 2022-10-15T00:00:00 | 293 | 2022-10-21T00:00:00 | 41 |
| 42 | - | 294 | 2022-10-22T00:00:00 | 300 | 2022-10-28T00:00:00 | 42 |
| 43 | - | 301 | 2022-10-29T00:00:00 | 307 | 2022-11-04T00:00:00 | 43 |
| 44 | - | 308 | 2022-11-05T00:00:00 | 314 | 2022-11-11T00:00:00 | 44 |
| 45 | - | 315 | 2022-11-12T00:00:00 | 321 | 2022-11-18T00:00:00 | 45 |
| 46 | - | 322 | 2022-11-19T00:00:00 | 328 | 2022-11-25T00:00:00 | 46 |
| 47 | - | 329 | 2022-11-26T00:00:00 | 335 | 2022-12-02T00:00:00 | 47 |
| 48 | - | 336 | 2022-12-03T00:00:00 | 342 | 2022-12-09T00:00:00 | 48 |
| 49 | - | 343 | 2022-12-10T00:00:00 | 349 | 2022-12-16T00:00:00 | 49 |
| 50 | - | 350 | 2022-12-17T00:00:00 | 356 | 2022-12-23T00:00:00 | 50 |
| 51 | - | 357 | 2022-12-24T00:00:00 | 363 | 2022-12-30T00:00:00 | 51 |
| 52 | - | 364 | 2022-12-31T00:00:00 | 370 | 2023-01-06T00:00:00 | 52 |
