Имя: Пароль:
1C
 
УстановитьВремя()
0 Риша
 
13.01.09
10:03
В форме документа "Быстрая продажа" создается новый документ "Поступление" и ему устанавливается время. В обработке внешней этот же самый

Каким образом можно установить время документа вновь созданного в форме другого документа (в документе Быстрая продажа)

ДокПоступление = СоздатьОбъект("Документ.ПоступлениеТМЦ");  

ДокПоступление.Новый();                                  

ДокПоступление.АвтоВремяОтключить();

ДокПоступление.УстановитьВремя(0,0,1);

ДокПоступление.Записать();

При чем этот же самый кусок в обработке (не в форме документа)               замечательно работает.
1 Риша
 
13.01.09
10:07
Первое сообщение нечаянно отправилось не дописанным.

В форме документа "Быстрая продажа" создается новый документ "Поступление" и ему устанавливается время. Во внешней обработке этот же самый код работает замечательно, а вот в форме документа нет. Что нужно сделать?

ДокПоступление = СоздатьОбъект("Документ.ПоступлениеТМЦ");  
ДокПоступление.Новый();                                  
ДокПоступление.АвтоВремяОтключить();
ДокПоступление.УстановитьВремя(0,0,1);
ДокПоступление.Записать();

То что нужно сначало записать потом время изменить - не работает.
2 Ёпрст
 
гуру
13.01.09
10:08
Чего где установить?
3 Риша
 
13.01.09
10:08
Время документа поступление, созданного в документе быстрая продажа
4 Ёпрст
 
гуру
13.01.09
10:09
(1) Если документ еще не записан, то так:

Процедура ПриЗаписи()
  Если Выбран()=0 Тогда
     УстановитьВремя(0,0,1);
  КонецЕсли;
КонецПроцедуры
5 Ёпрст
 
гуру
13.01.09
10:09
(3) а чего, код в (1) не работает ? :)
6 Риша
 
13.01.09
10:11
При записи какого документа?
7 Риша
 
13.01.09
10:13
во внешней обработке работает, в модуле формы нет
8 Ёпрст
 
гуру
13.01.09
10:13
(6) я хз, о чем вы вообще спрашиваете... код в (1) рабочий в любом месте...
9 Риша
 
13.01.09
10:15
Если бы был рабочий в любом месте, не спрашивала бы.
Нашла в инете, что в модуле формы данный код прописывается хитрее, но как ... Может кто подскажет?
10 Ёпрст
 
гуру
13.01.09
10:16
(9) Разницы никакой нет вообще, в коком месте вы будете создавать новый документ..
хоть из глобальника хоть откуда угодно.
11 Ёпрст
 
гуру
13.01.09
10:17
+10 код в (1) будет работать везде.
12 Риша
 
13.01.09
10:18
не факт, не работает
13 Ёпрст
 
гуру
13.01.09
10:20
(12) Весь код показывай, то что в (1) работает везде, можешь принять это за аксиому.
14 Риша
 
13.01.09
10:25
Код типовой Документ "БыстраяПродажа" в комплексной, по умолчанию идет ДокПоступление.АвтоВремяТекущее();

я за место него вставляю
ДокПоступление.АвтоВремяОтключить();
ДокПоступление.УстановитьВремя(0,0,1); все...
15 Попытка1С
 
13.01.09
10:29
ДокПоступление = СоздатьОбъект("Документ.ПоступлениеТМЦ");  

ДокПоступление.Новый();                                  

ДокПоступление.АвтоВремяОтключить();

ДокПоступление.Записать();

ДокПоступление.УстановитьВремя(0,0,1);

ДокПоступление.Записать();
16 Иду
 
13.01.09
10:31
Док.АвтоВремяОтключить();
Док.Новый();
Док.УстановитьВремя(Ч, М, С);
17 Ёпрст
 
гуру
13.01.09
10:31
(14) Гы...
А дальше не хочешь глянуть на код ? Ась ?
:))

Ладно...я добрый...смотри внимательно сюды:

   ДокПоступление.Провести(1);

в особенности на циферку 1...
18 Риша
 
13.01.09
10:37
(17) И правда добрый :) Спасибо :)
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс