如何使用当天计算 NRF 4-5-4 日历中的 MTD

问题描述 投票:0回答:2

我想知道如何编写逻辑来计算 nrf 454 日历中的 MTD。通常MTD很简单,如果今天是03.09.2020,那么MTD:从01.09.2020到03.09.2020,所以它是从当月第一天到当天的日期范围。

问题是 nrf 454 日历似乎到处都是,我找不到任何可以用来创建此逻辑的模式,而无需编写大量 if/case 语句。

这是 nrf 454 日历的示例:

我的技术也很有限,因为我无法真正使用任何库。我能用的是 SQL 和纯 JavaScript。

因此,我正在寻找这些日历背后的逻辑,我可以复制这些逻辑,以便根据当天获取 MTD 日期范围,因此类似于一个以一天为参数并返回 MTD 的函数。我不想使用大量的 if 对其进行硬编码,除非有人已经在 2018-2022 年完成了它

sql date calendar range date-range
2个回答
0
投票

规则实际上非常简单..它们是:

// 4周有28天 // 5 周有 35 天

// 1 一个月将有 4 周或 5 周 // 454 445 544 是 3 个月的序列,一个季度总是有 35 + 28 + 28 = 91 天 // 学期总是有 182 天 // 一年总有 364 天

//因为一年有365天,所以每年还剩下1天或2天 // 平年 1 天,闰年 2 天。

//每年剩余天数达到7天,就需要增加一周(一年53周)

// 闰年是指可以被 4 和 400 整除但不能被 100 整除的年份。

// 一个会计日历可以从任何公历日期开始。此类日历的一周第一天始终是第一个日期

如果您在每个边界之间循环计数器,对于时间单位、周、月、季度、学期年(根据级数数组放置月份),您只需要 IF ..一个用于月份级数,另一个用于闰年。

我自己正在实施,我希望我很快就能实现


0
投票

您可以尝试使用此交互式 454 日历 https://www.findtimeframe.com/

使用此功能可以更轻松地查找 MTD/QTD/YOY 等时间范围数据,而不是查看 pdf 日历。

© www.soinside.com 2019 - 2024. All rights reserved.