7.7 Проверка на пустоту поля со временем

Тема в разделе "Общие вопросы "1С:Предприятие 7.7"", создана пользователем Jyravlik, 9 авг 2010.

  1. TopicStarter Overlay
    Jyravlik
    Offline

    Jyravlik Опытный в 1С

    Регистрация:
    9 авг 2010
    Сообщения:
    98
    Симпатии:
    0
    Баллы:
    26
    Добрый день, прошу помощи, новичок! Мне нужно проверить поле ввода, куда необходимо ввести время, на пустоту. тип - строка, маска "99:99". Пробую если ФактическоеВремяПребывания = "99:99" - не работает :unsure:
  2. Алена***
    Offline

    Алена***

    Регистрация:
    10 апр 2010
    Сообщения:
    29
    Симпатии:
    0
    Баллы:
    1
    Добрый вечер.
    может стоит попробовать проверку на = "00:00" или " : " ?????
  3. TopicStarter Overlay
    Jyravlik
    Offline

    Jyravlik Опытный в 1С

    Регистрация:
    9 авг 2010
    Сообщения:
    98
    Симпатии:
    0
    Баллы:
    26
    Пробовала, и на пустое значение типа строка тоже(
  4. dedalx7
    Offline

    dedalx7 Опытный в 1С

    Регистрация:
    20 май 2009
    Сообщения:
    97
    Симпатии:
    0
    Баллы:
    26
    Как я понимаю, главное - проверить на пустоту, на длину(5 символов) и на наличие двоеточия.

    Код:
    Функция Проверка(Время)
    Время = СокрЛП(Строка(Время));
    Если Время = "" Тогда
    Возврат 0;
    ИначеЕсли НЕ (СтрДлина(Время)=5) Тогда
    Возврат 0;
    ИначеЕсли НЕ (Сред(Время,3,1)=":") Тогда
    Возврат 0;
    КонецЕсли;
    
    Возврат 1;
    КонецФункции
    
    Ах, ну да проверка на числа:

    Код:
    ИначеЕсли НЕ ( Строка(Число(Лев(Время,2))) = Лев(Время,2) ) Тогда
    
    И

    Код:
    ИначеЕсли НЕ ( Строка(Число(Прав(Время,2))) = Прав(Время,2) ) Тогда
    
  5. TopicStarter Overlay
    Jyravlik
    Offline

    Jyravlik Опытный в 1С

    Регистрация:
    9 авг 2010
    Сообщения:
    98
    Симпатии:
    0
    Баллы:
    26
    Спасибо, работает:)
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Помимо формата неплохо было бы еще и на ПРАВИЛЬОСТЬ проверять. А то поставят вам 25:68 и как это "переварить"?)))))))

    Разделили бы лучше 2 поля ввода на форме типа ЧИСЛО (часы и мин. Секунды как я понял не нужны). В первом случае проверяем диапазон 0-23, во втором 0-59. В обоих случая формируем переменную
    Код:
    Время=Час+":"+Мин;
    
    
    
    Так проще чем строку "дербанить"
  7. TopicStarter Overlay
    Jyravlik
    Offline

    Jyravlik Опытный в 1С

    Регистрация:
    9 авг 2010
    Сообщения:
    98
    Симпатии:
    0
    Баллы:
    26
    это у меня уже сделано:) спасибо
  8. dedalx7
    Offline

    dedalx7 Опытный в 1С

    Регистрация:
    20 май 2009
    Сообщения:
    97
    Симпатии:
    0
    Баллы:
    26
    Исходил из вопроса, где маска была указана 99:99... Мало ли как они время считают :)

Поделиться этой страницей