forked from amrali/TimeUtils
544 lines
23 KiB
MQL5
544 lines
23 KiB
MQL5
//+------------------------------------------------------------------+
|
|
//| advanced.mq5 |
|
|
//| Copyright © 2026, Amr Ali |
|
|
//| https://www.mql5.com/en/users/amrali |
|
|
//+------------------------------------------------------------------+
|
|
// First day of the week used by all week-related functions.
|
|
// Optionally, override the default before including this header:
|
|
//
|
|
// #define TIMEUTILS_FIRST_DAY_OF_WEEK SUNDAY
|
|
// #include "TimeUtils.mqh"
|
|
//
|
|
// Valid values: SUNDAY or MONDAY (default: MONDAY).
|
|
|
|
#include "TimeUtils.mqh"
|
|
|
|
int counter = 0;
|
|
|
|
#define PRINT(A) Print((string)++counter + ". " + #A + " = ", (A))
|
|
|
|
void OnStart()
|
|
{
|
|
// The time to process
|
|
const datetime t = TimeLocal();
|
|
PRINT( TimeToString(t, TIME_DATE|TIME_SECONDS) ); // MQL's native TimeToString()
|
|
PRINT( t2s( t, TIME_DATE|TIME_SECONDS) ); // Formats time with the weekday name
|
|
|
|
//+==================================================================+
|
|
//| Break datetime To Components |
|
|
//+==================================================================+
|
|
MqlDateTime dt[1] = {};
|
|
|
|
PRINT( TimeToStructFast(t, dt[0]) );
|
|
|
|
ArrayPrint(dt);
|
|
|
|
//####################################################################
|
|
//# #
|
|
//# Construction #
|
|
//# #
|
|
//####################################################################
|
|
|
|
PRINT( DateFrom(2022, 03, 25) );
|
|
|
|
PRINT( StructToTimeFast(dt[0]) );
|
|
|
|
//####################################################################
|
|
//# #
|
|
//# Calendar Components #
|
|
//# #
|
|
//####################################################################
|
|
|
|
//+==================================================================+
|
|
//| Extract Components of datetime: Sunday, yyyy.mm.dd hh:mm:ss |
|
|
//| Get() Units |
|
|
//+==================================================================+
|
|
PRINT( Second(t) );
|
|
PRINT( Minute(t) );
|
|
PRINT( Hour(t) );
|
|
PRINT( Day(t) );
|
|
PRINT( Month(t) );
|
|
PRINT( Year(t) );
|
|
|
|
PRINT( DateOnly(t) );
|
|
PRINT( TimeOnly(t) );
|
|
|
|
//+==================================================================+
|
|
//| Day() Number |
|
|
//+==================================================================+
|
|
PRINT( DayOfWeek(t) );
|
|
PRINT( DayOfYear(t) );
|
|
|
|
//+==================================================================+
|
|
//| Week() Number |
|
|
//+==================================================================+
|
|
PRINT( WeekOfMonth(t) );
|
|
PRINT( WeekOfYear(t) );
|
|
|
|
//+==================================================================+
|
|
//| Epoch-Based Indices |
|
|
//+==================================================================+
|
|
PRINT( MinuteIndex(t) );
|
|
PRINT( HourIndex(t) );
|
|
PRINT( DayIndex(t) );
|
|
PRINT( WeekIndex(t) );
|
|
PRINT( MonthIndex(t) );
|
|
PRINT( QuarterIndex(t) );
|
|
PRINT( YearIndex(t) );
|
|
|
|
//+==================================================================+
|
|
//| Quarter() Number |
|
|
//+==================================================================+
|
|
PRINT( Quarter(t) );
|
|
|
|
//+==================================================================+
|
|
//| HourOf() Units |
|
|
//+==================================================================+
|
|
PRINT( HourOfWeek(t) );
|
|
PRINT( HourOfMonth(t) );
|
|
PRINT( HourOfQuarter(t) );
|
|
PRINT( HourOfYear(t) );
|
|
|
|
//+==================================================================+
|
|
//| MinuteOf() Units |
|
|
//+==================================================================+
|
|
PRINT( MinuteOfDay(t) );
|
|
PRINT( MinuteOfWeek(t) );
|
|
PRINT( MinuteOfMonth(t) );
|
|
PRINT( MinuteOfQuarter(t) );
|
|
PRINT( MinuteOfYear(t) );
|
|
|
|
//+==================================================================+
|
|
//| SecsElapsedOf() Units |
|
|
//+==================================================================+
|
|
PRINT( SecsElapsedOfMinute(t) );
|
|
PRINT( SecsElapsedOfHour(t) );
|
|
PRINT( SecsElapsedOfDay(t) );
|
|
PRINT( SecsElapsedOfWeek(t) );
|
|
PRINT( SecsElapsedOfMonth(t) );
|
|
PRINT( SecsElapsedOfQuarter(t) );
|
|
PRINT( SecsElapsedOfYear(t) );
|
|
PRINT( SecsElapsedOfEpoch(t) );
|
|
|
|
//####################################################################
|
|
//# #
|
|
//# Adjusters / Navigation #
|
|
//# #
|
|
//####################################################################
|
|
|
|
//+==================================================================+
|
|
//| StartOf() Units |
|
|
//+==================================================================+
|
|
PRINT( StartOfMinute(t) );
|
|
PRINT( StartOfHour(t) );
|
|
PRINT( StartOfDay(t) );
|
|
PRINT( StartOfWeek(t) );
|
|
PRINT( StartOfMonth(t) );
|
|
PRINT( StartOfQuarter(t) );
|
|
PRINT( StartOfYear(t) );
|
|
PRINT( StartOfToday() );
|
|
PRINT( StartOfTomorrow() );
|
|
PRINT( StartOfYesterday() );
|
|
|
|
//+==================================================================+
|
|
//| EndOf() Units |
|
|
//+==================================================================+
|
|
PRINT( EndOfMinute(t) );
|
|
PRINT( EndOfHour(t) );
|
|
PRINT( EndOfDay(t) );
|
|
PRINT( EndOfWeek(t) );
|
|
PRINT( EndOfMonth(t) );
|
|
PRINT( EndOfQuarter(t) );
|
|
PRINT( EndOfYear(t) );
|
|
PRINT( EndOfToday() );
|
|
PRINT( EndOfTomorrow() );
|
|
PRINT( EndOfYesterday() );
|
|
|
|
//+==================================================================+
|
|
//| LastDayOf() Units |
|
|
//+==================================================================+
|
|
PRINT( LastDayOfWeek(t) );
|
|
PRINT( LastDayOfMonth(t) );
|
|
PRINT( LastDayOfQuarter(t) );
|
|
PRINT( LastDayOfYear(t) );
|
|
|
|
//+==================================================================+
|
|
//| RoundTo() / Nearest() Units |
|
|
//+==================================================================+
|
|
PRINT( RoundToMinute(t) );
|
|
PRINT( RoundToHour(t) );
|
|
PRINT( RoundToDay(t) );
|
|
PRINT( RoundToWeek(t) );
|
|
|
|
//+==================================================================+
|
|
//| CeilTo() / Next() Units |
|
|
//+==================================================================+
|
|
PRINT( CeilToMinute(t) );
|
|
PRINT( CeilToHour(t) );
|
|
PRINT( CeilToDay(t) );
|
|
PRINT( CeilToWeek(t) );
|
|
|
|
//+==================================================================+
|
|
//| Next() Weekday |
|
|
//+==================================================================+
|
|
PRINT( NextSunday(t) );
|
|
PRINT( NextMonday(t) );
|
|
PRINT( NextTuesday(t) );
|
|
PRINT( NextWednesday(t) );
|
|
PRINT( NextThursday(t) );
|
|
PRINT( NextFriday(t) );
|
|
PRINT( NextSaturday(t) );
|
|
|
|
//+==================================================================+
|
|
//| Previous() Weekday |
|
|
//+==================================================================+
|
|
PRINT( PreviousSunday(t) );
|
|
PRINT( PreviousMonday(t) );
|
|
PRINT( PreviousTuesday(t) );
|
|
PRINT( PreviousWednesday(t) );
|
|
PRINT( PreviousThursday(t) );
|
|
PRINT( PreviousFriday(t) );
|
|
PRINT( PreviousSaturday(t) );
|
|
|
|
//+==================================================================+
|
|
//| Nth() Weekday Of The Month |
|
|
//+==================================================================+
|
|
PRINT( FirstWeekdayOfMonth(t, SUNDAY) );
|
|
PRINT( LastWeekdayOfMonth(t, SUNDAY) );
|
|
|
|
//+==================================================================+
|
|
//| WithXxx() / Replace() Units |
|
|
//+==================================================================+
|
|
PRINT( WithSecond(t, 05) );
|
|
PRINT( WithMinute(t, 30) );
|
|
PRINT( WithHour(t, 10) );
|
|
PRINT( WithDay(t, 26) );
|
|
PRINT( WithMonth(t, 2) );
|
|
PRINT( WithYear(t, 2024) );
|
|
PRINT( WithDayOfWeek(t, FRIDAY) );
|
|
PRINT( WithTime(t, 10, 30, 05) );
|
|
PRINT( WithDate(t, 2024, 2, 26) );
|
|
|
|
//####################################################################
|
|
//# #
|
|
//# Addition and Subtraction #
|
|
//# #
|
|
//####################################################################
|
|
|
|
//+==================================================================+
|
|
//| Add() Units |
|
|
//+==================================================================+
|
|
PRINT( AddSeconds(t, 30) );
|
|
PRINT( AddMinutes(t, 30) );
|
|
PRINT( AddHours(t, 2) );
|
|
PRINT( AddDays(t, 10) );
|
|
PRINT( AddBusinessDays(t, 10) );
|
|
PRINT( AddWeeks(t, 4) );
|
|
PRINT( AddMonths(t, 2) );
|
|
PRINT( AddQuarters(t, 3) );
|
|
PRINT( AddYears(t, 5) );
|
|
|
|
//+==================================================================+
|
|
//| Sub() Units |
|
|
//+==================================================================+
|
|
PRINT( SubSeconds(t, 30) );
|
|
PRINT( SubMinutes(t, 30) );
|
|
PRINT( SubHours(t, 2) );
|
|
PRINT( SubDays(t, 10) );
|
|
PRINT( SubBusinessDays(t, 10) );
|
|
PRINT( SubWeeks(t, 4) );
|
|
PRINT( SubMonths(t, 2) );
|
|
PRINT( SubQuarters(t, 3) );
|
|
PRINT( SubYears(t, 5) );
|
|
|
|
//####################################################################
|
|
//# #
|
|
//# Difference #
|
|
//# #
|
|
//####################################################################
|
|
|
|
//+==================================================================+
|
|
//| DifferenceIn() Units |
|
|
//+==================================================================+
|
|
PRINT( DifferenceInCalendarDays( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInCalendarWeeks( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInCalendarMonths( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInCalendarQuarters( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInCalendarYears( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInSeconds( t, EndOfDay(t)) );
|
|
PRINT( DifferenceInMinutes( t, EndOfDay(t)) );
|
|
PRINT( DifferenceInHours( t, EndOfDay(t)) );
|
|
PRINT( DifferenceInDays( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInWeeks( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInMonths( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInQuarters( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInYears( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInBusinessDays( StartOfYear(t), EndOfYear(t)) );
|
|
PRINT( DifferenceInWeekendDays( StartOfYear(t), EndOfYear(t)) );
|
|
MqlDateTime diff;
|
|
PRINT( CalendarDifference( t, D'2035.10.9', diff ) );
|
|
PRINT( CalendarDifferenceToString( t, D'2035.10.9' ) );
|
|
PRINT( AddPeriod( t, diff ) );
|
|
PRINT( SubPeriod( D'2035.10.9', diff ) );
|
|
|
|
//####################################################################
|
|
//# #
|
|
//# Comparison and Checks #
|
|
//# #
|
|
//####################################################################
|
|
|
|
//+==================================================================+
|
|
//| Is() Checks |
|
|
//+==================================================================+
|
|
PRINT( IsFirstDayOfMonth(t) );
|
|
PRINT( IsLastDayOfMonth(t) );
|
|
PRINT( IsWeekend(t) );
|
|
PRINT( IsWeekday(t) );
|
|
PRINT( IsSunday(t) );
|
|
PRINT( IsMonday(t) );
|
|
PRINT( IsTuesday(t) );
|
|
PRINT( IsWednesday(t) );
|
|
PRINT( IsThursday(t) );
|
|
PRINT( IsFriday(t) );
|
|
PRINT( IsSaturday(t) );
|
|
|
|
//+==================================================================+
|
|
//| IsSame() Units |
|
|
//+==================================================================+
|
|
PRINT( IsSameMinute(t, AddHours(t, 25)) );
|
|
PRINT( IsSameHour(t, AddHours(t, 25)) );
|
|
PRINT( IsSameDay(t, AddHours(t, 25)) );
|
|
PRINT( IsSameWeek(t, AddHours(t, 25)) );
|
|
PRINT( IsSameMonth(t, AddHours(t, 25)) );
|
|
PRINT( IsSameQuarter(t, AddHours(t, 25)) );
|
|
PRINT( IsSameYear(t, AddHours(t, 25)) );
|
|
|
|
//+==================================================================+
|
|
//| IsCurrent() Units |
|
|
//+==================================================================+
|
|
PRINT( IsCurrentMinute(t) );
|
|
PRINT( IsCurrentHour(t) );
|
|
PRINT( IsCurrentWeek(t) );
|
|
PRINT( IsCurrentMonth(t) );
|
|
PRINT( IsCurrentQuarter(t) );
|
|
PRINT( IsCurrentYear(t) );
|
|
PRINT( IsToday(t) );
|
|
PRINT( IsTomorrow(t) );
|
|
PRINT( IsYesterday(t) );
|
|
|
|
//+==================================================================+
|
|
//| Session() Checks |
|
|
//+==================================================================+
|
|
PRINT( IsInSession(8, 0, 17, 0) ); // Uses TimeTradeServer()
|
|
PRINT( IsInSession("22:00", "06:00") );
|
|
|
|
//+==================================================================+
|
|
//| Misc |
|
|
//+==================================================================+
|
|
PRINT( IsLeapYear(2100) );
|
|
PRINT( DaysInYear(2100) );
|
|
PRINT( DaysInMonth(2024, 2) );
|
|
PRINT( WeeksInYear(2026) );
|
|
PRINT( WeeksInMonth(2026, 8) );
|
|
|
|
//####################################################################
|
|
//# #
|
|
//# Format & Display #
|
|
//# #
|
|
//####################################################################
|
|
|
|
//+==================================================================+
|
|
//| Formating Time to String |
|
|
//+==================================================================+
|
|
PRINT( TimeToString(t) ); // MQL's native TimeToString()
|
|
PRINT( t2s(t) ); // Formats time with the weekday name
|
|
PRINT( TimeFormat(t) );
|
|
PRINT( TimeFormat(t, "DDD, YYYY.MM.DD hh:mm:ss") );
|
|
PRINT( TimeFormat(t, "DDDD, D MMM YYYY, HH:mm a") );
|
|
PRINT( SecondsToString( SecsElapsedOfDay(t) ) );
|
|
}
|
|
//+------------------------------------------------------------------+
|
|
|
|
/*
|
|
example output:
|
|
|
|
1. TimeToString(t, TIME_DATE|TIME_SECONDS) = 2026.07.18 19:54:28
|
|
2. t2s( t, TIME_DATE|TIME_SECONDS) = Sat, 2026.07.18 19:54:28
|
|
3. TimeToStructFast(t, dt[0]) = true
|
|
[year] [mon] [day] [hour] [min] [sec] [day_of_week] [day_of_year]
|
|
[0] 2026 7 18 19 54 28 6 198
|
|
4. DateFrom(2022, 03, 25) = 2022.03.25 00:00:00
|
|
5. StructToTimeFast(dt[0]) = 2026.07.18 19:54:28
|
|
6. Second(t) = 28
|
|
7. Minute(t) = 54
|
|
8. Hour(t) = 19
|
|
9. Day(t) = 18
|
|
10. Month(t) = 7
|
|
11. Year(t) = 2026
|
|
12. DateOnly(t) = 2026.07.18 00:00:00
|
|
13. TimeOnly(t) = 1970.01.01 19:54:28
|
|
14. DayOfWeek(t) = 6
|
|
15. DayOfYear(t) = 198
|
|
16. WeekOfMonth(t) = 3
|
|
17. WeekOfYear(t) = 29
|
|
18. MinuteIndex(t) = 29740074
|
|
19. HourIndex(t) = 495667
|
|
20. DayIndex(t) = 20652
|
|
21. WeekIndex(t) = 2950
|
|
22. MonthIndex(t) = 678
|
|
23. QuarterIndex(t) = 226
|
|
24. YearIndex(t) = 56
|
|
25. Quarter(t) = 3
|
|
26. HourOfWeek(t) = 139
|
|
27. HourOfMonth(t) = 427
|
|
28. HourOfQuarter(t) = 427
|
|
29. HourOfYear(t) = 4771
|
|
30. MinuteOfDay(t) = 1194
|
|
31. MinuteOfWeek(t) = 8394
|
|
32. MinuteOfMonth(t) = 25674
|
|
33. MinuteOfQuarter(t) = 25674
|
|
34. MinuteOfYear(t) = 286314
|
|
35. SecsElapsedOfMinute(t) = 28
|
|
36. SecsElapsedOfHour(t) = 3268
|
|
37. SecsElapsedOfDay(t) = 71668
|
|
38. SecsElapsedOfWeek(t) = 503668
|
|
39. SecsElapsedOfMonth(t) = 1540468
|
|
40. SecsElapsedOfQuarter(t) = 1540468
|
|
41. SecsElapsedOfYear(t) = 17178868
|
|
42. SecsElapsedOfEpoch(t) = 1784404468
|
|
43. StartOfMinute(t) = 2026.07.18 19:54:00
|
|
44. StartOfHour(t) = 2026.07.18 19:00:00
|
|
45. StartOfDay(t) = 2026.07.18 00:00:00
|
|
46. StartOfWeek(t) = 2026.07.13 00:00:00
|
|
47. StartOfMonth(t) = 2026.07.01 00:00:00
|
|
48. StartOfQuarter(t) = 2026.07.01 00:00:00
|
|
49. StartOfYear(t) = 2026.01.01 00:00:00
|
|
50. StartOfToday() = 2026.07.18 00:00:00
|
|
51. StartOfTomorrow() = 2026.07.19 00:00:00
|
|
52. StartOfYesterday() = 2026.07.17 00:00:00
|
|
53. EndOfMinute(t) = 2026.07.18 19:54:59
|
|
54. EndOfHour(t) = 2026.07.18 19:59:59
|
|
55. EndOfDay(t) = 2026.07.18 23:59:59
|
|
56. EndOfWeek(t) = 2026.07.19 23:59:59
|
|
57. EndOfMonth(t) = 2026.07.31 23:59:59
|
|
58. EndOfQuarter(t) = 2026.09.30 23:59:59
|
|
59. EndOfYear(t) = 2026.12.31 23:59:59
|
|
60. EndOfToday() = 2026.07.18 23:59:59
|
|
61. EndOfTomorrow() = 2026.07.19 23:59:59
|
|
62. EndOfYesterday() = 2026.07.17 23:59:59
|
|
63. LastDayOfWeek(t) = 2026.07.19 00:00:00
|
|
64. LastDayOfMonth(t) = 2026.07.31 00:00:00
|
|
65. LastDayOfQuarter(t) = 2026.09.30 00:00:00
|
|
66. LastDayOfYear(t) = 2026.12.31 00:00:00
|
|
67. RoundToMinute(t) = 2026.07.18 19:54:00
|
|
68. RoundToHour(t) = 2026.07.18 20:00:00
|
|
69. RoundToDay(t) = 2026.07.19 00:00:00
|
|
70. RoundToWeek(t) = 2026.07.20 00:00:00
|
|
71. CeilToMinute(t) = 2026.07.18 19:55:00
|
|
72. CeilToHour(t) = 2026.07.18 20:00:00
|
|
73. CeilToDay(t) = 2026.07.19 00:00:00
|
|
74. CeilToWeek(t) = 2026.07.20 00:00:00
|
|
75. NextSunday(t) = 2026.07.19 00:00:00
|
|
76. NextMonday(t) = 2026.07.20 00:00:00
|
|
77. NextTuesday(t) = 2026.07.21 00:00:00
|
|
78. NextWednesday(t) = 2026.07.22 00:00:00
|
|
79. NextThursday(t) = 2026.07.23 00:00:00
|
|
80. NextFriday(t) = 2026.07.24 00:00:00
|
|
81. NextSaturday(t) = 2026.07.25 00:00:00
|
|
82. PreviousSunday(t) = 2026.07.12 00:00:00
|
|
83. PreviousMonday(t) = 2026.07.13 00:00:00
|
|
84. PreviousTuesday(t) = 2026.07.14 00:00:00
|
|
85. PreviousWednesday(t) = 2026.07.15 00:00:00
|
|
86. PreviousThursday(t) = 2026.07.16 00:00:00
|
|
87. PreviousFriday(t) = 2026.07.17 00:00:00
|
|
88. PreviousSaturday(t) = 2026.07.11 00:00:00
|
|
89. FirstWeekdayOfMonth(t, SUNDAY) = 2026.07.05 00:00:00
|
|
90. LastWeekdayOfMonth(t, SUNDAY) = 2026.07.26 00:00:00
|
|
91. WithSecond(t, 05) = 2026.07.18 19:54:05
|
|
92. WithMinute(t, 30) = 2026.07.18 19:30:28
|
|
93. WithHour(t, 10) = 2026.07.18 10:54:28
|
|
94. WithDay(t, 26) = 2026.07.26 19:54:28
|
|
95. WithMonth(t, 2) = 2026.02.18 19:54:28
|
|
96. WithYear(t, 2024) = 2024.07.18 19:54:28
|
|
97. WithDayOfWeek(t, FRIDAY) = 2026.07.17 19:54:28
|
|
98. WithTime(t, 10, 30, 05) = 2026.07.18 10:30:05
|
|
99. WithDate(t, 2024, 2, 26) = 2024.02.26 19:54:28
|
|
100. AddSeconds(t, 30) = 2026.07.18 19:54:58
|
|
101. AddMinutes(t, 30) = 2026.07.18 20:24:28
|
|
102. AddHours(t, 2) = 2026.07.18 21:54:28
|
|
103. AddDays(t, 10) = 2026.07.28 19:54:28
|
|
104. AddBusinessDays(t, 10) = 2026.07.31 19:54:28
|
|
105. AddWeeks(t, 4) = 2026.08.15 19:54:28
|
|
106. AddMonths(t, 2) = 2026.09.18 19:54:28
|
|
107. AddQuarters(t, 3) = 2027.04.18 19:54:28
|
|
108. AddYears(t, 5) = 2031.07.18 19:54:28
|
|
109. SubSeconds(t, 30) = 2026.07.18 19:53:58
|
|
110. SubMinutes(t, 30) = 2026.07.18 19:24:28
|
|
111. SubHours(t, 2) = 2026.07.18 17:54:28
|
|
112. SubDays(t, 10) = 2026.07.08 19:54:28
|
|
113. SubBusinessDays(t, 10) = 2026.07.06 19:54:28
|
|
114. SubWeeks(t, 4) = 2026.06.20 19:54:28
|
|
115. SubMonths(t, 2) = 2026.05.18 19:54:28
|
|
116. SubQuarters(t, 3) = 2025.10.18 19:54:28
|
|
117. SubYears(t, 5) = 2021.07.18 19:54:28
|
|
118. DifferenceInCalendarDays( StartOfYear(t), EndOfYear(t)) = 364
|
|
119. DifferenceInCalendarWeeks( StartOfYear(t), EndOfYear(t)) = 52
|
|
120. DifferenceInCalendarMonths( StartOfYear(t), EndOfYear(t)) = 11
|
|
121. DifferenceInCalendarQuarters( StartOfYear(t), EndOfYear(t)) = 3
|
|
122. DifferenceInCalendarYears( StartOfYear(t), EndOfYear(t)) = 0
|
|
123. DifferenceInSeconds( t, EndOfDay(t)) = 14731
|
|
124. DifferenceInMinutes( t, EndOfDay(t)) = 245
|
|
125. DifferenceInHours( t, EndOfDay(t)) = 4
|
|
126. DifferenceInDays( StartOfYear(t), EndOfYear(t)) = 364
|
|
127. DifferenceInWeeks( StartOfYear(t), EndOfYear(t)) = 52
|
|
128. DifferenceInMonths( StartOfYear(t), EndOfYear(t)) = 11
|
|
129. DifferenceInQuarters( StartOfYear(t), EndOfYear(t)) = 3
|
|
130. DifferenceInYears( StartOfYear(t), EndOfYear(t)) = 0
|
|
131. DifferenceInBusinessDays( StartOfYear(t), EndOfYear(t)) = 260
|
|
132. DifferenceInWeekendDays( StartOfYear(t), EndOfYear(t)) = 104
|
|
133. CalendarDifference( t, D'2035.10.9', diff ) = true
|
|
134. CalendarDifferenceToString( t, D'2035.10.9' ) = 9y 2m 20d 04:05:32
|
|
135. AddPeriod( t, diff ) = 2035.10.09 00:00:00
|
|
136. SubPeriod( D'2035.10.9', diff ) = 2026.07.18 19:54:28
|
|
137. IsFirstDayOfMonth(t) = false
|
|
138. IsLastDayOfMonth(t) = false
|
|
139. IsWeekend(t) = true
|
|
140. IsWeekday(t) = false
|
|
141. IsSunday(t) = false
|
|
142. IsMonday(t) = false
|
|
143. IsTuesday(t) = false
|
|
144. IsWednesday(t) = false
|
|
145. IsThursday(t) = false
|
|
146. IsFriday(t) = false
|
|
147. IsSaturday(t) = true
|
|
148. IsSameMinute(t, AddHours(t, 25)) = false
|
|
149. IsSameHour(t, AddHours(t, 25)) = false
|
|
150. IsSameDay(t, AddHours(t, 25)) = false
|
|
151. IsSameWeek(t, AddHours(t, 25)) = true
|
|
152. IsSameMonth(t, AddHours(t, 25)) = true
|
|
153. IsSameQuarter(t, AddHours(t, 25)) = true
|
|
154. IsSameYear(t, AddHours(t, 25)) = true
|
|
155. IsCurrentMinute(t) = true
|
|
156. IsCurrentHour(t) = true
|
|
157. IsCurrentWeek(t) = true
|
|
158. IsCurrentMonth(t) = true
|
|
159. IsCurrentQuarter(t) = true
|
|
160. IsCurrentYear(t) = true
|
|
161. IsToday(t) = true
|
|
162. IsTomorrow(t) = false
|
|
163. IsYesterday(t) = false
|
|
164. IsInSession(8, 0, 17, 0) = false
|
|
165. IsInSession(22:00, 06:00) = false
|
|
166. IsLeapYear(2100) = false
|
|
167. DaysInYear(2100) = 365
|
|
168. DaysInMonth(2024, 2) = 29
|
|
169. WeeksInYear(2026) = 53
|
|
170. WeeksInMonth(2026, 8) = 6
|
|
171. TimeToString(t) = 2026.07.18 19:54
|
|
172. t2s(t) = Sat, 2026.07.18 19:54
|
|
173. TimeFormat(t) = 2026.07.18 19:54
|
|
174. TimeFormat(t, DDD, YYYY.MM.DD hh:mm:ss) = Sat, 2026.07.18 19:54:28
|
|
175. TimeFormat(t, DDDD, D MMM YYYY, HH:mm a) = Saturday, 18 Jul 2026, 07:54 pm
|
|
176. SecondsToString( SecsElapsedOfDay(t) ) = 19:54:28
|
|
|
|
*/
|