![]() |
![]() |
![]() |
|
Прибавить дни к дате | ☑ | ||
---|---|---|---|---|
0
big2002
15.02.10
✎
19:25
|
К дате прибавляю один день (число "1") - а получается очень много.
Как этот день преобразовать в дату? |
|||
1
big2002
15.02.10
✎
19:26
|
Или сначала дату, к которой прибавляю, преобразовать в число, потом число прибавить, потом все в дату преобразовать.
Подскажите, пожалуйста. |
|||
2
IronDemon
15.02.10
✎
19:28
|
Добавляй время
|
|||
3
IronDemon
15.02.10
✎
19:28
|
(2) +в секундах
|
|||
4
big2002
15.02.10
✎
19:31
|
Прибавляю 1*3600*24 - это секунд в дне, так месяц прибавляет.
|
|||
5
IronDemon
15.02.10
✎
19:32
|
В коде или в запросе?
|
|||
6
Lama12
15.02.10
✎
19:32
|
(4)А где прибавляешь? В 1С:Предприятие или в Excel?
|
|||
7
big2002
15.02.10
✎
19:33
|
В УПП.
|
|||
8
big2002
15.02.10
✎
19:34
|
В коде.
|
|||
9
Фокусник
15.02.10
✎
19:34
|
(8) Показывай код
|
|||
10
big2002
15.02.10
✎
19:41
|
Дата1="05.02.2010";
Дата2="05.02.2010"; Дней=1; Дата2=Дата1+Дней*3600*24; |
|||
11
big2002
15.02.10
✎
19:42
|
Ерунда получается, надо, предполагаю, преобразование делать даты в числа.
|
|||
12
also
15.02.10
✎
19:45
|
(10) ппц
|
|||
13
Фокусник
15.02.10
✎
19:46
|
(11) Ага, именно, сначала строки -> в дату, потом прибавлять секунды
|
|||
14
also
15.02.10
✎
19:46
|
Дата1 = Дата(2010,2,5);
Дата2 = Дата1*3600*24; |
|||
15
ShoGUN
15.02.10
✎
19:47
|
(10) Дата1="05.02.2010";
Дата2="05.02.2010"; Это не даты ни разу! |
|||
16
big2002
15.02.10
✎
19:47
|
Это я согращаю.
Даты у меня из реквизитов документа вообще-то получаются. |
|||
17
ShoGUN
15.02.10
✎
19:48
|
(14) Ой...
Может всё же: Дата1 = Дата(2010,2,5); Дата2 = Дата1+Дней*3600*24; ? Умножение даты на число - это жесть... |
|||
18
big2002
15.02.10
✎
19:48
|
сокращаю
|
|||
19
big2002
15.02.10
✎
19:49
|
Там Дата1=Объект.ДокументОснование.ДатаОтгрузки;
|
|||
20
big2002
15.02.10
✎
19:49
|
(17)Дней - это именно число.
|
|||
21
big2002
15.02.10
✎
19:50
|
Мне число надо прибавить к дате. Про это в (0) и спрашиваю.
|
|||
22
big2002
15.02.10
✎
19:50
|
Число - это количество дней, которые надо прибавить.
|
|||
23
ShoGUN
15.02.10
✎
19:50
|
(19) Если у реквизита типы дата - то правильно вроде.
(20) Я не тебе, в (14) код кривой. |
|||
24
ShoGUN
15.02.10
✎
19:51
|
Можно не сокращая код привести?
|
|||
25
big2002
15.02.10
✎
19:51
|
Там много очень.
|
|||
26
ShoGUN
15.02.10
✎
19:51
|
(25) А конкретный кусок не судьба?
|
|||
27
also
15.02.10
✎
19:52
|
(17) косякнул :) Там "+" должен быть :)
|
|||
28
big2002
15.02.10
✎
19:53
|
Мне бы только это:
есть дата из реквизита документа; есть число дней - пусть это константа в программе; есть дата другого реквизита, которая должна быть равна первому реквизиту плюс количество дней. Объект.ДатаПоступления=Объект.ДокументОснование.ДатаОтгрузки; Дней=1; Объект.ДатаОплаты=Объект.ДокументОснование.ДатаОплаты+Дней*3600*24; |
|||
29
big2002
15.02.10
✎
19:54
|
+Дней*3600*24; - это явно не правильно.
А как надо? |
|||
30
ShoGUN
15.02.10
✎
19:56
|
(28) При условии, что у реквизитов тип Дата - всё правильно. Можно результат увидеть, а не "Ерунда получается"?
|
|||
31
big2002
15.02.10
✎
19:59
|
Если первая дата 5 февраля, то вторая дата получается 5 марта - прибавляется месяц.
|
|||
32
big2002
15.02.10
✎
20:00
|
(30) Тип - точно дата, смотрю в отладке.
|
|||
33
Фокусник
15.02.10
✎
20:02
|
Конкретный код покажи, может там вроде этого:
"" + Дата + Число или число + дата + чило :) |
|||
34
ShoGUN
15.02.10
✎
20:04
|
(31) Так будет только в том случае, если дней = 30 :)
(33) +1 |
|||
35
big2002
15.02.10
✎
20:06
|
Так я в (0) и (1) спрашиваю - как к дате прибавить число?
Т.е. как преобразовать типы, чтобы были одинаковые? Дату в число, прибавить число, число опять в дату или число в дату и прибавить к дате? Какие функции преобразования? |
|||
36
Фокусник
15.02.10
✎
20:11
|
(35) К дате прибавить секунды:
Дата + КоличествоСекунд = НоваяДата если так не работает, значит причина в типах. |
|||
37
ShoGUN
15.02.10
✎
20:14
|
(35) В 1С можно складывать дату с числом, результат будет датой. Типы преобразовывать не надо.
|
|||
38
big2002
15.02.10
✎
20:19
|
То есть, ответ на (0) и (1) - преобразовывать не надо, просто число, которое прибавляем к дате, должно быть в секундах.
Так и делаю, но, не работает. Спасибо всем, буду разбираться, в чем причина. |
|||
39
ice777
15.02.10
✎
20:20
|
(37) А знаешь что скажу? Про порог вхождения уже нет слов. Но все больше людей наученных, не умеющих читать документацию. Мой знакомый (ленивый и жадный) сказал как-то: я так не понимаю, но если мне все показать.. я_Я.. и все рассказывать нет смысла, т.к. выдаст за свое только в путь. Может, туда им и дорога?
|
|||
40
ShoGUN
15.02.10
✎
20:23
|
(39) Не в тему, имхо... Человек каким-то образом умеет дебаггером пользоваться. Или думаешь тоже показали? :)
|
|||
41
ice777
15.02.10
✎
20:23
|
(40) думаю, да.
|
|||
42
big2002
15.02.10
✎
20:32
|
Еще раз спасибо тем, кто помогал, опечатка была совсем в другой части.
Все работает. |
|||
43
ice777
15.02.10
✎
20:35
|
(42) все же читай желтые книжки. Все написано.
|
|||
44
Lucky-1
15.02.10
✎
22:46
|
КолДнейДобавить = КолДней*24*60*60;
Сообщить(ТекущаяДата()+КолДнейДобавить); Где КолДней - количество прибавляемых дней, если с минусом, то вычитает из заданной даты. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |