Имя: Пароль:
1C
 
Прибавить дни к дате
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;
Сообщить(ТекущаяДата()+КолДнейДобавить);
Где КолДней - количество прибавляемых дней, если с минусом, то вычитает из заданной даты.