|
Глупый вопрос - а к дате время нельзя добавить? | ☑ | ||
---|---|---|---|---|
0
Конфигуратор1с
28.08.12
✎
15:12
|
Есть у меня дата 21.12.2012, хочу добавить к ней время 23:00:00 - ругается.
|
|||
1
Нуф-Нуф
28.08.12
✎
15:12
|
добавь 23*3600+0*60+0
|
|||
2
pumbaEO
28.08.12
✎
15:13
|
21.12.2012+23*60*60?
|
|||
3
Конфигуратор1с
28.08.12
✎
15:13
|
(1)да так и делаю, думал может можно просто прибавить дату к дате(((
|
|||
4
Конфигуратор1с
28.08.12
✎
15:13
|
Дата(Год(Выборка.дата),Месяц(Выборка.дата),День(Выборка.Дата),Час(УстанавливаемоеВремя),Минута(УстанавливаемоеВремя),Секунда(УстанавливаемоеВремя))
|
|||
5
Конфигуратор1с
28.08.12
✎
15:14
|
а хотелось бы Выборка.дата + УстанавливаемоеВремя
|
|||
6
Reset
28.08.12
✎
15:14
|
(3) Можно ;)
Дата=Дата+ (ДатаТолькоСВременем-Дата(1,1,1)); |
|||
7
Нуф-Нуф
28.08.12
✎
15:15
|
(5) запросто:
УстанавливаемоеВремя = 23*3600+0*60+0 НоваяДата = Выборка.дата + УстанавливаемоеВремя |
|||
8
andrewks
28.08.12
✎
15:16
|
(0) у тебя время в каком виде?
|
|||
9
Конфигуратор1с
28.08.12
✎
15:27
|
Поле ввода с типом дата, часть даты время. То есть дата 01.01.0001 0:00:00
|
|||
10
Конфигуратор1с
28.08.12
✎
15:28
|
(6)ругается - не удалось преобразовать к типу число
|
|||
11
andrewks
28.08.12
✎
15:31
|
ТвояДата+(ТвоёВремя-Дата("01.01.0001 0:00:00"))
|
|||
12
pavelul73
28.08.12
✎
15:43
|
Как я сделал:
Есть дата1(формат дата и время) и есть дата2(формат дата и время). Мне нужно было к дате1 добавить время из даты 2. ВремДата = (Формат(Дата1,"ДФ=dd.MM.yyyy")+" "+Формат(Дата2,"ДЛФ=T")); ДатаДок = Дт(ВремДата); функция Дт(дат) д=число(лев(дат,2)); м=Число(сред(дат,4,2)); г=Число(сред(дат,7,4)); поз=найти(дат," "); если поз=0 Тогда Возврат дата(г,м,д); конецесли; дт=лев(дат,поз-1); тм=сред(дат,поз+1); поз=найти(тм,":"); час=лев(тм,поз-1); мин=сред(тм,4,2); сек = сред(тм,7,2); Возврат дата(г,м,д,час,мин,сек); КонецФункции Может и не совсем оптимально, но работаем стабильно. Только функцию дт напиши выше своей процедуры |
|||
13
andrewks
28.08.12
✎
15:45
|
(12) это кандидат на самую жестяную жесть месяца по версии Мисты?
|
|||
14
andrewks
28.08.12
✎
15:45
|
(12) Дата1+(Дата2-НачалоДня(Дата2))
|
|||
15
pavelul73
28.08.12
✎
15:46
|
зато работает) писалось 3 минуты, нужно было срочно сделать, для одноразовой обработки)
|
|||
16
pavelul73
28.08.12
✎
15:48
|
нет, мне нужно было по другому:
пример дата1 = 23.08.2012 14:56:37 дата 2 = 27.08.2012 15:43:25 Должно было получится дата = 23.08.2012 15:43:25 |
|||
17
andrewks
28.08.12
✎
15:48
|
(16) НачалоДня(Дата1)+(Дата2-НачалоДня(Дата2))
|
|||
18
salvator
28.08.12
✎
15:49
|
(15) Талант!
|
|||
19
Повелитель
28.08.12
✎
15:49
|
(1) Долго смотрел на это:
добавь 23*3600+0*60+0 развер 0*60 не равно 0? )) |
|||
20
pavelul73
28.08.12
✎
15:50
|
ну да, так как ты написал, конечно лучше намного и быстрее, видимо не подумал как следует когда писал )
|
|||
21
Нуф-Нуф
28.08.12
✎
15:52
|
(19) равно. а из (1) разве можно сделать противоположный вывод?
|
|||
22
Повелитель
28.08.12
✎
15:53
|
(21) Нет, я просто не могу понять зачем там вторая часть написана.
|
|||
23
Нуф-Нуф
28.08.12
✎
15:55
|
(22) это формула. только в качестве переменных подставлены конкретные числа из сабжа для более быстрого понимания происходящего
|
|||
24
Повелитель
28.08.12
✎
15:56
|
(24) Теперь понял ))
|
|||
25
Конфигуратор1с
28.08.12
✎
16:36
|
(14) и (6) спасибо огромное - работает
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |