![]() |
#13 |
Участник
|
Цитата:
Цитата:
X++: ((T1.fromDate < T2.toDate) || ((T1.fromDate == T2.toDate) && (T1.fromTime <= T2.toTime))) && ((T1.toDate > T2.fromDate) || ((T1.toDate == T2.fromDate) && (T1.toTime >= T2.fromTime))) P.S.: Накатал тут на коленке пару макросов для работы с датами и временем. Может кому пригодится. X++: #localmacro.lessOrEq /* (%1) - Date_1 */ /* (%2) - Time_1 */ /* (%3) - Date_2 */ /* (%4) - Time_2 */ ( ((%1) < (%3)) || ( ((%1) == (%3)) && ((%2) < (%4)) ) ) #endmacro #localmacro.greatOrEq /*(%1) - Date_1 */ /*(%2) - Time_1 */ /*(%3) - Date_2 */ /*(%4) - Time_2 */ ( ((%1) > (%3)) || ( ((%1) == (%3)) && ((%2) > (%4)) ) ) #endmacro #localmacro.dt /* (%1) - Date */ /* (%2) - Time */ %1, %2 #endmacro #localmacro.between /* (%1) - DateFrom */ /* (%2) - TimeFrom */ /* (%3) - DateTo */ /* (%4) - TimeTo */ /* (%5) - Date */ /* (%6) - Time */ (#greatOrEq(#dt(%5, %6), #dt(%1, %2)) && #lessOrEq(#dt(%5, %6), #dt(%3, %4))) #endmacro #localmacro.cross /* (%1) - DateFrom_1 */ /* (%2) - TimeFrom_1 */ /* (%3) - DateTo_1 */ /* (%4) - TimeTo_1 */ /* (%5) - DateFrom_2 */ /* (%6) - TimeFrom_2 */ /* (%7) - DateTo_2 */ /* (%8) - TimeTo_2 */ (#lessOrEq(#dt(%1, %2), #dt(%7, %8)) && #greatOrEq(#dt(%3, %4), #dt(%5, %6))) #endmacro |
|
|
За это сообщение автора поблагодарили: nix0root (1). |