Имя: Пароль:
1C
1С v8
v8: Как сделать, чтобы не прерывалось массовое создание и проведение документов
,
0 only82
 
25.07.12
13:16
Создаю провожу документы в цикле:    
Для Каждого Строка Из ТаблицаДокументов Цикл
       ДокВозвратТоваровОтПокупателя = Документы.ВозвратТоваровОтПокупателя.СоздатьДокумент();
       ДокВозвратТоваровОтПокупателя.Заполнить(Строка.Регистратор);
       ДокВозвратТоваровОтПокупателя.Записать(РежимЗаписиДокумента.Проведение);
   КонецЦикла;

В процедуре обработки проверяю отрицательные остатки:
Отказ = ПроверитьОтрицательныеОстатки(Контрагент);

Попадаются документы которые не проводятся и после этого автоматически выходит из цикла и процедура обрывается. Как этого избежать?
1 Ненавижу 1С
 
гуру
25.07.12
13:17
никак, так положено, ибо транзакция
2 Maxus43
 
25.07.12
13:19
Попытка
ДокВозвратТоваровОтПокупателя.Записать(РежимЗаписиДокумента.Проведение);
исключение
Сообщить("Ахтунг!");
КонецПопытки;
3 only82
 
25.07.12
13:19
(1) Тогда надо или все не проводить, или все проводить.
4 Ненавижу 1С
 
гуру
25.07.12
13:20
(2) не взлетит
(3) да
5 Maxus43
 
25.07.12
13:20
(4) почто?
6 Лефмихалыч
 
25.07.12
13:22
(4) все взлетит, просто у ТС рантайм ошибка
7 only82
 
25.07.12
13:24
(2) Все получилось. Спс
8 Ненавижу 1С
 
гуру
25.07.12
13:27
(6) если ран-тайм то взлетит, а если запрет записи, то нет
9 Лефмихалыч
 
25.07.12
13:29
(8) да тоже взлетит, просто к концу цикла документы, которые отказались проводиться, не будут существовать в БД.
10 only82
 
25.07.12
13:34
(6) (8) Что такое рантайм и ТС?
11 Maxus43
 
25.07.12
13:36
(10) ТС - ты)
12 only82
 
25.07.12
13:38
(11) Как расшифровать?
13 Maxus43
 
25.07.12
13:39
(12) Топик стартер. с англицкого переводи
14 Лефмихалыч
 
25.07.12
13:42
(10) забей
2 + 2 = 3.9999999999999999999999999999999...