Имя: Пароль:
1C
1C 7.7
v7: Проведение одного документа из другого
0 Zzema
 
26.07.11
18:52
Доброго времени суток! Помогите разобраться: провожу один документ при проведении другого. Оба документа двигают ТА. Первый допустим со временем 10:10:10 второй 10:10:20. По идее ТА должна устанавливаться на второй документ, а получается на документ из которого второй провожу.При перепроведении все ок
1 GreyK
 
26.07.11
18:58
(0) Из модуля? Вроде низя?
2 Zzema
 
26.07.11
18:59
методом "извращения" можно :)
3 GreyK
 
26.07.11
18:59
+(1) Из модуля = Из обработки проведения.
4 GreyK
 
26.07.11
19:05
(2) УстановитьТАна(), но я метод извращения не знаю :(
5 smaharbA
 
26.07.11
19:12
ибо второй проводится до первого
6 fedoss
 
26.07.11
19:16
Если хочется совсем с извратами

Модуль первого документа:
Процедура ОбработкаПроведения()
   Конт = "";
   ОткрытьФорму("Документ.Новый1", Конт);
   Конт.Форма.ОбработкаОжидания("ПровестиИЗакрыть", 1);
КонецПроцедуры

Модуль формы второго документа:
Процедура ПровестиИЗакрыть()
   Форма.Закрыть(0);
КонецПроцедуры

Процедура ПриЗакрытии()
   АвтоВремяТекущее();
   Записать();
   Провести();
КонецПроцедуры
7 fedoss
 
26.07.11
19:17
+(6) Да, в модуле первого открытие второго должно выполнятся в самом конце, чтобы он успел закрыться до проведения второго.
8 GreyK
 
26.07.11
19:31
(6) Зачем такое нужно?
9 fedoss
 
26.07.11
19:36
(8) Так второй документ проводится после проведения первого, а не до. Из минусов - такое не перепроведется стандартным Проведением документов.
10 Zzema
 
26.07.11
20:08
получется надо время второго отодвинуть назад??? а почему при перепроведении все работает
11 Cthulhu
 
26.07.11
20:12
(10): потому что при перепроведении ты второй документ проводишь два раза: первый раз из модуля первого и ТА становится на первый; второй раз уже проводишь второй документ "простотак", в потоке проведения - и ТА становится на него, родного.
12 Zzema
 
26.07.11
20:37
имею ввиду не просто перепровести.. а сделать непроведенными и провести заново
13 Guk
 
26.07.11
20:39
баловство все это...
14 andrewks
 
26.07.11
21:18
(0) за такие "извращения" на экзаменах двойки ставят, ибо это не соответствует принципам ACID