Имя: Пароль:
1C
1С v8
попытка не отрабатывает
0 Domanoff26
 
29.09.11
10:11
обработка останавливается на ошибке, почему?    
Пока ВыборкаРегистратор.Следующий() Цикл
док =  ВыборкаРегистратор.Регистратор;

   докОб = док.ПолучитьОбъект();
Сообщить(докОб);
                       ДокОб.ВыполнитьДвиженияПоУчетТоваров(Ложь, РежимПроведенияДокумента.Неоперативный);
                       ДокОб.Движения.УчетТоваров.Записать();
                   Исключение
                       Сообщить(ОписаниеОшибки());
                   КонецПопытки;
               
               КонецЦикла;
1 Axel2009
 
29.09.11
10:12
а где попытка то?
2 Domanoff26
 
29.09.11
10:12
Пока ВыборкаРегистратор.Следующий() Цикл
док =  ВыборкаРегистратор.Регистратор;

   докОб = док.ПолучитьОбъект();
Сообщить(докОб);
попытка
                       ДокОб.ВыполнитьДвиженияПоУчетТоваров(Ложь, РежимПроведенияДокумента.Неоперативный);
                       ДокОб.Движения.УчетТоваров.Записать();
                   Исключение
                       Сообщить(ОписаниеОшибки());
                   КонецПопытки;
               
               КонецЦикла;
3 zak555
 
29.09.11
10:12
смысл задачи ?
4 Domanoff26
 
29.09.11
10:12
останавливается на записи
5 Axel2009
 
29.09.11
10:12
и где текст ошибки?
6 Domanoff26
 
29.09.11
10:13
смысл вызывать экспортную процедуру из дока, но если не записывается продолжать выполнение
7 vmv
 
29.09.11
10:16
вольный перевод задачи

задача попытаться записать коллекцию документов в цикле, те которые не пишуться - соообщить
8 Domanoff26
 
29.09.11
10:16
(5) при методе записать, че то с доком не так, но не важно, как продолжать при этом?
9 Axel2009
 
29.09.11
10:17
(8) может ругается на получитьобъект.
10 vmv
 
29.09.11
10:17
подсказка - выполнять итерации записи документов с выполнением движений нужно в правильном месте, а не где попало делать вызов запуска цикла
11 sda553
 
29.09.11
10:24
(6) Дорогой друг. Научитесь строить так модуль чтобы в одной попытке всегда было не более одной транзакции записи/изменения данных.

Напомню, что в 1С если в попытке есть две транзакции записи/изменения и первая из них выполнилась неудачно ( но при этом не вызвала исключения и останова из за своего обработчика исключений), например ДокОб.ВыполнитьДвиженияПоУчетТоваров

То вторая транзакция в любом случае завершится с ошибкой "В данной транзакции уже происходили ошибки"

правильно так
Пока ВыборкаРегистратор.Следующий() Цикл
док =  ВыборкаРегистратор.Регистратор;

   докОб = док.ПолучитьОбъект();
Сообщить(докОб);
ТранзакцияУспешна = Ложь;
попытка
                       ДокОб.ВыполнитьДвиженияПоУчетТоваров(Ложь, РежимПроведенияДокумента.Неоперативный);
                     ТранзакцияУспешна = Истина;
                   Исключение
                       Сообщить(ОписаниеОшибки());
                   КонецПопытки;
               Если ТранзакцияУспешна  Тогда
               Попытка
                   ДокОб.Движения.УчетТоваров.Записать();
                   Исключение
                       Сообщить(ОписаниеОшибки());
                   КонецПопытки;
               КонецЕсли;
               КонецЦикла;

У вас какой текст ошибки пишет?
12 Domanoff26
 
29.09.11
10:32
(11) по регистру в котором пишется - ошибка учета другой вопрос (тут задам )есть запрос
   Запрос.Текст =
               "ВЫБРАТЬ
               |    док.Ссылка
               |ИЗ
               |    Документ." + Док.Имя + " КАК Док ГДЕ док.Проведен";
можно мне еще его как нить по датам ограничить, смотрел умногих доков нет реквизита дата(
13 vmv
 
29.09.11
10:34
(11) и это тоже, прав.

Попытка
Заец1.Записать();
Заец2.Записать();
Исключение
Сообщить("ни одного не поймаешь");
КонецПопытки

Это классическая глупость ярко описаная в литературе и кинематографе
14 Domanoff26
 
29.09.11
10:36
(13) поясни пожалуйста
15 Domanoff26
 
29.09.11
10:37
(11) ошибка та же осталась,
16 DrShad
 
29.09.11
10:38
(12) у документов Дата это стандартный реквизит
17 Domanoff26
 
29.09.11
10:41
(16) т е можно в запросе ставить свободно условия?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший