Имя: Пароль:
1C
1С v8
Фоновое задание и транзакция
0 mxs089
 
24.09.14
10:20
БП 3.0 пишу обработку, которая общается с внешним источником, создал команду для фонового запуска. обработка в ходе работы открывает и фиксирует транзакцию, при какой нибудь ошибке отменяет соотв.. дак вот, заметил, что при отмене транзакции (не важно какой, транз. внешнего источника или 1с) регламентное задание переходит в состояние завершено с ошибками, описание ошибки:

{ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(1610)}: Индекс находится за границами массива
        ДополнительныеОтчетыИОбработкиКлиентСервер.НаименованиеПодсистемы(Неопределено),

начал разбираться, типовой код:
ошибка происходит в методе регламентного задания

    ЗаписатьИнформацию(ВнешняяОбработка, НСтр("ru = 'Команда %1: Завершение.'"), ИдентификаторКоманды);

после нормального выполнения команды. переменная ВнешняяОбработка имела значение = ВнешняяОбработкаОбъект .. после выполнения Индекс нах. за границами массива
1 Maxus43
 
24.09.14
10:23
а провалится в процедуру ЗаписатьИнформацию и отладчиком поглядеть не предлагать совсем?
2 mxs089
 
24.09.14
10:25
(1) еще раз, после выполнения команды (выполнение работы обработки) переменная ВнешняяОбработка теряет свое значение, теряет только тогда, когда есть ОтменаТранзакции
3 mxs089
 
24.09.14
10:33
написал быстро простой пример

http://rusfolder.com/41812304

БП 3.0.26.11 Платформа 8.3.5.1119
4 mxs089
 
24.09.14
10:59
мда, ошибка в конфигурации, на свежей такого нет, всем спасибо
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.