Как преобразовать два числа во время? #430807


#0 by anivaler
Есть функция, которая считает разность Время1 и Время2. Выделяю из полученных секунд Часы и Минуты. Как преобразовать эти два числа во время???
#1 by Mort
Что это за такой тип "Время" ?
#2 by anivaler
Время1 и Время2 - это два значения типа Дата с составом даты: Время
#3 by Альберт_Уфа
нет такого типа как Время. Есть тип Дата.
#4 by Mort
Да и разница между ними, это время с Даты1 по Дата2 в секундах. Что ещё надо?
#5 by anivaler
Т.е. единственный выход это Дата(1,1,1, Часы, Минуты, 1)  Так?
#6 by Альберт_Уфа
а если Дата1-Дата2 больше 24 часов? тогда что?
#7 by Mort
Не понятно. Тебе нужно получить дату равной (Время1 - Время2) секунд с рождества Христова? Нафига, интересно..
#8 by anivaler
У меня есть справочник в котором два реквизита типа Дата с составом даты Время. Это реквизиты Время1 и Время2. Так вот мне нужно по задаче получать разность между ними...Вот...
#9 by Альберт_Уфа
добавь в своей функции строчку типа:
#10 by anivaler
Нет. Так не пойдет, потому что эту разность мне потом ещё нужно использовать и использовать как Дата.
#11 by Альберт_Уфа
каким образом ты собираешься использовать как дата?
#12 by anivaler
Ну я имею ввиду тип "Дата". Вот скажем у меня Время1 = 23:05, а Время2 = 19:45. Разность это 3:20 И потом от этой разности нужно отнимать другое время... День, месяц и год меня не интересуют. Вот в чём моя задача... Как лучше быть?
#14 by anivaler
Для чего добавлять Дата(1,1,1) ???
#15 by 73
Чтобы дату получить, а не число.
#16 by anivaler
А не то же самое? ;-)
#17 by 73
Секунда там лишняя. И зачем еще что-то делить и умножать, чтобы найти часы и минуты?
#18 by 73
+ С секундами там вообще что-то не то.
#19 by Odin1C
Решаешь плохую задачку. В 1с единица времени это секунды. Соответственно тебе оперировать нужно только ими. Их можно добавлять к дате и вычитать из даты и получишь дату. Не извращайся.
#20 by Mort
Разницу между датами храни числом секунд и будет тебе щастье. А при выводе преобразуй в строку уже как хочешь, по часам разбивай и т.п. Тип дата тебе здесь НЕ НУЖЕН.
#21 by anivaler
Понял. Только действительно, непонятно, что делать, если Дата1 < Дата2 ???
#22 by anivaler
Помогите пожалуйста, ведь у меня и такая ситуация присутствует...
#23 by Ненавижу 1С
и что тогда? будет отрицательное число
#24 by Альберт_Уфа
прибавь к Дате1 60*60*24
#25 by Фокусник
Ну и в чем проблема? Разница будет, например, 5 дней 10 часов 15 секунд  ;)
#26 by anivaler
Спасибо...Чёт я переработал сёдня... Пипец это же так просто всё... )
#27 by anivaler
Работает:
#28 by anivaler
У меня опять вопрос. А как сделать сумму времени?
#29 by Ненавижу 1С
также как и разность
#30 by b4rs30
))
#31 by anivaler
Неа... Выскакивает ошибка: {ОбщийМодуль.ПутевойЛист}: Преобразование значения к типу Число не может быть выполнено    СуммаВСекундах = Время1 + Время2;
#32 by anivaler
А вот моя функция:
#33 by 73
11:00 + 15:00     -- даты. -что хочешь получить? Если правильно понял: ЗЫ. Непонятно зачем это нужно.
#34 by anivaler
Объясню. Время3 получилось к примеру 3 часа, а Время4 получилось 4 часа. Мне нужно получить сумму Время3 и ВРемя4, т.е. сумма должна быть 7 часов. Вот.
#35 by hhhh
ну, допустим, задача. Из пункта А в пункт Б пешеход шел 11 часов, а обратно 15 часов. Спрашивается, сколько времени он потратил всего. Ответ
#36 by anivaler
11:00 + 15:00 Хочу получить 26 часов, но таких больших сумм у меня не будет. Максимальная сумма часов у меня будет где-то 10.
#37 by anivaler
Хорошо, тогда где в функции ошибка?
#38 by 73
Согласитесь 15 <> 15:00. То число, а то дата, точнее датавремя. Даты не складываются - вот ошибка. Проверь .
#39 by 73
+ На всякий, озвучь типы Время1 и Время2.
#40 by anivaler
Дата и то и другое
#41 by anivaler
to 73: Получилось: . Спасибо.
#42 by hhhh
он работает с числами, но представленными в формате:   часы:минуты
#43 by 73
Судя по и - с датами.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С