Показать сообщение отдельно
Старый 22.12.2010, 16:19   #14  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Цитата:
Сообщение от Sancho Посмотреть сообщение
но почему не работает конструкция
if not "Pisting Date" in [DateFrom..DateTo] then...
это ж ДОЛЖНО работать по определению!!!
У меня эта конструкция работает:

Вариант 1
Код:
MyDate := 151210D;
IF NOT (MyDate IN [011210D..311210D]) THEN ERROR(FORMAT(MyDate));
==> ERROR не вылетает
Вариант 2
Код:
MyDate := 150610D;
IF NOT (MyDate IN [011210D..311210D]) THEN ERROR(FORMAT(MyDate));
==> ERROR вылетает

В Вашем варианте конструкция не рабoтает, потому что очевидно DateТо меньше чем DateFrom

Вариант 3
Код:
MyDate := 151210D;
IF NOT (MyDate IN [151210D..141210D]) THEN ERROR(FORMAT(MyDate));
==> ERROR вылетает

Очевидно в конструкции [variable1..variable2] variable2 должна быть всегда больше/равна variable1, поэтому просто надо дополнить код:

Код:
IF DateТо < DateFrom THEN BEGIN
  IF NOT ("Posting Date" IN [DateТо ..DateFrom]) THEN ...
END ELSE BEGIN
  IF NOT ("Posting Date" IN [DateFrom..DateTo]) THEN ...
END;
То же самое касается например и INTEGER'a