Операции с датами

  • Автор темы SkyDream
  • Дата начала
Статус
Закрыто для дальнейших ответов.
S

SkyDream

#1
Подскажите пожалуйста как выполнитить такие действия с 2 датами:
сравнение, получение на сколько дней 1 дата болше второй, выполнить условие если 1 дата равна 2 то выполняем то то
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#2
Первое и третье так и делаются.
Второе вычитанием. Получишь разницу в секундах.
 
S

SOFTOBZOR.ru

#3
А все таки?

Вот к примеру я получаю свеженькое время на сервере @Now([ServerTime]) его колбашу в поле Date1 а в Date 2 мне необходимо засунуть дату на сутки больше

Как?
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#4
<!--QuoteBegin-SOFTOBZOR.ru+9:01:2007, 15:11 -->
<span class="vbquote">(SOFTOBZOR.ru @ 9:01:2007, 15:11 )</span><!--QuoteEBegin-->Как?
[snapback]52606" rel="nofollow" target="_blank[/snapback]​
[/quote]
@Adjust
 
S

SOFTOBZOR.ru

#5
Спасибо!

А другой вопрос

@If(DateStart < DateStop;@Prompt([Ok];"Ошибка";"Начальная дата действия заявки не может быть меньше или равна конечной даты");@Success);

Чего то не работает
DateStart - текущее время
DateStop - будущее время
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#6
Всё должно работать.
Ты проводишь валидацию? Тогда сообщение надо выводить формулой @Failure, а не @Prompt.

В смысле не только сообщения выводить, а вообще использовать эту формулу. Она возвращает, что валидация не прошла успешно. Тогда как @Prompt просто выводит текст.
 
30.05.2006
1 345
11
#7
Ты проводишь валидацию? Тогда сообщение надо выводить формулой @Failure, а не @Prompt.

В смысле не только сообщения выводить, а вообще использовать эту формулу. Она возвращает, что валидация не прошла успешно. Тогда как @Prompt просто выводит текст.
Самое интересное, что @Failure просто возвращает текст. Т.е. validation formula-ы

@If(Dat<[1.01.2007]; @Yes; @Failure("Плохая дата"))
и
@If(Dat<[1.01.2007]; @Yes; "Плохая дата")
эквивалентны

А @Prompt в validation действительно излишний. Разве что так:

@If(Dat<[1.01.2007]; @Yes; @Prompt([YesNo];"Плохая дата";"Игнорировать ошибку?"); @Yes; "Плохая дата!")
 
S

SOFTOBZOR.ru

#8
Спасибо, разобрался.

Есть еще такой вопрос, как отпилить минуты и секунды от даты?
Есть поле [Data]
Содержит дату вида DD MM YYYY h:m:s
Делаю виюшку и групирую элементы по этому полю.
Но получается затык с тем что дата то одна а время разное, вот хочу отпилить время.

Может наталкнете на мысль?

Все получилось @Trim(@Text(@Date(Data)))
 

Kee_Keekkenen

Well-known member
05.09.2006
639
4
#9
например так

Код:
dd:=@Text(@Day(date));
dd:=@If(@Length(dd) = 1; "0"+dd; dd);
mm:=@Text(@month(date));
mm:=@If(@Length(mm) = 1; "0"+mm; mm);
yyyy:=@Text(@year(date));

dd + "." + mm + "."+ yyyy
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#10
Для: Constantin A Chervonenko
Не знал. Спасибо.
А хелп, получается, немного врет.
Returns a message that you supply; when used in an input validation formula, @Failure displays its message whenever the entered value does not meet the validation criteria.
 
30.05.2006
1 345
11
#11
Для: Constantin A Chervonenko
Не знал. Спасибо.
А хелп, получается, немного врет.
Похоже - рудимент. Возможно когда-то @Failure выводил сообщение, а теперь - возвращает

Все получилось @Trim(@Text(@Date(Data)))
Перебор. Просто @Date(Data). Так сортировка будет более правильной (как дата, а не текст)
 
Статус
Закрыто для дальнейших ответов.