Помогите С Датой

JohnLemon

Well-known member
20.08.2014
274
2
#1
Здравствуйте считаю количество дней между датами так
Код:
vv:=(postDate - preDate) / 86400 + 1;
@Prompt([Ok];"";(@Text(vv)))
Подскажите плз как вычесть выходные по поиску нашел
Код:
t := (EndDate - StartDate) / 86400 + 1;
w := @Weekday (StartDate);
@Return (t - @Sum (@Integer ((t + @Modulo (w + 5:6; 7)) / 7)))
Но там что то с типами данных не могу понять, может есть у кого готовый рабочий код. Желательно еще конечно за минусом праздников но мне бы пока так с выходными разобраться )) ?
 

ty3uk

Well-known member
31.03.2008
170
0
#2
@weekday-возвращает, от той даты которую ты указал, номер дня в неделе, т.е. понедельник...воскресенье. Только, если внимательней прочитать хелпарь, то 1- это воскресенье, 2-понедельник... 7-суббота. если взять 2014.08.31, то вернёт 1=воскресенье.
 

ty3uk

Well-known member
31.03.2008
170
0
#4
@module -модуль от деления
":"-разделитель множественных значений, т,е 5:6 это два зачения одновременно 5 и 6 (сложно без основ... особеность @-к, что они работают не только с одним значением, а с множественными)
Народ, посоветуйте, уже, человеку нормальную книженцию для чтения. :D
 

JohnLemon

Well-known member
20.08.2014
274
2
#5
@module -модуль от деления
":"-разделитель множественных значений, т,е 5:6 это два зачения одновременно 5 и 6 (сложно без основ... особеность @-к, что они работают не только с одним значением, а с множественными)
Народ, посоветуйте, уже, человеку нормальную книженцию для чтения. :D
Плдскажи плз так правильно будет
Код:
t := ([21.05.2014] - [08.05.2014]) / 86400 + 1;
w := @Weekday ([08.05.2014]);
s:=t - @Sum (@Integer ((t + @Modulo (w + 6:7; 1)) / 7));
@StatusBar(@Text(s))
В роде считает правильно