Germany | Finland | Saint Petersburg | Drive

Time_Between()

Опубликовано в QPILE

Очень многие роботы, исходя из своего алгоритма, должны в какое-то время выполнять (или наоборот, перестать выполнять) некоторые из своих функций. Я обычно даю возможность пользователю такие промежутки времени задавать самому. Для этого в конфигурационном файле выделяется параметр со значением вида   HH:MM:SS -  HH:MM:SS, то есть начало и конец временного промежутка.  Вот процедура, которая проверяет, попадает ли время (во внутреннем целочисленном формате QPILE) в этот промежуток.

' Проверяет, находится ли время TIME (HHMMSS) во внутри периода, 
' заданного полями строкой формата HH:MM:SS - HH:MM:SS
' Возвращает:
' -1 Неверен формат
' 0 Вне периода
' 1 Внутри периода (включительно)
FUNC Time_Between(Time,Period)
    result = find(Period,0,"-")
    if result == -1
       return
    end if
  if 0+Time <= TimeStrToInt(Trim(Str_Right(Period,result+1))) if TimeStrToInt(Trim(Period)) <= 0+Time
          result = 1
          return
       end if
    end if
  result = 0
END FUNC
Добавить комментарий