Имя: Пароль:
1C
 
КД. Как определить место ошибки при записи объекта
,
0 Adept
 
23.01.15
14:55
В собитии после загрузки объекта упаковки номенклатуры следующий код

Объект.ОбменДанными.Загрузка = Ложь;
Объект.Записать();

с "обменом данными" запись проходит нормально. Без ошибка
В модуле упаковок на событиях перед записью и при записи точки останова, все проходит нормально. Если в отладчике поставить галку останавливаться по ошибке, то остановка произойдет в модуле КД на процедуре Выполнить() в котором строка с вышеуказанным кодом.

Как найти место где ошибка вылетает?
1 Adept
 
23.01.15
14:56
(8) Без ошибки*
2 hydro2588
 
23.01.15
15:00
Скорее всего ошибка в запросе, раз на строчке Выполнить() падает. Если выложите всю процедуру или функцию где происходит ошибка, возможно что-то прояснится
3 Adept
 
23.01.15
15:02
(2) Выполнить() это функция которая кусок кода выполняет, который ей в строке передается, в данном случае тот код что я привел выше
4 Adept
 
23.01.15
15:03
Типа так

Попытка
            
            Если ФлагРежимОтладкиОбработчиков Тогда
                
                Выполнить(ПолучитьСтрокуВызоваОбработчика(Конвертация, "ПередЗагрузкойОбъекта"));
                
            Иначе
                
                Выполнить(Конвертация.ПередЗагрузкойОбъекта);
                
            КонецЕсли;
            
        Исключение
            
            ЗаписатьИнформациюОбОшибкеЗагрузкиОбработчикаПКО(53, ОписаниеОшибки(), ИмяПравила, Источник,
                ТипОбъекта, Неопределено, "ПередЗагрузкойОбъекта (глобальный)");                
                            
        КонецПопытки;
5 olegves
 
23.01.15
15:05
(0) отладчиком на строке с ошибкой
6 EugeniaK
 
23.01.15
15:06
(0) F11  и по очереди заходите в каждую подписку.
На какой-то выдаст ошибку.
7 Adept
 
23.01.15
15:06
(5) Отладчик на Выполнить ?
8 GreatOne
 
23.01.15
15:08
а что пишет-то?
9 GreatOne
 
23.01.15
15:14
Понятно... В общем в служебных сообщениях приемника смотри свою ошибку.
10 Adept
 
23.01.15
15:17
(9)
Ошибка при загрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1622)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта
    ИмяПКО                 =  УпаковкиНоменклатуры
    ТипОбъекта             =  Упаковка
    Объект                 =  палл
    Обработчик             =  ПослеЗагрузкиОбъекта
    ОписаниеОшибки         =  Ошибка при вызове метода контекста (Записать): Не удалось записать: "Упаковка"!
    ПозицияМодуля          =  (2)
    КодСообщения           =  21
11 GreatOne
 
23.01.15
15:30
Убираешь код записать(); Загружаешь объект. Руками его записываешь, ловишь в отладчике...
12 GreatOne
 
23.01.15
15:31
Выполнить()  тут вообще не при чем