BOS常用日期方法,日期公式整理原创
金蝶云社区-龙珠
龙珠
12人赞赏了该文章 1,609次浏览 未经作者许可,禁止转载编辑于2023年07月24日 15:13:35
BOS中常用的日期函数,日期计算,日期公式整理

1、获取当前时间

    获取短日期,@currentshortdate   示例:2023-07-24

    获取长日期,@currentlongdate    示例:2023-07-24 10:57:52

2、将日期转为指定格式字符串

    F_BEC_Date.ToString('yyyy-MM-dd')     示例:2023-07-24

    F_BEC_Date.ToString('yyyy-MM-dd hh:mm:ss')     示例:2023-07-24 10:57:52

3、获取日期的年月日

    取日期的年度:F_BEC_Date.Year

    取日期的月份:F_BEC_Date.Month

    取日期的天号:F_BEC_Date.Day

    取日期是星期几 :str(int( F_BEC_Date.DayOfWeek))

    获取日期是本年的第几天:F_BEC_Date.DayOfYear

    取时间的小时:F_BEC_Date.Hour

    取时间的分:F_BEC_Date.Minute

    取时间的秒:F_BEC_Date.Second

4、日期计算

    1)当前年份加1:F_BEC_Date.AddYears(1)

    2)当前月份加1:F_BEC_Date.AddMonths(1)

    3)当前天数加1:F_BEC_Date.AddDays(1)

5、获取日期的差,日期计算

    计算年度差【没有此函数】: (F_BEC_Date1 - F_BEC_Date2).Years

    计算月份差【没有此函数】: (F_BEC_Date1 - F_BEC_Date2).Months

    计算月份差:(F_BEC_Datetime.Year  -  F_BEC_Datetime1.Year) * 12 + (F_BEC_Datetime.Month -   F_BEC_Datetime1.Month)

    计算天数日期差: (F_BEC_Date1 - F_BEC_Date2).Days

        示例:1)('2023/7/24 00:00:00'  -  '2023/7/23 00:00:00' ).Days =1

           2)('2023/7/25 04:00:00'  -  '2023/7/24 05:00:00' ).Days = 0

        注意:长日期类相减获取年月日需考虑时间。

    小时时间差,方法一:(F_BEC_Datetime  -  F_BEC_Datetime1).Hours

        示例:1)('2023/7/24 22:15:00'  -  '2023/7/24 00:00:00' ).Hours = 22

           2)('2023/7/23 22:15:00'  -  '2023/7/24 00:00:00' ).Hours = -1

           3)('2023/7/25 22:15:00'  -  '2023/7/24 00:00:00' ).Hours = 22

    小时时间差,方法二:(F_BEC_Datetime  -  F_BEC_Datetime1).TotalHours

        示例:1)('2023/7/25 05:00:00'  -  '2023/7/24 00:00:00' ).TotalHours = 29

        分钟时间差,方法一:(F_BEC_Datetime  -  F_BEC_Datetime1).Minutes

        示例:1)('2023/7/24 22:15:00'  -  '2023/7/24 00:00:00' ).Hours = 15

             2)('2023/7/24 06:15:00'  -  '2023/7/24 08:00:00' ).Hours = -45

    分钟时间差,方法二:(F_BEC_Datetime  -  F_BEC_Datetime1).TotalMinutes

        示例:1)('2023/7/24 06:00:00'  -  '2023/7/24 00:00:00' ).Hours = 360

6、获取指定时间

    1)取每月第一天:F_BEC_Date.AddDays(1-float((F_BEC_Date.ToString("dd"))))

    2)取每月第一天:FDate.AddDays(1-float((FDate.ToString("dd")))).AddMonths(+1).AddDays(-1)

    

赞 12